Merge "Retrieve WifiDppQrGeneratorFragment at runtime." into main
diff --git a/Android.bp b/Android.bp
index b96d0dc..cb898be 100644
--- a/Android.bp
+++ b/Android.bp
@@ -108,6 +108,8 @@
"telephony_flags_core_java_lib",
"setupdesign-lottie-loading-layout",
"device_policy_aconfig_flags_lib",
+ "kotlinx-coroutines-core",
+ "kotlinx-coroutines-android",
],
plugins: ["androidx.room_room-compiler-plugin"],
diff --git a/aconfig/settings_connecteddevice_flag_declarations.aconfig b/aconfig/settings_connecteddevice_flag_declarations.aconfig
index 2d66c30..7942ccd 100644
--- a/aconfig/settings_connecteddevice_flag_declarations.aconfig
+++ b/aconfig/settings_connecteddevice_flag_declarations.aconfig
@@ -14,3 +14,14 @@
description: "Gates whether to require an auth challenge for changing USB preferences"
bug: "317367746"
}
+
+
+flag {
+ name: "enable_bonded_bluetooth_device_searchable"
+ namespace: "pixel_cross_device_control"
+ description: "Set bonded bluetooth devices under connected devices page to be searchable by Settings search."
+ bug: "319056077"
+ metadata {
+ purpose: PURPOSE_BUGFIX
+ }
+}
\ No newline at end of file
diff --git a/aconfig/settings_experience_flag_declarations.aconfig b/aconfig/settings_experience_flag_declarations.aconfig
index d5caccf..e79b515 100644
--- a/aconfig/settings_experience_flag_declarations.aconfig
+++ b/aconfig/settings_experience_flag_declarations.aconfig
@@ -17,3 +17,13 @@
purpose: PURPOSE_BUGFIX
}
}
+
+flag {
+ name: "internet_preference_controller_v2"
+ namespace: "settings_experience"
+ description: "New InternetPreferenceControllerV2."
+ bug: "339884322"
+ metadata {
+ purpose: PURPOSE_BUGFIX
+ }
+}
diff --git a/res-product/values-ar/strings.xml b/res-product/values-ar/strings.xml
index 136f464..3e9ddb5 100644
--- a/res-product/values-ar/strings.xml
+++ b/res-product/values-ar/strings.xml
@@ -310,7 +310,7 @@
<string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"سيُوقف هاتفك بيانات الجوّال بعد الوصول إلى الحد الأقصى الذي وضعته.\n\nولأنّ هاتفك يقيس حجم استخدام البيانات بطريقة معيّنة وقد يحاسبك مشغّل شبكة الجوّال بطريقة مختلفة، ننصحك بوضع حدٍ أقصى معتدل."</string>
<string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"يمكنك مشاركة جهازك من خلال تسجيل حسابات شخصية لمستخدمين جدد على هذا الجهاز، ليتسنى لكل واحد منهم استخدام ما يناسبه من شاشات رئيسية وحسابات وتطبيقات وإعدادات وغير ذلك."</string>
<string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"يمكنك مشاركة جهازك اللوحي من خلال تسجيل حسابات شخصية لمستخدمين جدد على هذا الجهاز، ليتسنى لكل واحد منهم استخدام ما يناسبه من شاشات رئيسية وحسابات وتطبيقات وإعدادات وغير ذلك."</string>
- <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"يمكنك مشاركة هاتفك من خلال إضافة حسابات شخصية لمستخدمين جدد على هذا الهاتف، ويستطيع كل منهم إعداد مساحته الخاصة واستخدام ما يناسبه من شاشات رئيسية وحسابات وتطبيقات وإعدادات وغير ذلك."</string>
+ <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"يمكنك مشاركة هاتفك من خلال إضافة حسابات شخصية لمستخدمين جدد عليه، ويستطيع كل منهم إعداد مساحته الخاصة واستخدام ما يناسبه من شاشات رئيسية وحسابات وتطبيقات وإعدادات وغير ذلك."</string>
<string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"يمكن لمالك الجهاز اللوحي فقط إدارة المستخدمين."</string>
<string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"يمكن لمالك الهاتف فقط إدارة المستخدمين."</string>
<string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"ستفقد مساحتك وبياناتك من هذا الجهاز اللوحي. لا يمكنك التراجع عن هذا الإجراء."</string>
diff --git a/res-product/values-de/strings.xml b/res-product/values-de/strings.xml
index d1f9dee..b736873 100644
--- a/res-product/values-de/strings.xml
+++ b/res-product/values-de/strings.xml
@@ -322,7 +322,7 @@
<string name="ambient_display_title" product="tablet" msgid="2347746118188465334">"Durch Doppeltippen auf das Display Display aktivieren"</string>
<string name="ambient_display_title" product="device" msgid="6306105102175823199">"Durch Doppeltippen auf das Display Display aktivieren"</string>
<string name="ambient_display_pickup_title" product="default" msgid="6753194901596847876">"Beim Hochheben Display aktivieren"</string>
- <string name="ambient_display_pickup_title" product="tablet" msgid="1166999144900082897">"Durch Hochnehmen des Tablets Display aktivieren"</string>
+ <string name="ambient_display_pickup_title" product="tablet" msgid="1166999144900082897">"Durch HochnehmenTablet-Display aktivieren"</string>
<string name="ambient_display_pickup_title" product="device" msgid="2091669267677915975">"Gerät hochnehmen, um das Display anzusehen"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="135853288202686097">"Wenn du das Smartphone in die Hand nimmst, werden die Uhrzeit, Benachrichtigungen und andere Informationen angezeigt."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="1638055271563107384">"Wenn das Tablet in die Hand genommen wird, werden die Uhrzeit, Benachrichtigungen und andere Informationen angezeigt."</string>
diff --git a/res-product/values-et/strings.xml b/res-product/values-et/strings.xml
index 807fce7..16f5737 100644
--- a/res-product/values-et/strings.xml
+++ b/res-product/values-et/strings.xml
@@ -226,7 +226,7 @@
<string name="wifi_add_app_networks_summary" product="default" msgid="7014504084783236696">"<xliff:g id="APPNAME">%1$s</xliff:g> soovib need võrgud teie telefoni salvestada"</string>
<string name="wifi_add_app_networks_summary" product="tablet" msgid="6433255556506891439">"<xliff:g id="APPNAME">%1$s</xliff:g> soovib need võrgud teie tahvelarvutisse salvestada"</string>
<string name="auto_rotate_screen_summary" product="default" msgid="5562937346878935483">"Ekraanikuva suunda kohandatakse automaatselt, kui liigutate telefoni vertikaalrežiimi ja horisontaalrežiimi vahel."</string>
- <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"Ekraanikuva suunda kohandatakse automaatselt, kui liigutate tahvelarvutit vertikaalrežiimi ja horisontaalrežiimi vahel."</string>
+ <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"Ekraanikuva suunda kohandatakse automaatselt, kui pöörate tahvelarvuti vertikaalasendist horisontaalasendisse ja vastupidi"</string>
<string name="sim_lock_on" product="tablet" msgid="227481196121403470">"Nõua tahvelarvuti kasutamiseks PIN-i"</string>
<string name="sim_lock_on" product="default" msgid="6896034657274595838">"Nõua telefoni kasutamiseks PIN-i"</string>
<string name="sim_lock_off" product="tablet" msgid="4619320846576958981">"Nõua tahvelarvuti kasutamiseks PIN-i"</string>
diff --git a/res-product/values-mk/strings.xml b/res-product/values-mk/strings.xml
index 40a4601..1e03880 100644
--- a/res-product/values-mk/strings.xml
+++ b/res-product/values-mk/strings.xml
@@ -52,7 +52,7 @@
<string name="security_settings_face_enroll_introduction_message" product="default" msgid="847716059867943459">"Користете го ликот за отклучување на телефонот, за одобрување купувања или за најавување на апликации."</string>
<string name="security_settings_face_enroll_introduction_message" product="tablet" msgid="3976493376026067375">"Користете го ликот за отклучување на таблетот, за одобрување купувања или за најавување на апликации."</string>
<string name="security_settings_face_enroll_introduction_message" product="device" msgid="6432265830098806034">"Користете го ликот за отклучување на уредот, за одобрување купувања или за најавување на апликации."</string>
- <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"Користете го вашето лик за да го отклучите телефонот или за автентикација во апликации, како на пр., кога се најавувате во апликациите или одобрувате купување"</string>
+ <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"Користете го вашиот лик за да го отклучувате телефонот или за автентикација во апликации, како на пр., кога се најавувате во апликациите или одобрувате купување"</string>
<string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"Користете го вашиот лик за да го отклучите таблетот или за автентикација во апликациите, како на пр., кога се најавувате во апликациите или одобрувате купување"</string>
<string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"Користете го вашиот лик за да го отклучите уредот или за автентикација во апликациите, како на пр., кога се најавувате во апликациите или одобрувате купување"</string>
<string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Дозволете му на вашето дете да го користи своето лице за да го отклучи својот телефон"</string>
diff --git a/res-product/values-mn/strings.xml b/res-product/values-mn/strings.xml
index ffdf9dc..e7ad331 100644
--- a/res-product/values-mn/strings.xml
+++ b/res-product/values-mn/strings.xml
@@ -310,7 +310,7 @@
<string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Таны тохируулсан хязгаарт хүрмэгц таны утас мобайл датаг унтраах болно.\n\nДата ашиглалтыг таны утсаар хэмждэг тул таны оператор компани ашиглалтыг өөрөөр тооцож болзошгүй. Та хязгаарыг илүү багаар тогтооно уу."</string>
<string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Шинэ хэрэглэгч нэмж төхөөрөмжөө хуваалцана уу. Хэрэглэгч тус бүр таны төхөөрөмж дээр Үндсэн нүүр, бүртгэл, апп, тохиргоо болон бусад зүйлийг тохируулах хувийн орон зайтай байна."</string>
<string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Шинэ хэрэглэгч нэмж таблетаа хуваалцана уу. Хэрэглэгч тус бүр таны таблет дээр Нүүр хуудасны дэлгэц, бүртгэл, апп, тохиргоо болон бусад зүйлийг тохируулах хувийн орон зайтай байна."</string>
- <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Шинэ хэрэглэгч нэмж утсаа хуваалцана уу. Хэрэглэгч тус бүр таны утсан дээр Нүүр хуудасны дэлгэц, бүртгэл, апп, тохиргоо болон бусад зүйлийг тохируулах хувийн орон зайтай байна."</string>
+ <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Шинэ хэрэглэгч нэмж утсаа хуваалцана уу. Хэрэглэгч тус бүр таны утсан дээр Үндсэн нүүр, бүртгэл, апп, тохиргоо болон бусад зүйлийг тохируулах хувийн орон зайтай байна."</string>
<string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Зөвхөн таблетын эзэмшигч л хэрэглэгчдийг удирдаж болно."</string>
<string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Зөвхөн утасны эзэмшигч л хэрэглэгчдийг удирдаж болно."</string>
<string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Та энэ таблет дээрх өөрийн зай болон өгөгдлийг алдах болно. Та энэ үйлдлийг буцаах боломжгүй."</string>
diff --git a/res-product/values-nl/strings.xml b/res-product/values-nl/strings.xml
index 52e4590..bdd1ba5 100644
--- a/res-product/values-nl/strings.xml
+++ b/res-product/values-nl/strings.xml
@@ -310,7 +310,7 @@
<string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Je telefoon zet mobiele data uit zodra je de ingestelde limiet bereikt.\n\nAangezien het datagebruik wordt gemeten door je telefoon, en je provider tot een ander totaal kan komen, kun je het beste een voorzichtige limiet instellen."</string>
<string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Voeg nieuwe gebruikers toe om je apparaat met hen te delen. Elke gebruiker heeft een persoonlijke ruimte op je apparaat voor aangepaste startschermen, accounts, apps, instellingen en meer."</string>
<string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Voeg nieuwe gebruikers toe om je tablet met hen te delen. Elke gebruiker heeft een persoonlijke ruimte op je tablet voor aangepaste startschermen, accounts, apps, instellingen en meer."</string>
- <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Voeg nieuwe gebruikers toe om je telefoon met hen te delen. Elke gebruiker heeft een persoonlijke ruimte op je telefoon voor aangepaste startschermen, accounts, apps, instellingen en meer."</string>
+ <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Voeg nieuwe gebruikers toe om je telefoon met hen te delen. Elke gebruiker heeft een persoonlijke ruimte op je telefoon voor gepersonaliseerde startschermen, accounts, apps, instellingen en meer."</string>
<string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Alleen de eigenaar van de tablet kan gebruikers beheren."</string>
<string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Alleen de eigenaar van de telefoon kan gebruikers beheren."</string>
<string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Je raakt je opslagruimte en gegevens op deze tablet kwijt. Je kunt deze actie niet ongedaan maken."</string>
diff --git a/res-product/values-or/strings.xml b/res-product/values-or/strings.xml
index c2b9039..732f99a 100644
--- a/res-product/values-or/strings.xml
+++ b/res-product/values-or/strings.xml
@@ -226,7 +226,7 @@
<string name="wifi_add_app_networks_summary" product="default" msgid="7014504084783236696">"<xliff:g id="APPNAME">%1$s</xliff:g> ଆପଣଙ୍କ ଫୋନରେ ଏହିସବୁ ନେଟୱାର୍କକୁ ସେଭ୍ କରିବାକୁ ଚାହେଁ"</string>
<string name="wifi_add_app_networks_summary" product="tablet" msgid="6433255556506891439">"<xliff:g id="APPNAME">%1$s</xliff:g> ଆପଣଙ୍କ ଟାବଲେଟରେ ଏହିସବୁ ନେଟୱାର୍କକୁ ସେଭ୍ କରିବାକୁ ଚାହେଁ"</string>
<string name="auto_rotate_screen_summary" product="default" msgid="5562937346878935483">"ଆପଣ ଆପଣଙ୍କ ଫୋନକୁ ପୋର୍ଟ୍ରେଟ ଏବଂ ଲେଣ୍ଡସ୍କେପ ମଧ୍ୟରେ ମୁଭ କଲେ ସ୍କ୍ରିନ ଓରିଏଣ୍ଟେସନକୁ ସ୍ୱତଃ ଆଡଜଷ୍ଟ କରନ୍ତୁ"</string>
- <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"ଆପଣ ଆପଣଙ୍କ ଟାବଲେଟକୁ ପୋର୍ଟ୍ରେଟ ଏବଂ ଲ୍ୟାଣ୍ଡସ୍କେପ ମଧ୍ୟରେ ମୁଭ କଲେ ସ୍କ୍ରିନ ଓରିଏଣ୍ଟେସନ ସ୍ୱଚାଳିତ ଭାବେ ଆଡଜଷ୍ଟ ହୁଏ"</string>
+ <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"ଆପଣଙ୍କ ଟାବଲେଟକୁ ପୋର୍ଟ୍ରେଟ ଏବଂ ଲେଣ୍ଡସ୍କେପ ମଧ୍ୟରେ ମୁଭ କଲେ ସ୍କ୍ରିନ ଓରିଏଣ୍ଟେସନ ସ୍ୱତଃ ଆଡଜଷ୍ଟ ହୁଏ"</string>
<string name="sim_lock_on" product="tablet" msgid="227481196121403470">"ଟାବ୍ଲେଟ୍ ବ୍ୟବହାର କରିବା ପାଇଁ ପିନ୍ ନମ୍ୱର୍ ଆବଶ୍ୟକ"</string>
<string name="sim_lock_on" product="default" msgid="6896034657274595838">"ଫୋନ ବ୍ୟବହାର କରିବା ପାଇଁ PIN ଦରକାର"</string>
<string name="sim_lock_off" product="tablet" msgid="4619320846576958981">"ଟାବ୍ଲେଟ୍ ବ୍ୟବହାର କରିବା ପାଇଁ ପିନ୍ ନମ୍ୱର୍ ଦରକାର"</string>
diff --git a/res-product/values-pt-rPT/strings.xml b/res-product/values-pt-rPT/strings.xml
index df6270c..4c9f391 100644
--- a/res-product/values-pt-rPT/strings.xml
+++ b/res-product/values-pt-rPT/strings.xml
@@ -226,7 +226,7 @@
<string name="wifi_add_app_networks_summary" product="default" msgid="7014504084783236696">"A app <xliff:g id="APPNAME">%1$s</xliff:g> quer guardar estas redes no seu telemóvel."</string>
<string name="wifi_add_app_networks_summary" product="tablet" msgid="6433255556506891439">"A app <xliff:g id="APPNAME">%1$s</xliff:g> quer guardar estas redes no seu tablet."</string>
<string name="auto_rotate_screen_summary" product="default" msgid="5562937346878935483">"Ajusta automaticamente a orientação do ecrã quando move o telemóvel entre o modo vertical e horizontal"</string>
- <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"Ajuste automaticamente a orientação do ecrã quando move o tablet entre o modo vertical e horizontal"</string>
+ <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"Ajusta automaticamente a orientação do ecrã quando move o tablet entre o modo vertical e horizontal"</string>
<string name="sim_lock_on" product="tablet" msgid="227481196121403470">"É necessário o PIN para utilizar o tablet"</string>
<string name="sim_lock_on" product="default" msgid="6896034657274595838">"É necessário o PIN para usar o telemóvel"</string>
<string name="sim_lock_off" product="tablet" msgid="4619320846576958981">"É necessário o PIN para utilizar o tablet"</string>
diff --git a/res-product/values-sk/strings.xml b/res-product/values-sk/strings.xml
index 4ed4a11..8cf56de 100644
--- a/res-product/values-sk/strings.xml
+++ b/res-product/values-sk/strings.xml
@@ -226,7 +226,7 @@
<string name="wifi_add_app_networks_summary" product="default" msgid="7014504084783236696">"<xliff:g id="APPNAME">%1$s</xliff:g> chce uložiť tieto siete do vášho telefónu"</string>
<string name="wifi_add_app_networks_summary" product="tablet" msgid="6433255556506891439">"<xliff:g id="APPNAME">%1$s</xliff:g> chce uložiť tieto siete do vášho tabletu"</string>
<string name="auto_rotate_screen_summary" product="default" msgid="5562937346878935483">"Orientácia obrazovky sa automaticky zmení, keď telefón otočíte na výšku alebo na šírku"</string>
- <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"Automatická úprava orientácie obrazovky pri otáčaní tabletu na výšku alebo šírku"</string>
+ <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"Orientácia obrazovky sa automaticky zmení, keď tablet otočíte na výšku alebo šírku"</string>
<string name="sim_lock_on" product="tablet" msgid="227481196121403470">"Na použitie tabletu vyžadovať PIN"</string>
<string name="sim_lock_on" product="default" msgid="6896034657274595838">"Na použitie telefónu vyžadovať PIN"</string>
<string name="sim_lock_off" product="tablet" msgid="4619320846576958981">"Na použitie tabletu vyžadovať PIN"</string>
diff --git a/res-product/values-tr/strings.xml b/res-product/values-tr/strings.xml
index 5b9e37f..843e330 100644
--- a/res-product/values-tr/strings.xml
+++ b/res-product/values-tr/strings.xml
@@ -119,9 +119,9 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" product="default" msgid="6804981319922169283">"Çocuğunuz Pixel Imprint\'i kullandığında resimler, parmak izi modelini güncellemek için kullanılır. Çocuğunuzun parmak izi modelini oluşturmak için kullanılan resimler hiçbir zaman saklanmaz ancak parmak izi modeli, telefonda güvenli bir şekilde saklanıp hiçbir zaman telefondan dışarı çıkmaz. Tüm işlemler, güvenli bir şekilde telefonda gerçekleşir."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" product="tablet" msgid="1426913673720862863">"Çocuğunuz Pixel Imprint\'i kullandığında resimler, parmak izi modelini güncellemek için kullanılır. Çocuğunuzun parmak izi modelini oluşturmak için kullanılan resimler hiçbir zaman saklanmaz ancak parmak izi modeli, tablette güvenli bir şekilde saklanıp hiçbir zaman tabletten dışarı çıkmaz. Tüm işlemler, güvenli bir şekilde tablette gerçekleşir."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" product="device" msgid="2631789126811300879">"Çocuğunuz Pixel Imprint\'i kullandığında resimler, parmak izi modelini güncellemek için kullanılır. Çocuğunuzun parmak izi modelini oluşturmak için kullanılan resimler hiçbir zaman saklanmaz ancak parmak izi modeli, cihazda güvenli bir şekilde saklanıp hiçbir zaman cihazdan dışarı çıkmaz. Tüm işlemler, güvenli bir şekilde cihazda gerçekleşir."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="default" msgid="1354488801088258040">"İstediğiniz zaman parmak izi resimlerinizi ve modelinizi silebilir veya Ayarlar\'da Parmak İzi Kilidi\'ni kapatabilirsiniz. Siz silene kadar, parmak izi resimleri ve modelleri telefonda saklanır."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="tablet" msgid="8207309581266022275">"İstediğiniz zaman parmak izi resimlerinizi ve modelinizi silebilir veya Ayarlar\'da Parmak İzi Kilidi\'ni kapatabilirsiniz. Siz silene kadar, parmak izi resimleri ve modelleri tablette saklanır."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="device" msgid="2498580070051496133">"İstediğiniz zaman parmak izi resimlerinizi ve modelinizi silebilir veya Ayarlar\'da Parmak İzi Kilidi\'ni kapatabilirsiniz. Siz silene kadar, parmak izi resimleri ve modelleri cihazda saklanır."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="default" msgid="1354488801088258040">"İstediğiniz zaman Ayarlar\'da parmak izi resimlerinizi ve modelinizi silebilir veya Parmak İzi Kilidi\'ni kapatabilirsiniz. Siz silene kadar, parmak izi resimleri ve modelleri telefonda saklanır."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="tablet" msgid="8207309581266022275">"İstediğiniz zaman Ayarlar\'da parmak izi resimlerinizi ve modelinizi silebilir veya Parmak İzi Kilidi\'ni kapatabilirsiniz Siz silene kadar, parmak izi resimleri ve modelleri tablette saklanır."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="device" msgid="2498580070051496133">"İstediğiniz zaman Ayarlar\'da parmak izi resimlerinizi ve modelinizi silebilir veya Parmak İzi Kilidi\'ni kapatabilirsiniz Siz silene kadar, parmak izi resimleri ve modelleri cihazda saklanır."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="default" msgid="5003753461032107715">"Siz ve çocuğunuz, istediğiniz zaman Ayarlar\'dan Parmak İzi Kilidi\'ni devre dışı bırakabilir veya çocuğunuzun parmak izi resimlerini ve modelini silebilirsiniz. Parmak izi resimleri ve modelleri, silinene kadar telefonda saklanır."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="tablet" msgid="8772005555323461143">"Siz ve çocuğunuz, istediğiniz zaman Ayarlar\'dan Parmak İzi Kilidi\'ni devre dışı bırakabilir veya çocuğunuzun parmak izi resimlerini ve modelini silebilirsiniz. Parmak izi resimleri ve modelleri, silinene kadar tablette saklanır."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="device" msgid="7254955922685507093">"Siz ve çocuğunuz, istediğiniz zaman Ayarlar\'dan Parmak İzi Kilidi\'ni devre dışı bırakabilir veya çocuğunuzun parmak izi resimlerini ve modelini silebilirsiniz. Parmak izi resimleri ve modelleri, silinene kadar cihazda saklanır."</string>
diff --git a/res-product/values-zh-rCN/strings.xml b/res-product/values-zh-rCN/strings.xml
index 328d661..e37febd 100644
--- a/res-product/values-zh-rCN/strings.xml
+++ b/res-product/values-zh-rCN/strings.xml
@@ -100,10 +100,10 @@
<string name="security_settings_face_settings_footer_attention_not_supported" product="default" msgid="8266896471278294942">"您可以通过刷脸来解锁手机或在应用内验证身份,例如在登录账号或批准购买交易时。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视手机可能会让手机意外解锁。\n\n如果有人将手机对准您的脸,即使您闭上眼睛,手机可能也会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的手机。"</string>
<string name="security_settings_face_settings_footer_attention_not_supported" product="tablet" msgid="6932278790700490818">"您可以通过刷脸来解锁平板电脑或在应用内验证身份,例如在登录账号或批准购买交易时。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视平板电脑可能会让平板电脑意外解锁。\n\n如果有人将平板电脑对准您的脸,即使您闭上眼睛,平板电脑可能也会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的平板电脑。"</string>
<string name="security_settings_face_settings_footer_attention_not_supported" product="device" msgid="2559602951942339212">"您可以通过刷脸来解锁设备或在应用内验证身份,例如在登录账号或批准购买交易时。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视设备可能会让设备意外解锁。\n\n如果有人将设备对准您的脸,即使您闭上眼睛,设备可能也会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的设备。"</string>
- <string name="security_settings_face_settings_footer_class3" product="default" msgid="7050076350282827484">"您可以通过刷脸来解锁手机或验证身份,例如用于登录应用或批准购买交易。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视手机可能会让手机意外解锁。\n\n如果有人将手机对准您的脸,手机可能会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的手机。"</string>
+ <string name="security_settings_face_settings_footer_class3" product="default" msgid="7050076350282827484">"您可以通过刷脸来解锁手机或验证身份,例如用于登录应用或批准购买交易。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视手机可能会让手机在您并未要求的情况下解锁。\n\n如果有人将手机对准您的脸,手机可能会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的手机。"</string>
<string name="security_settings_face_settings_footer_class3" product="tablet" msgid="8013245173915280810">"您可以通过刷脸来解锁平板电脑或验证身份,例如在登录应用或批准购买交易时。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视平板电脑可能会让平板电脑意外解锁。\n\n如果有人将平板电脑对准您的脸,平板电脑可能会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的平板电脑。"</string>
<string name="security_settings_face_settings_footer_class3" product="device" msgid="4411845832787210264">"您可以通过刷脸来解锁设备或验证身份,例如在登录应用或批准购买交易时。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视设备可能会让设备意外解锁。\n\n如果有人将设备对准您的脸,设备可能会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的设备。"</string>
- <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"您可以通过刷脸来解锁手机或验证身份,例如用于登录应用或批准购买交易。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视手机可能会让手机意外解锁。\n\n如果有人将手机对准您的脸,即使您闭上眼睛,手机可能也会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的手机。"</string>
+ <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"您可以通过刷脸来解锁手机或验证身份,例如用于登录应用或批准购买交易。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视手机可能会让手机在您并未要求的情况下解锁。\n\n如果有人将手机对准您的脸,即使您闭上眼睛,手机可能也会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的手机。"</string>
<string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"您可以通过刷脸来解锁平板电脑或验证身份,例如在登录应用或批准购买交易时。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视平板电脑可能会让平板电脑意外解锁。\n\n如果有人将平板电脑对准您的脸,即使您闭上眼睛,平板电脑可能也会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的平板电脑。"</string>
<string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"您可以通过刷脸来解锁设备或验证身份,例如在登录应用或批准购买交易时。\n\n注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视设备可能会让设备意外解锁。\n\n如果有人将设备对准您的脸,即使您闭上眼睛,设备可能也会解锁。\n\n此外,长相与您极为相似的人(例如您的孪生兄弟姐妹),或许也能解锁您的设备。"</string>
<string name="security_settings_fingerprint_enroll_introduction_v3_message" msgid="2145273491174234191">"您可以使用指纹来解锁 <xliff:g id="DEVICENAME">%s</xliff:g> 或验证身份,例如用于登录应用或批准购买交易"</string>
diff --git a/res/color/modes_set_schedule_text_color.xml b/res/color/modes_set_schedule_text_color.xml
new file mode 100644
index 0000000..5ceb68e
--- /dev/null
+++ b/res/color/modes_set_schedule_text_color.xml
@@ -0,0 +1,27 @@
+<!--
+ ~ Copyright (C) 2024 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <!-- when checked, background color will be accent color -->
+ <item
+ android:state_checked="true"
+ android:color="?android:attr/textColorPrimaryInverse" />
+ <!-- when unchecked, background color will be transparent -->
+ <item
+ android:state_checked="false"
+ android:color="?android:attr/colorAccent" />
+</selector>
diff --git a/res/drawable/ic_password_adb_wireless.xml b/res/drawable/ic_password_adb_wireless.xml
new file mode 100644
index 0000000..b9c32d7
--- /dev/null
+++ b/res/drawable/ic_password_adb_wireless.xml
@@ -0,0 +1,35 @@
+<!--
+ Copyright (C) 2024 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0"
+ android:tint="?android:attr/colorAccent">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M21.5,9.39l-1.63,0l0.81,-1.42l-0.86,-0.5l-0.82,1.42l-0.82,-1.42l-0.86,0.5l0.81,1.42l-1.63,0l0,1l1.63,0l-0.81,1.41l0.86,0.5l0.82,-1.41l0.82,1.41l0.86,-0.5l-0.81,-1.41l1.63,0z" />
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M13.68,7.97l-0.86,-0.5l-0.82,1.42l-0.82,-1.42l-0.86,0.5l0.81,1.42l-1.63,0l0,1l1.63,0l-0.81,1.41l0.86,0.5l0.82,-1.41l0.82,1.41l0.86,-0.5l-0.81,-1.41l1.63,0l0,-1l-1.63,0z" />
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M6.68,7.97l-0.86,-0.5l-0.82,1.42l-0.82,-1.42l-0.86,0.5l0.81,1.42l-1.63,0l0,1l1.63,0l-0.81,1.41l0.86,0.5l0.82,-1.41l0.82,1.41l0.86,-0.5l-0.81,-1.41l1.63,0l0,-1l-1.63,0z" />
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M21,17.89H3c-0.28,0 -0.5,-0.22 -0.5,-0.5v-1c0,-0.28 0.22,-0.5 0.5,-0.5h18c0.28,0 0.5,0.22 0.5,0.5v1C21.5,17.66 21.28,17.89 21,17.89z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_action_change_icon.xml b/res/drawable/ic_zen_mode_action_change_icon.xml
new file mode 100644
index 0000000..4cf4167
--- /dev/null
+++ b/res/drawable/ic_zen_mode_action_change_icon.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:tint="?android:attr/colorControlNormal"
+ android:viewportHeight="960"
+ android:viewportWidth="960">
+ <path
+ android:fillColor="@android:color/white"
+ android:pathData="M620,440Q645,440 662.5,422.5Q680,405 680,380Q680,355 662.5,337.5Q645,320 620,320Q595,320 577.5,337.5Q560,355 560,380Q560,405 577.5,422.5Q595,440 620,440ZM340,440Q365,440 382.5,422.5Q400,405 400,380Q400,355 382.5,337.5Q365,320 340,320Q315,320 297.5,337.5Q280,355 280,380Q280,405 297.5,422.5Q315,440 340,440ZM480,700Q548,700 603.5,661.5Q659,623 684,560L276,560Q301,623 356.5,661.5Q412,700 480,700ZM480,880Q397,880 324,848.5Q251,817 197,763Q143,709 111.5,636Q80,563 80,480Q80,397 111.5,324Q143,251 197,197Q251,143 324,111.5Q397,80 480,80Q563,80 636,111.5Q709,143 763,197Q817,251 848.5,324Q880,397 880,480Q880,563 848.5,636Q817,709 763,763Q709,817 636,848.5Q563,880 480,880ZM480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480ZM480,800Q614,800 707,707Q800,614 800,480Q800,346 707,253Q614,160 480,160Q346,160 253,253Q160,346 160,480Q160,614 253,707Q346,800 480,800Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_bedtime.xml b/res/drawable/ic_zen_mode_type_bedtime.xml
deleted file mode 100644
index 7428a71..0000000
--- a/res/drawable/ic_zen_mode_type_bedtime.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M524,920Q440,920 366.5,888Q293,856 238.5,801.5Q184,747 152,673.5Q120,600 120,516Q120,370 213,258.5Q306,147 450,120Q432,219 461,313.5Q490,408 561,479Q632,550 726.5,579Q821,608 920,590Q894,734 782,827Q670,920 524,920ZM524,840Q612,840 687,796Q762,752 805,675Q719,667 642,631.5Q565,596 504,535Q443,474 407,397Q371,320 364,234Q287,277 243.5,352.5Q200,428 200,516Q200,651 294.5,745.5Q389,840 524,840ZM504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Q504,535 504,535Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_driving.xml b/res/drawable/ic_zen_mode_type_driving.xml
deleted file mode 100644
index 3cc0066..0000000
--- a/res/drawable/ic_zen_mode_type_driving.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M240,760L240,800Q240,817 228.5,828.5Q217,840 200,840L160,840Q143,840 131.5,828.5Q120,817 120,800L120,480L204,240Q210,222 225.5,211Q241,200 260,200L700,200Q719,200 734.5,211Q750,222 756,240L840,480L840,800Q840,817 828.5,828.5Q817,840 800,840L760,840Q743,840 731.5,828.5Q720,817 720,800L720,760L240,760ZM232,400L728,400L686,280L274,280L232,400ZM200,480L200,480L200,680L200,680L200,480ZM300,640Q325,640 342.5,622.5Q360,605 360,580Q360,555 342.5,537.5Q325,520 300,520Q275,520 257.5,537.5Q240,555 240,580Q240,605 257.5,622.5Q275,640 300,640ZM660,640Q685,640 702.5,622.5Q720,605 720,580Q720,555 702.5,537.5Q685,520 660,520Q635,520 617.5,537.5Q600,555 600,580Q600,605 617.5,622.5Q635,640 660,640ZM200,680L760,680L760,480L200,480L200,680Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_immersive.xml b/res/drawable/ic_zen_mode_type_immersive.xml
deleted file mode 100644
index 7091357..0000000
--- a/res/drawable/ic_zen_mode_type_immersive.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M440,560L520,560L520,280L440,280L440,560ZM560,500L640,500L640,320L560,320L560,500ZM320,480L400,480L400,320L320,320L320,480ZM240,880L240,708Q183,656 151.5,586.5Q120,517 120,440Q120,290 225,185Q330,80 480,80Q605,80 701.5,153.5Q798,227 827,345L879,550Q884,569 872,584.5Q860,600 840,600L760,600L760,720Q760,753 736.5,776.5Q713,800 680,800L600,800L600,880L520,880L520,720L680,720Q680,720 680,720Q680,720 680,720L680,520L788,520L750,365Q727,274 652,217Q577,160 480,160Q364,160 282,241Q200,322 200,438Q200,498 224.5,552Q249,606 294,648L320,672L320,880L240,880ZM494,520L494,520L494,520Q494,520 494,520Q494,520 494,520Q494,520 494,520Q494,520 494,520Q494,520 494,520Q494,520 494,520L494,520L494,520L494,520Q494,520 494,520Q494,520 494,520L494,520L494,520Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_managed.xml b/res/drawable/ic_zen_mode_type_managed.xml
deleted file mode 100644
index 5e224eb..0000000
--- a/res/drawable/ic_zen_mode_type_managed.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M234,684Q285,645 348,622.5Q411,600 480,600Q549,600 612,622.5Q675,645 726,684Q761,643 780.5,591Q800,539 800,480Q800,347 706.5,253.5Q613,160 480,160Q347,160 253.5,253.5Q160,347 160,480Q160,539 179.5,591Q199,643 234,684ZM480,520Q421,520 380.5,479.5Q340,439 340,380Q340,321 380.5,280.5Q421,240 480,240Q539,240 579.5,280.5Q620,321 620,380Q620,439 579.5,479.5Q539,520 480,520ZM480,880Q397,880 324,848.5Q251,817 197,763Q143,709 111.5,636Q80,563 80,480Q80,397 111.5,324Q143,251 197,197Q251,143 324,111.5Q397,80 480,80Q563,80 636,111.5Q709,143 763,197Q817,251 848.5,324Q880,397 880,480Q880,563 848.5,636Q817,709 763,763Q709,817 636,848.5Q563,880 480,880ZM480,800Q533,800 580,784.5Q627,769 666,740Q627,711 580,695.5Q533,680 480,680Q427,680 380,695.5Q333,711 294,740Q333,769 380,784.5Q427,800 480,800ZM480,440Q506,440 523,423Q540,406 540,380Q540,354 523,337Q506,320 480,320Q454,320 437,337Q420,354 420,380Q420,406 437,423Q454,440 480,440ZM480,380Q480,380 480,380Q480,380 480,380Q480,380 480,380Q480,380 480,380Q480,380 480,380Q480,380 480,380Q480,380 480,380Q480,380 480,380ZM480,740Q480,740 480,740Q480,740 480,740Q480,740 480,740Q480,740 480,740Q480,740 480,740Q480,740 480,740Q480,740 480,740Q480,740 480,740Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_other.xml b/res/drawable/ic_zen_mode_type_other.xml
deleted file mode 100644
index d236b0d..0000000
--- a/res/drawable/ic_zen_mode_type_other.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M354,673L480,597L606,674L573,530L684,434L538,421L480,285L422,420L276,433L387,530L354,673ZM233,840L298,559L80,370L368,345L480,80L592,345L880,370L662,559L727,840L480,691L233,840ZM480,490L480,490L480,490L480,490L480,490L480,490L480,490L480,490L480,490L480,490Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_schedule_calendar.xml b/res/drawable/ic_zen_mode_type_schedule_calendar.xml
deleted file mode 100644
index 40004899..0000000
--- a/res/drawable/ic_zen_mode_type_schedule_calendar.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24.0dp"
- android:height="24.0dp"
- android:viewportWidth="24.0"
- android:viewportHeight="24.0"
- android:tint="?android:attr/colorControlNormal">
-
- <path android:fillColor="@android:color/white"
- android:pathData="M17.0,12.0l-5.0,0.0l0.0,5.0l5.0,0.0l0.0,-5.0zM16.0,1.0l0.0,2.0L8.0,3.0L8.0,1.0L6.0,1.0l0.0,2.0L5.0,3.0c-1.11,0.0 -1.9,0.9 -1.99,2.0L3.0,19.0c0.0,1.0 0.89,2.0 2.0,2.0l14.0,0.0c1.1,0.0 2.0,-0.9 2.0,-2.0L21.0,5.0c0.0,-1.1 -0.9,-2.0 -2.0,-2.0l-1.0,0.0L18.0,1.0l-2.0,0.0zm3.0,18.0L5.0,19.0L5.0,8.0l14.0,0.0l0.0,11.0z"/>
-</vector>
diff --git a/res/drawable/ic_zen_mode_type_schedule_time.xml b/res/drawable/ic_zen_mode_type_schedule_time.xml
deleted file mode 100644
index 57d596a..0000000
--- a/res/drawable/ic_zen_mode_type_schedule_time.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<!--
- ~ Copyright (C) 2024 The Android Open Source Project
- ~
- ~ Licensed under the Apache License, Version 2.0 (the "License");
- ~ you may not use this file except in compliance with the License.
- ~ You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing, software
- ~ distributed under the License is distributed on an "AS IS" BASIS,
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ~ See the License for the specific language governing permissions and
- ~ limitations under the License.
- -->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M612,668L668,612L520,464L520,280L440,280L440,496L612,668ZM480,880Q397,880 324,848.5Q251,817 197,763Q143,709 111.5,636Q80,563 80,480Q80,397 111.5,324Q143,251 197,197Q251,143 324,111.5Q397,80 480,80Q563,80 636,111.5Q709,143 763,197Q817,251 848.5,324Q880,397 880,480Q880,563 848.5,636Q817,709 763,763Q709,817 636,848.5Q563,880 480,880ZM480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480Q480,480 480,480ZM480,800Q613,800 706.5,706.5Q800,613 800,480Q800,347 706.5,253.5Q613,160 480,160Q347,160 253.5,253.5Q160,347 160,480Q160,613 253.5,706.5Q347,800 480,800Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_theater.xml b/res/drawable/ic_zen_mode_type_theater.xml
deleted file mode 100644
index cc66b32..0000000
--- a/res/drawable/ic_zen_mode_type_theater.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M160,840L160,120L240,120L240,200L320,200L320,120L640,120L640,200L720,200L720,120L800,120L800,840L720,840L720,760L640,760L640,840L320,840L320,760L240,760L240,840L160,840ZM240,680L320,680L320,600L240,600L240,680ZM240,520L320,520L320,440L240,440L240,520ZM240,360L320,360L320,280L240,280L240,360ZM640,680L720,680L720,600L640,600L640,680ZM640,520L720,520L720,440L640,440L640,520ZM640,360L720,360L720,280L640,280L640,360ZM400,760L560,760L560,200L400,200L400,760ZM400,200L400,200L560,200L560,200L400,200Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_type_unknown.xml b/res/drawable/ic_zen_mode_type_unknown.xml
deleted file mode 100644
index c1afd44..0000000
--- a/res/drawable/ic_zen_mode_type_unknown.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-Copyright (C) 2024 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:tint="?android:attr/colorControlNormal"
- android:viewportHeight="960"
- android:viewportWidth="960">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M480,880Q407,871 335,840.5Q263,810 206.5,753Q150,696 115,609Q80,522 80,400L80,360L120,360Q171,360 225,373Q279,386 326,412Q338,326 380.5,235.5Q423,145 480,80Q537,145 579.5,235.5Q622,326 634,412Q681,386 735,373Q789,360 840,360L880,360L880,400Q880,522 845,609Q810,696 753.5,753Q697,810 625.5,840.5Q554,871 480,880ZM478,798Q467,632 379.5,547Q292,462 162,442Q173,613 263.5,697Q354,781 478,798ZM480,544Q495,522 516.5,498.5Q538,475 558,458Q556,401 535.5,339Q515,277 480,218Q445,277 424.5,339Q404,401 402,458Q422,475 444,498.5Q466,522 480,544ZM558,780Q595,768 635,745Q675,722 709.5,682.5Q744,643 768.5,584Q793,525 798,442Q704,456 633,504.5Q562,553 524,628Q536,660 544.5,698Q553,736 558,780ZM480,544Q480,544 480,544Q480,544 480,544Q480,544 480,544Q480,544 480,544Q480,544 480,544Q480,544 480,544Q480,544 480,544Q480,544 480,544ZM558,780Q558,780 558,780Q558,780 558,780Q558,780 558,780Q558,780 558,780Q558,780 558,780Q558,780 558,780Q558,780 558,780Q558,780 558,780ZM478,798Q478,798 478,798Q478,798 478,798Q478,798 478,798Q478,798 478,798ZM524,628L524,628Q524,628 524,628Q524,628 524,628L524,628L524,628L524,628Q524,628 524,628Q524,628 524,628L524,628Q524,628 524,628Q524,628 524,628ZM480,880L480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880Q480,880 480,880L480,880Q480,880 480,880Q480,880 480,880L480,880Q480,880 480,880Q480,880 480,880L480,880Z" />
-</vector>
\ No newline at end of file
diff --git a/res/drawable/modes_schedule_day_toggle.xml b/res/drawable/modes_schedule_day_toggle.xml
new file mode 100644
index 0000000..c09f597
--- /dev/null
+++ b/res/drawable/modes_schedule_day_toggle.xml
@@ -0,0 +1,47 @@
+<!--
+ ~ Copyright (C) 2024 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<layer-list
+ xmlns:android="http://schemas.android.com/apk/res/android" >
+ <item
+ android:top="2dp"
+ android:bottom="2dp"
+ android:left="2dp"
+ android:right="2dp">
+ <selector>
+ <!-- selected state = solid filled in circle -->
+ <item android:state_checked="true">
+ <shape android:shape="oval"
+ android:tint="?android:attr/colorAccent">
+ <size android:height="34dp"
+ android:width="34dp" />
+ <solid android:color="@android:color/white" />
+ </shape>
+ </item>
+
+ <!-- unselected state = just the outline of a circle -->
+ <item android:state_checked="false">
+ <shape android:shape="oval">
+ <size android:height="34dp"
+ android:width="34dp" />
+ <stroke android:width="2dp"
+ android:color="?android:attr/colorAccent" />
+ <solid android:color="@android:color/transparent" />
+ </shape>
+ </item>
+ </selector>
+ </item>
+</layer-list>
diff --git a/res/drawable/pointer_icon_fill_style_background.xml b/res/drawable/pointer_icon_fill_style_background.xml
new file mode 100644
index 0000000..1e98cf5
--- /dev/null
+++ b/res/drawable/pointer_icon_fill_style_background.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright 2024 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
+ android:shape="rectangle">
+ <corners android:radius="16dp" />
+ <solid android:color="?androidprv:attr/materialColorSurface"/>
+</shape>
diff --git a/res/layout-sw600dp/private_space_setlock_screen.xml b/res/layout-sw600dp/private_space_setlock_screen.xml
new file mode 100644
index 0000000..f8f96a7
--- /dev/null
+++ b/res/layout-sw600dp/private_space_setlock_screen.xml
@@ -0,0 +1,48 @@
+<!--
+ ~ Copyright (C) 2023 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<com.google.android.setupdesign.GlifLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/ps_fragment_lock"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:filterTouchesWhenObscured="true"
+ app:sucHeaderText="@string/private_space_lockscreen_title"
+ app:sudDescriptionText="@string/private_space_lockscreen_summary"
+ android:icon="@drawable/ic_lock">
+ <LinearLayout
+ android:id="@+id/sud_layout_container"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical"
+ android:gravity="center">
+ <FrameLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ style="@style/SudContentFrame">
+ <com.airbnb.lottie.LottieAnimationView
+ android:id="@+id/lottie_animation"
+ style="@style/SudContentIllustration"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:lottie_autoPlay="true"
+ app:lottie_loop="true"
+ app:lottie_rawRes="@raw/private_space_use_screen_lock_illustration"
+ />
+ </FrameLayout>
+ </LinearLayout>
+</com.google.android.setupdesign.GlifLayout>
\ No newline at end of file
diff --git a/res/layout-sw600dp/private_space_setup_success.xml b/res/layout-sw600dp/private_space_setup_success.xml
new file mode 100644
index 0000000..c06cdaf
--- /dev/null
+++ b/res/layout-sw600dp/private_space_setup_success.xml
@@ -0,0 +1,47 @@
+<!--
+ ~ Copyright (C) 2023 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<com.google.android.setupdesign.GlifLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/private_space_setup_success"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:filterTouchesWhenObscured="true"
+ app:sucHeaderText="@string/private_space_success_title"
+ app:sudDescriptionText="@string/private_space_access_text"
+ android:icon="@drawable/ic_privatespace_done">
+ <LinearLayout
+ android:id="@+id/sud_layout_container"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical"
+ android:gravity="center">
+ <FrameLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ style="@style/SudContentFrame">
+ <com.airbnb.lottie.LottieAnimationView
+ android:id="@+id/lottie_animation"
+ style="@style/SudContentIllustration"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:lottie_autoPlay="true"
+ app:lottie_loop="true"
+ app:lottie_rawRes="@raw/private_space_illustration"/>
+ </FrameLayout>
+ </LinearLayout>
+</com.google.android.setupdesign.GlifLayout>
diff --git a/res/layout/modes_icon_list.xml b/res/layout/modes_icon_list.xml
new file mode 100644
index 0000000..87e647e
--- /dev/null
+++ b/res/layout/modes_icon_list.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2024 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+
+<androidx.constraintlayout.widget.ConstraintLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content">
+
+ <androidx.recyclerview.widget.RecyclerView
+ android:id="@+id/icon_list"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:clipToPadding="true"
+ android:nestedScrollingEnabled="false"
+ android:paddingStart="12dp"
+ android:paddingEnd="12dp"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent"/>
+
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/res/layout/modes_icon_list_item.xml b/res/layout/modes_icon_list_item.xml
new file mode 100644
index 0000000..aa45de3
--- /dev/null
+++ b/res/layout/modes_icon_list_item.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2024 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="@dimen/zen_mode_icon_list_item_size"
+ android:clickable="true">
+ <!-- width is match_parent to distribute remaining horizontal space -->
+
+ <ImageView
+ android:id="@+id/icon_image_view"
+ android:layout_width="@dimen/zen_mode_icon_list_circle_diameter"
+ android:layout_height="@dimen/zen_mode_icon_list_circle_diameter"
+ android:importantForAccessibility="no"
+ android:layout_gravity="center" />
+</FrameLayout>
diff --git a/res/layout/modes_set_schedule_layout.xml b/res/layout/modes_set_schedule_layout.xml
new file mode 100644
index 0000000..5758cfb
--- /dev/null
+++ b/res/layout/modes_set_schedule_layout.xml
@@ -0,0 +1,228 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2024 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/modes_set_schedule_layout"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:gravity="fill_horizontal"
+ android:orientation="vertical"
+ android:paddingLeft="24dp"
+ android:paddingRight="24dp"
+ android:paddingTop="24dp"
+ android:paddingBottom="24dp">
+
+ <!-- Start time & end time row -->
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:gravity="fill_horizontal"
+ android:orientation="horizontal">
+
+ <!-- Start time: title (non-clickable preference), time setter -->
+ <LinearLayout
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/start_time_label"
+ android:clickable="false"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Medium"
+ android:text="@string/zen_mode_start_time" />
+
+ <TextView
+ android:id="@+id/start_time"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Title"
+ android:textColor="?android:attr/colorAccent"
+ android:textSize="40sp" />
+
+ </LinearLayout>
+
+ <!-- End time: title (non-clickable preference), time setter -->
+ <LinearLayout
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/end_time_label"
+ android:clickable="false"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Medium"
+ android:text="@string/zen_mode_end_time" />
+
+ <TextView
+ android:id="@+id/end_time"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Title"
+ android:textColor="?android:attr/colorAccent"
+ android:textSize="40sp" />
+
+ </LinearLayout>
+
+ </LinearLayout>
+
+ <!-- Schedule duration display row -->
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal"
+ android:paddingTop="8dp"
+ android:paddingBottom="8dp">
+
+ <!-- left side line divider -->
+ <View
+ android:layout_width="0dp"
+ android:layout_height="1.5dp"
+ android:layout_weight="1"
+ android:layout_gravity="center_vertical"
+ android:background="?android:attr/dividerHorizontal" />
+
+ <!-- length of schedule -->
+ <TextView
+ android:id="@+id/schedule_duration"
+ android:clickable="false"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:paddingHorizontal="8dp"
+ android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Small" />
+
+ <!-- right side line divider -->
+ <View
+ android:layout_width="0dp"
+ android:layout_height="1.5dp"
+ android:layout_weight="1"
+ android:layout_gravity="center_vertical"
+ android:background="?android:attr/dividerHorizontal" />
+
+ </LinearLayout>
+
+ <!-- Buttons for selecting days of the week -->
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:id="@+id/days_of_week_container"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:minHeight="10dp"
+ android:maxHeight="60dp"
+ android:orientation="horizontal">
+
+ <ToggleButton
+ android:id="@+id/day0"
+ android:layout_width="0dp"
+ android:layout_height="0dp"
+ android:background="@drawable/modes_schedule_day_toggle"
+ android:textColor="@color/modes_set_schedule_text_color"
+ android:textSize="18sp"
+ app:layout_constraintDimensionRatio="1:1"
+ app:layout_constraintHorizontal_chainStyle="spread_inside"
+ app:layout_constraintEnd_toStartOf="@+id/day1"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <ToggleButton
+ android:id="@+id/day1"
+ android:layout_width="0dp"
+ android:layout_height="0dp"
+ android:background="@drawable/modes_schedule_day_toggle"
+ android:textColor="@color/modes_set_schedule_text_color"
+ android:textSize="18sp"
+ app:layout_constraintDimensionRatio="1:1"
+ app:layout_constraintHorizontal_chainStyle="spread_inside"
+ app:layout_constraintStart_toEndOf="@+id/day0"
+ app:layout_constraintEnd_toStartOf="@+id/day2"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <ToggleButton
+ android:id="@+id/day2"
+ android:layout_width="0dp"
+ android:layout_height="0dp"
+ android:background="@drawable/modes_schedule_day_toggle"
+ android:textColor="@color/modes_set_schedule_text_color"
+ android:textSize="18sp"
+ app:layout_constraintDimensionRatio="1:1"
+ app:layout_constraintHorizontal_chainStyle="spread_inside"
+ app:layout_constraintStart_toEndOf="@+id/day1"
+ app:layout_constraintEnd_toStartOf="@+id/day3"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <ToggleButton
+ android:id="@+id/day3"
+ android:layout_width="0dp"
+ android:layout_height="0dp"
+ android:background="@drawable/modes_schedule_day_toggle"
+ android:textColor="@color/modes_set_schedule_text_color"
+ android:textSize="18sp"
+ app:layout_constraintDimensionRatio="1:1"
+ app:layout_constraintHorizontal_chainStyle="spread_inside"
+ app:layout_constraintStart_toEndOf="@+id/day2"
+ app:layout_constraintEnd_toStartOf="@+id/day4"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <ToggleButton
+ android:id="@+id/day4"
+ android:layout_width="0dp"
+ android:layout_height="0dp"
+ android:background="@drawable/modes_schedule_day_toggle"
+ android:textColor="@color/modes_set_schedule_text_color"
+ android:textSize="18sp"
+ app:layout_constraintDimensionRatio="1:1"
+ app:layout_constraintHorizontal_chainStyle="spread_inside"
+ app:layout_constraintStart_toEndOf="@+id/day3"
+ app:layout_constraintEnd_toStartOf="@+id/day5"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <ToggleButton
+ android:id="@+id/day5"
+ android:layout_width="0dp"
+ android:layout_height="0dp"
+ android:background="@drawable/modes_schedule_day_toggle"
+ android:textColor="@color/modes_set_schedule_text_color"
+ android:textSize="18sp"
+ app:layout_constraintDimensionRatio="1:1"
+ app:layout_constraintHorizontal_chainStyle="spread_inside"
+ app:layout_constraintStart_toEndOf="@+id/day4"
+ app:layout_constraintEnd_toStartOf="@+id/day6"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <ToggleButton
+ android:id="@+id/day6"
+ android:layout_width="0dp"
+ android:layout_height="0dp"
+ android:background="@drawable/modes_schedule_day_toggle"
+ android:textColor="@color/modes_set_schedule_text_color"
+ android:textSize="18sp"
+ app:layout_constraintDimensionRatio="1:1"
+ app:layout_constraintHorizontal_chainStyle="spread_inside"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toEndOf="@+id/day5"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+</LinearLayout>
diff --git a/res/layout/pointer_icon_fill_style_layout.xml b/res/layout/pointer_icon_fill_style_layout.xml
new file mode 100644
index 0000000..1fa9baf
--- /dev/null
+++ b/res/layout/pointer_icon_fill_style_layout.xml
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright 2024 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:gravity="center_vertical"
+ android:minHeight="?android:attr/listPreferredItemHeightSmall"
+ android:orientation="vertical"
+ android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+ android:paddingStart="?android:attr/listPreferredItemPaddingStart">
+
+ <TextView
+ android:id="@+id/title"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="@dimen/pointer_fill_style_circle_padding"
+ android:text="@string/pointer_fill_style"
+ android:textAlignment="viewStart"
+ android:textAppearance="?android:attr/textAppearanceListItem" />
+
+ <HorizontalScrollView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content">
+
+ <LinearLayout
+ android:id="@+id/button_holder"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="@dimen/pointer_fill_style_circle_padding"
+ android:layout_marginTop="@dimen/pointer_fill_style_circle_padding"
+ android:background="@drawable/pointer_icon_fill_style_background"
+ android:gravity="center_horizontal"
+ android:padding="@dimen/pointer_fill_style_circle_padding">
+
+ <ImageView
+ android:id="@+id/button_black"
+ android:layout_width="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_height="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_margin="@dimen/pointer_fill_style_circle_padding"
+ android:adjustViewBounds="true"
+ android:maxWidth="@dimen/pointer_fill_style_circle_diameter"
+ android:contentDescription="@string/pointer_fill_style_black_button"
+ android:scaleType="fitCenter" />
+
+ <ImageView
+ android:id="@+id/button_green"
+ android:layout_width="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_height="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_margin="@dimen/pointer_fill_style_circle_padding"
+ android:adjustViewBounds="true"
+ android:maxWidth="@dimen/pointer_fill_style_circle_diameter"
+ android:contentDescription="@string/pointer_fill_style_green_button"
+ android:scaleType="fitCenter" />
+
+ <ImageView
+ android:id="@+id/button_yellow"
+ android:layout_width="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_height="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_margin="@dimen/pointer_fill_style_circle_padding"
+ android:adjustViewBounds="true"
+ android:maxWidth="@dimen/pointer_fill_style_circle_diameter"
+ android:contentDescription="@string/pointer_fill_style_yellow_button"
+ android:scaleType="fitCenter" />
+
+ <ImageView
+ android:id="@+id/button_pink"
+ android:layout_width="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_height="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_margin="@dimen/pointer_fill_style_circle_padding"
+ android:adjustViewBounds="true"
+ android:maxWidth="@dimen/pointer_fill_style_circle_diameter"
+ android:contentDescription="@string/pointer_fill_style_pink_button"
+ android:scaleType="fitCenter" />
+
+ <ImageView
+ android:id="@+id/button_blue"
+ android:layout_width="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_height="@dimen/pointer_fill_style_circle_diameter"
+ android:layout_margin="@dimen/pointer_fill_style_circle_padding"
+ android:adjustViewBounds="true"
+ android:maxWidth="@dimen/pointer_fill_style_circle_diameter"
+ android:contentDescription="@string/pointer_fill_style_blue_button"
+ android:scaleType="fitCenter" />
+ </LinearLayout>
+ </HorizontalScrollView>
+
+</LinearLayout>
diff --git a/res/layout/private_space_education_screen.xml b/res/layout/private_space_education_screen.xml
index c831bf7..4df92b7 100644
--- a/res/layout/private_space_education_screen.xml
+++ b/res/layout/private_space_education_screen.xml
@@ -30,6 +30,7 @@
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/sud_layout_icon_container"
+ style="@style/SudContentFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
@@ -37,8 +38,6 @@
android:id="@+id/lottie_animation"
style="@style/SudContentIllustration"
android:layout_width="match_parent"
- android:layout_marginLeft="24dp"
- android:layout_marginRight="24dp"
android:layout_height="match_parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
diff --git a/res/layout/private_space_gaia_education_screen.xml b/res/layout/private_space_gaia_education_screen.xml
deleted file mode 100644
index e5c0f85..0000000
--- a/res/layout/private_space_gaia_education_screen.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-<!--
- ~ Copyright (C) 2024 The Android Open Source Project
- ~
- ~ Licensed under the Apache License, Version 2.0 (the "License");
- ~ you may not use this file except in compliance with the License.
- ~ You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing, software
- ~ distributed under the License is distributed on an "AS IS" BASIS,
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ~ See the License for the specific language governing permissions and
- ~ limitations under the License.
- -->
-
-<com.google.android.setupdesign.GlifLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/ps_account_intro_screen"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:filterTouchesWhenObscured="true">
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical">
- <ImageView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginLeft="24dp"
- android:layout_marginRight="24dp"
- android:contentDescription="@null"
- android:src="@drawable/ic_security_privacy_alert_primary"/>
- <TextView
- style="@style/PrivateSpaceSetupTextFontStyle"
- android:fontFamily="google-sans"
- android:text="@string/private_space_gaia_education_title"
- android:layout_margin="24dp"
- android:layout_marginTop="40dp"
- android:gravity="center"
- android:textSize="28sp"/>
- <TextView
- style="@style/PrivateSpaceSetupTextFontStyle"
- android:layout_marginLeft="24dp"
- android:layout_marginRight="24dp"
- android:layout_marginBottom="40dp"
- android:textSize="14sp"
- android:text="@string/private_space_gaia_education_description"/>
- <TextView
- style="@style/PrivateSpaceSetupTextFontStyle"
- android:layout_marginLeft="24dp"
- android:layout_marginRight="24dp"
- android:layout_marginBottom="16dp"
- android:textSize="14sp"
- android:text="@string/private_space_gaia_education_header"/>
- <RelativeLayout
- style="@style/PrivateSpaceSetupBulletPointLayoutStyle"
- android:paddingTop="8dp"
- android:paddingBottom="8dp">
- <ImageView
- android:id="@+id/point1"
- style="@style/PrivateSpaceBulletPointIconStyle"
- android:contentDescription="@null"
- android:src="@drawable/ic_text_dot" />
- <TextView
- style="@style/PrivateSpaceBulletPointTextFontStyle"
- android:layout_toRightOf="@+id/point1"
- android:textSize="14sp"
- android:text="@string/private_space_gaia_education_bullet1"/>
- </RelativeLayout>
- <RelativeLayout
- style="@style/PrivateSpaceSetupBulletPointLayoutStyle">
- <ImageView
- android:id="@+id/point2"
- style="@style/PrivateSpaceBulletPointIconStyle"
- android:contentDescription="@null"
- android:src="@drawable/ic_text_dot" />
- <TextView
- style="@style/PrivateSpaceBulletPointTextFontStyle"
- android:layout_toRightOf="@+id/point2"
- android:textSize="14sp"
- android:text="@string/private_space_gaia_education_bullet2"/>
- </RelativeLayout>
- <RelativeLayout
- style="@style/PrivateSpaceSetupBulletPointLayoutStyle">
- <ImageView
- android:id="@+id/point3"
- style="@style/PrivateSpaceBulletPointIconStyle"
- android:contentDescription="@null"
- android:src="@drawable/ic_text_dot" />
- <TextView
- style="@style/PrivateSpaceBulletPointTextFontStyle"
- android:layout_toRightOf="@+id/point3"
- android:textSize="14sp"
- android:text="@string/private_space_gaia_education_bullet3"/>
- </RelativeLayout>
- <RelativeLayout
- style="@style/PrivateSpaceSetupBulletPointLayoutStyle">
- <ImageView
- android:id="@+id/point4"
- style="@style/PrivateSpaceBulletPointIconStyle"
- android:contentDescription="@null"
- android:src="@drawable/ic_text_dot" />
- <TextView
- style="@style/PrivateSpaceBulletPointTextFontStyle"
- android:layout_toRightOf="@+id/point4"
- android:textSize="14sp"
- android:text="@string/private_space_gaia_education_bullet4"/>
- </RelativeLayout>
- </LinearLayout>
-</com.google.android.setupdesign.GlifLayout>
diff --git a/res/layout/private_space_pre_finish_delay.xml b/res/layout/private_space_wait_screen.xml
similarity index 94%
rename from res/layout/private_space_pre_finish_delay.xml
rename to res/layout/private_space_wait_screen.xml
index 3b620bf..83b4806 100644
--- a/res/layout/private_space_pre_finish_delay.xml
+++ b/res/layout/private_space_wait_screen.xml
@@ -25,5 +25,5 @@
android:icon="@drawable/ic_private_space_icon"
app:sudUsePartnerHeavyTheme="true"
app:sudIllustrationType="default"
- app:sucHeaderText="@string/private_space_pre_finish_title">
-</com.google.android.setupdesign.GlifLoadingLayout>
\ No newline at end of file
+ app:sucHeaderText="@string/private_space_wait_screen_title">
+</com.google.android.setupdesign.GlifLoadingLayout>
diff --git a/res/navigation/privatespace_main_context_nav.xml b/res/navigation/privatespace_main_context_nav.xml
index 0de5d91..3eb57d3 100644
--- a/res/navigation/privatespace_main_context_nav.xml
+++ b/res/navigation/privatespace_main_context_nav.xml
@@ -35,9 +35,6 @@
<action
android:id="@+id/action_set_lock_fragment"
app:destination="@id/ps_profile_lock_fragment"/>
- <action
- android:id="@+id/action_account_intro_fragment"
- app:destination="@id/ps_account_intro_fragment"/>
</fragment>
<fragment android:id="@+id/ps_profile_error_fragment"
android:name="com.android.settings.privatespace.PrivateProfileCreationError"
@@ -60,9 +57,6 @@
android:name="com.android.settings.privatespace.PrivateSpaceAccountLoginError"
android:label="fragment_account_error">
<action
- android:id="@+id/action_advance_login_error"
- app:destination="@id/ps_account_intro_fragment"/>
- <action
android:id="@+id/action_skip_account_login"
app:destination="@id/ps_profile_lock_fragment"/>
</fragment>
@@ -73,16 +67,10 @@
android:id="@+id/action_lock_success_fragment"
app:destination="@id/ps_pre_finish_delay_fragment"/>
</fragment>
- <fragment android:id="@+id/ps_account_intro_fragment"
- android:name="com.android.settings.privatespace.PrivateSpaceGaiaEducationFragment"
- android:label="fragment_ps_account_intro">
- <action
- android:id="@+id/action_account_lock_fragment"
- app:destination="@id/ps_profile_lock_fragment"/>
- <action
- android:id="@+id/action_advance_login_error"
- app:destination="@id/ps_account_error_fragment"/>
- </fragment>
<action android:id="@+id/action_pre_finish_delay_fragment"
app:destination="@id/ps_pre_finish_delay_fragment"/>
+ <action android:id="@+id/action_advance_login_error"
+ app:destination="@id/ps_account_error_fragment"/>
+ <action android:id="@+id/show_set_lock_fragment"
+ app:destination="@id/ps_profile_lock_fragment"/>
</navigation>
diff --git a/res/values-af/arrays.xml b/res/values-af/arrays.xml
index 882b5e0..ddfc5af 100644
--- a/res/values-af/arrays.xml
+++ b/res/values-af/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 78bf6f0..1f0a0ac 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Ontkoppel toestel?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Bind nuwe toestel saam"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Skakel dit môre outomaties weer aan"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Bind regteroor saam"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Bind linkeroor saam"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Bind jou ander oor saam"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Bind linkeroor saam"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Gehoortoestelinstellings"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Kortpad, gehoortoestel-versoenbaarheid"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Voorafstellings"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Voorafstelling"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Kon nie voorafstelling opdateer nie"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Oudio-uitvoer"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Meer oor oudio-uitvoer"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Kanselleer"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nee, dankie"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Nie nou nie"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ek stem in"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Meer"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Ontsluit met jou gesig"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Hou in gedagte"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Gebruik jou vingerafdruk om jou foon te ontsluit of aankope goed te keur.\n\nLet wel: Jy kan nie jou vingerafdruk gebruik om hierdie toestel te ontsluit nie. Gebruik jou organisasie se administrateur vir meer inligting."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Kanselleer"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nee, dankie"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Nie nou nie"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ek stem in"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Slaan vingerafdruk oor?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Vingerafdrukopstelling neem net \'n minuut of twee. As jy dit oorslaan, kan jy jou vingerafdruk later in instellings byvoeg."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Elke keer as die toestel sluit"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minute ná skermuitteltyd"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Net nadat toestel herbegin het"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"As jy ’n ander slot vir jou privaat ruimte gebruik, sal jy dalk moet verifieer dat dit jy is om apps in jou privaat ruimte oop te maak."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Versteek privaat ruimte"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Versteek privaat ruimte wanneer dit gesluit is"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Jy kan privaat ruimte op jou applys versteek as jy nie wil hê ander mense moet weet dat jy dit op jou toestel het nie"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Stel op"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privaat ruimte"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Versteek of sluit privaat apps op ’n aparte plek. Gebruik ’n toegewyde Google-rekening vir ekstra sekuriteit."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Stel jou privaat ruimte op"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Kies ’n Google-rekening vir jou ruimte"</b>\n"As jy ’n toegewyde rekening gebruik, help dit om te keer dat gesinkroniseerde lêers, foto’s en e-posse buite jou ruimte verskyn"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Hoe dit werk"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Skep ’n Google-rekening vir jou ruimte"</b>\n"As jy ’n toegewyde rekening gebruik, help dit om te verhoed dat gesinkroniseerde lêers, foto\'s en e-posse buite jou ruimte verskyn"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Stel ’n slot op"</b>\n"Sluit jou ruimte om te keer dat ander mense dit oopmaak"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installeer apps"</b>\n"Jou privaat ruimte het sy eie Play Winkel sodat jy apps maklik kan installeer."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps in jou privaat ruimte sal nie in toestemmingbestuurder, privaatheidkontroleskerm en ander instellings verskyn wanneer jou privaat ruimte gesluit is nie.\n\nJou privaat ruimte kan nie na ’n nuwe toestel teruggestel word nie. Jy sal ’n ander privaat ruimte moet opstel as jy dit op ’n ander toestel wil gebruik.\n\nEnigiemand wat jou toestel aan ’n rekenaar koppel of kwaadwillige apps op jou toestel installeer, sal moontlik toegang tot jou privaat ruimte kan kry."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Installeer apps"</b>\n"Installeer apps wat jy privaat in jou ruimte wil hou"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Hou in gedagte"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps stop wanneer jy jou ruimte sluit"</b>\n"Wanneer jy jou ruimte sluit, word apps in jou ruimte gestop en sal jy nie kennisgewing van hulle af ontvang nie"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Meer inligting oor privaat ruimte"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Dit sal ’n paar oomblikke neem"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Stel tans privaat ruimte op …"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Jy kan ’n nuwe slot net vir privaat ruimte stel, of dieselfde slot gebruik wat jy gebruik om jou toestel te ontsluit"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Gebruik skermslot"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Kies nuwe slot"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Net ’n oomblik …"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Net ’n oomblik …"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Gereed!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Gaan na jou appslys en rollees af om jou privaat ruimte te kry"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Klaar"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Stel \'n PIN vir jou privaat ruimte"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Stel \'n wagwoord vir jou privaat ruimte"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Stel \'n patroon vir jou privaat ruimte"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Skep ’n Google-rekening om te help om jou data privaat te hou"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Jy kan op die volgende skerm by ’n rekening aanmeld om saam met jou privaat ruimte te gebruik"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Skep ’n toegewyde rekening om te help keer dat data buite privaat ruimte verskyn, soos:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Gesinkroniseerde foto’s, lêers, e-posse, kontakte, kalendergeleenthede en ander data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Appaflaaigeskiedenis en -aanbevelings"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Blaaigeskiedenis, boekmerke en gestoorde wagwoorde"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Voorgestelde inhoud wat met jou aktiwiteit in privaatruimte-apps verband hou"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Het dit"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Sluit"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Versteek"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Jy kan tot <xliff:g id="COUNT">%d</xliff:g> vingerafdrukke byvoeg"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Stelselsertifikaat"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Sertifikaatstawing"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Netwerkbesonderhede"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Hierdie netwerk gebruik ’n ouer sekuriteitprotokol genaamd BEP, wat minder veilig is"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnetmasker"</string>
<string name="server_name_title" msgid="7257095185810299066">"Bedienernaam"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipe"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Toestel se wi-fi-MAC-adres"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-adres"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Reeksnommer"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tyd aanlyn"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Gebruiktyd"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Vervaardigingdatum"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum van eerste gebruik"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Siklustelling"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Tik onder regs"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tik op die raakpaneel se hoek onder regs vir meer opsies"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Wyserspoed"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Wyserinvulstyl"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Verander wyserinvulstyl na swart"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Verander wyserinvulstyl na groen"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Verander wyserinvulstyl na geel"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Verander wyserinvulstyl na pienk"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Verander wyserinvulstyl na blou"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Leer raakpaneelgebare"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"stuurpaneel, stuurpaneel, muis, skermpyltjie, rollees, swiep, regsklik, klik, wyser"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"regsklik, tik"</string>
@@ -2030,7 +2034,7 @@
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Kleurkontras"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Hoër kontras laat teks, knoppies en ikone meer uitstaan. Kies die kontras wat vir jou die beste lyk."</string>
<string name="color_contrast_note" msgid="7592686603372566198">"Sommige apps steun dalk nie alle kleur- en tekskontrasinstellings nie"</string>
- <string name="color_contrast_preview" msgid="6791430227535363883">"Voorbeskou"</string>
+ <string name="color_contrast_preview" msgid="6791430227535363883">"Voorskou"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 dae gelede"</string>
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Volg op?"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Geen}=1{1 skedule gestel}other{# skedules gestel}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Moenie Steur Nie"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioriteitmodusse"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Word net deur belangrike mense en apps in kennis gestel"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Beperk onderbrekings"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Skakel Moenie steur nie aan"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Voeg ’n kalender by"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Gebruik jou kalender"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Skedule"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Skedule"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Maak foon op sekere tye stil"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Stel Moenie Steur Nie-reëls"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Hierdie program steun nie verbeterde instellings nie"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Meer instellings"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Meer instellings is binne hierdie app beskikbaar"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Afkoel"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Gebruik Afkoel"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Wanneer jy binne ’n kort tydperk baie kennisgewings kry, sal jou toestel klankonderbrekings en opspringers op die skerm minimeer. Oproepe, wekkers en prioriteitgesprekke sal steeds waarskuwings stuur soos gewoonlik, en dis maklik om alle gelewerde kennisgewings in die Skadu te kry."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Pas toe op werkprofiele"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Pas toe op werkprofielapps"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR-helperdienste"</string>
@@ -3737,7 +3752,7 @@
<string name="zen_mode_none_calls" msgid="2047166006414016327">"Geen"</string>
<string name="zen_mode_none_messages" msgid="1386626352943268342">"Geen"</string>
<string name="zen_mode_alarms" msgid="5989343060100771099">"Wekkers"</string>
- <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Van aftellers, wekkers, sekuriteitstelsels en ander programme af"</string>
+ <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Van aftellers, wekkers, sekuriteitstelsels en ander apps af"</string>
<string name="zen_mode_alarms_list" msgid="334782233067365405">"wekkers"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"Wekkers"</string>
<string name="zen_mode_media" msgid="885017672250984735">"Mediaklanke"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Geselekteerde apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Geen"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Alles"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Laat programme toe om te ignoreer"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Programme wat kan onderbreek"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Kies meer apps"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Verandering aan wekkers vir slegs een uur tot {time}}other{Verandering aan wekkers vir slegs # uur tot {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Verander tot <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> na net wekkers"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Verander na onderbreek altyd"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Waarskuwing"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Maak toe"</string>
<string name="device_feedback" msgid="5351614458411688608">"Stuur terugvoer oor hierdie toestel"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Links"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Regs"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Houer"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Battery"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Instellingspaneel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Dwangrekenaarmodus"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Verplig eksperimentele rekenaarmodus op sekondêre skerms"</string>
diff --git a/res/values-am/arrays.xml b/res/values-am/arrays.xml
index 0380e61..733ae90 100644
--- a/res/values-am/arrays.xml
+++ b/res/values-am/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index f1f2ac2..63c3a55 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"የመሣሪያ ግንኙነት ይቋረጥ?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"አዲስ መሣሪያ ያጣምሩ"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ብሉቱዝ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"ነገ እንደገና በራስ-ሰር አስጀምር"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"የቀኝ ጆሮን ያጣምሩ"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"የግራ ጆሮን ያጣምሩ"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"ሌላውን ጆሮዎን ያጣምሩ"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"የግራ ጆሮን ያጣምሩ"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"የመስማት ችሎታ መሣሪያ ቅንብሮች"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"አቋራጭ፣ የመስሚያ ረዳት ተኳዃኝነት"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"ቅድመ-ቅምጦች"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ቅድመ-ቅምጥ"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"ቅድመ-ቅምጥን ማዘመን አልተቻለም"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"የኦዲዮ ውጽዓት"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ስለኦዲዮ ውፅዓት"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ይቅር"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"አይ፣ አመሰግናለሁ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"አሁን አይደለም"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"እስማማለሁ"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"ተጨማሪ"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"በመልክዎ ይክፈቱ"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ከግምት ውስጥ ያስገቡ"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"የእርስዎን ስልክ ለመክፈት ወይም ግዢዎችን ለማጽደቅ የእርስዎን የጣት አሻራ ይጠቀሙ።\n\nማስታወሻ፦ ይህን መሣሪያ ለመክፈት የጣት አሻራን መጠቀም አይችሉም። ለተጨማሪ መረጃ፣ የእርስዎን ድርጅት አስተዳዳሪ ያነጋግሩ።"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ይቅር"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"አይ፣ አመሰግናለሁ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"አሁን አይደለም"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"እስማማለሁ"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"የጣት አሻራ ይዘለል?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"የጣት አሻራን ማዋቀር አንድ ወይም ሁለት ደቂቃ ብቻ ነው የሚወስደው። ይህን ከዘለሉት የጣት አሻራዎን በኋላ ላይ በቅንብሮች ውስጥ ማከል ይችላሉ።"</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"እንዴት እንደሚሠራ"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"በጣት አሻራ መክፈቻ እርስዎ መሆንዎን ለማረጋገጥ የጣት አሻራዎ ልዩ ሞዴል ይፈጥራል። በሚቀናበርበት ጊዜ ይህን የጣት አሻራ ሞዴል ለመፍጠር የጣት አሻራዎ ምስሎችን ከተለያዩ ቦታዎች ያነሳሉ።"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"በጣት አሻራ መክፈቻ እነሱ መሆናቸውን ለማረጋገጥ የልጅዎን ጣት አሻራ ልዩ ሞዴል ይፈጥራል። በሚቀናበቀርበት ጊዜ ይህን የጣት አሻራ ሞዴል ለመፍጠር የጣት አሻራቸው ምስሎችን ከተለያዩ ቦታዎች ያነሳሉ።"</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ለምርጥ ውጤቶች ለGoogle የተሰራ የተረጋገጠ የማያ ገፅ መከላከያን ይጠቀሙ። በሌሎች የማያ ገፅ መከላከያዎች አማካኝነት የጣት አሻራዎ ላይሰራ ይችላል።"</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ለምርጥ ውጤቶች ለGoogle የተሰራ የተረጋገጠ የማያ ገጽ መከላከያን ይጠቀሙ። በሌሎች የማያ ገጽ መከላከያዎች አማካኝነት የጣት አሻራዎ ላይሰራ ይችላል።"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ለምርጥ ውጤቶች ለGoogle የተሰራ የተረጋገጠ የማያ ገፅ መከላከያን ይጠቀሙ። በሌሎች የማያ ገፅ መከላከያዎች አማካኝነት የልጅዎ የጣት አሻራ ላይሰራ ይችላል።"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"በእጅ ሰዓት መክፈቻ"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"መሣሪያ በተቆለፈ ቁጥር"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"ማያ ጊዜው ካለቀ በኋላ 5 ደቂቃዎች"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"መሣሪያው እንደገና ከጀመረ ብቻ"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"የግል ቦታን ይደብቁ"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"በሚቆለፍበት ጊዜ የግል ቦታን ይደብቁ"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"ሌሎች ሰዎች በመሣሪያዎ ላይ የግል ቦታ እንዳለዎት እንዳያውቁ ለማስቆም ከመተግበሪያዎችዎ ዝርዝር ውስጥ መደበቅ ይችላሉ"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"ያዋቅሩ"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"የግል ቦታ"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"የግል መተግበሪያዎችን በተለየ ቦታ ይደብቁ ወይም ይቆልፉ። ለተጨማሪ ደህንነት የተለየ የGoogle መለያ ይጠቀሙ።"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"የግል ቦታዎን ያዘጋጁ"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"ለቦታዎ የGoogle መለያ ይምረጡ"</b>\n"የተለየ መለያ መጠቀም የተመሳሰሉ ፋይሎችን፣ ፎቶዎችን እና ኢሜይሎችን ከእርስዎ ቦታ ውጭ እንዳይታዩ ለማድረግ ይረዳል"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"እንዴት እንደሚሠራ"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"ለቦታዎ Google መለያ ይፍጠሩ"</b>\n"የተወሰነ መለያ የሚጠቀሙ ከሆነ የሰመሩ ፋይሎች፣ ፎቶዎች እና ኢሜይሎች ከቦታዎ ውጭ እንዳይታዩ ለማቆም ያግዛል"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"መቆለፊያ ያዘጋጁ"</b>\n"ሌሎች ሰዎች እንዳይከፍቱት ለማድረግ ቦታዎን ይዝጉ"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"መተግበሪያዎችን ይጫኑ"</b>\n"መተግበሪያዎችን በቀላሉ መጫን እንዲችሉ የእርስዎ የግል ቦታ የራሱ የሆነ Play መደብር አለው።"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"በግል ቦታዎ ውስጥ ያሉ መተግበሪያዎች የግል ቦታዎ ሲቆለፍ በፈቃድ አስተዳዳሪ፣ በግላዊነት ዳሽቦርድ እና በሌሎች ቅንብሮች ውስጥ አይታዩም።\n\nየግል ቦታዎ ወደ አዲስ መሣሪያ ወደነበረበት መመለስ አይችልም። የግል ቦታን በሌላ መሣሪያ ላይ መጠቀም ከፈለጉ ሌላ የግል ቦታን ማዋቀር ያስፈልግዎታል።\n\nመሣሪያዎን ከኮምፒውተር ጋር የሚያገናኝ ወይም በመሣሪያዎ ላይ ተንኮል-አዘል መተግበሪያዎችን የሚጭን ማንኛውም ሰው የግል ቦታዎን ሊደርስ ይችላል።"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"መተግበሪያዎችን ይጫኑ"</b>\n"በቦታዎ ውስጥ የግል አድርገው ማቆየት የሚፈልጓቸውን መተግበሪያዎች ይጫኑ"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ከግምት ውስጥ ያስገቡ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"እርስዎ ቦታዎን ሲቆልፉ መተግበሪያዎች ይቆማሉ"</b>\n"ቦታዎን ሲቆልፉ በቦታዎ ውስጥ ያሉ መተግበሪያዎች ይቆማሉ እና እርስዎ ከእነሱ ማሳወቂያዎች አይደርሱዎትም"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ስለግል ቦታ የበለጠ ይወቁ"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ይህ ጥቂት ጊዜ ይወስዳል"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"የግል ቦታን በማዋቀር ላይ…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"ለግል ቦታ ብቻ አዲስ ቁልፍ ማቀናበር፣ ወይም መሣሪያዎን ለመክፈት የሚጠቀሙትን ተመሳሳይ ቁልፍ መጠቀም ይችላሉ"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ማያ ገጽ መቆለፊያን ይጠቀሙ"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"አዲስ ቁልፍ ይምረጡ"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"አንዴ ይቆዩ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"አንድ ሰከንድ ይቆዩ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"ሁሉም ዝግጁ!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"የግል ቦታዎን ለማግኘት፣ ወደ የመተግበሪያዎች ዝርዝርዎ ይሂዱ እና ወደ ታች ይሸብልሉ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"ተከናውኗል"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ለግል ቦታዎ ፒን ያዘጋጁ"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ለግል ቦታዎ የይለፍ ቃል ያዘጋጁ"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ለግል ቦታዎ የሚሆን ስርዓተ ጥለት ያዘጋጁ"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"የእርስዎን ውሂብ የግል ለማድረግ እንዲያግዝ የGoogle መለያ ይፍጠሩ"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"በሚቀጥለው ማያ ገጽ ላይ በግል ቦታዎ ለመጠቀም ወደ መለያ መግባት ይችላሉ"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"ውሂብ ከግል ቦታ ውጭ እንዳይታይ ለማቆም ለማገዝ ለዚህ የተለየ መለያ ይፍጠሩ፣ ለምሳሌ፦"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"የሰመሩ ፎቶዎች፣ ፋይሎች፣ ኢሜይሎች፣ እውቂያዎች፣ የቀን መቁጠሪያ ክስተቶች እና ሌላ ውሂብ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"የመተግበሪያ ማውረድ ታሪክ እና ምክሮች"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"የአሰሳ ታሪክ፣ እልባቶች እና የተቀመጡ የይለፍ ቃላት"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"በግል ቦታ መተግበሪያዎች ውስጥ ካለው እንቅስቃሴዎ ጋር የሚዛመድ የተጠቆመ ይዘት"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"ገባኝ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ቆልፍ"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"ደብቅ"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"እስከ <xliff:g id="COUNT">%d</xliff:g> የሚደርሱ የጣት አሻራዎችን ማከል ይችላሉ"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"የስርዓት የእውቅና ማረጋገጫ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"የእውቅና ማረጋገጫን መሰካት"</string>
<string name="wifi_details_title" msgid="222735438574597493">"የአውታረ መረብ ዝርዝሮች"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ይህ አውታረ መረብ WEP የሚባል የቆየ የደህንነት ፕሮቶኮል ይጠቀማል፣ ይህም ደህንነቱ ያነሰ ነው"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"የንዑስ አውታር ጭንብል"</string>
<string name="server_name_title" msgid="7257095185810299066">"የአገልጋይ ስም"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ዓይነት"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"የመሣሪያ Wi‑Fi ማክ አድራሻ"</string>
<string name="status_bt_address" msgid="6919660304578476547">"የብሉቱዝ አድራሻ"</string>
<string name="status_serial_number" msgid="9060064164331466789">"መለያ ቁጥር"</string>
- <string name="status_up_time" msgid="1274778533719495438">"የቆየበት ሰዓት"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"በሥራ ላይ"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"የተመረተበት ቀን"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ጥቅም ላይ የዋለበት የመጀመሪያ ቀን"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"የዑደት ቁጥር"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ከታች በስተቀኝ መታ"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"ለተጨማሪ አማራጮች የመዳሰሻ ሰሌዳውን የታችኛው ቀኝ ጠርዝ መታ ያድርጉ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"የጠቋሚ ፍጥነት"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"የጠቋሚ ሙሌት ቅጥ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"የጠቋሚ ሙሌት ቅጥን ወደ ጥቁር ይለውጡ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"የጠቋሚ ሙሌት ቅጥን ወደ አረንጓዴ ይለውጡ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"የጠቋሚ ሙሌት ቅጥን ወደ ቢጫ ይለውጡ"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"የጠቋሚ ሙሌት ቅጥን ወደ ሮዝ ይለውጡ"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"የጠቋሚ ሙሌት ቅጥን ወደ ሰማያዊ ይለውጡ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"የመዳሰሻ ሰሌዳ ምልክቶችን ይወቁ"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"የመከታተያ ፓድ፣ የትራክ ፓድ፣ መዳፊት፣ ጠቋሚ፣ ሸብልል፣ ማንሸራተት፣ የቀኝ ጠቅታ፣ ጠቅ ያድርጉ፣ ጠቋሚ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"የቀኝ ጠቅታ፣ መታ ያድርጉ"</string>
@@ -2186,7 +2189,7 @@
<string name="accessibility_button_gesture_footer_learn_more_content_description" msgid="4144803517680297869">"ስለተደራሽነት አዝራር እና ምልክት የበለጠ ይወቁ"</string>
<string name="accessibility_button_intro" msgid="2601976470525277903">"የተደራሽነት አዝራርን መጠቀም። የእጅ ምልክቱ በባለ3-አዝራር ዳሰሳ አይገኝም።"</string>
<string name="accessibility_button_summary" msgid="8510939012631455831">"የተደራሽነት ባህሪያትን በፍጥነት ይድረሱባቸው"</string>
- <string name="accessibility_button_gesture_description" msgid="1141723096904904336">"<b>ለመጀመር</b><br/> {0፣ቁጥር፣ኢንቲጀር}። ወደ የተደራሽነት ቅንብሮች<br/> {1፣ቁጥር፣ኢንቲጀር} ይሂዱ። ባህሪን ይምረጡ እና አቋራጩን<br/> {2፣ቁጥር፣ኢንቲጀር} መታ ያድርጉ። ባህሪውን ለመድረስ አዝራርን ወይም ምልክትን ለመጠቀም ይፈልጉ እንደሆነ ይምረጡ<br/>"</string>
+ <string name="accessibility_button_gesture_description" msgid="1141723096904904336">"<b>ለመጀመር</b><br/> {0,number,integer}። ወደ የተደራሽነት ቅንብሮች<br/> {1,number,integer} ይሂዱ። ባህሪን ይምረጡ እና አቋራጩን<br/> {2,number,integer} መታ ያድርጉ። ባህሪውን ለመድረስ አዝራርን ወይም ምልክትን ለመጠቀም ይፈልጉ እንደሆነ ይምረጡ<br/>"</string>
<string name="accessibility_button_description" msgid="7669538706120092399">"<b>ለመጀመር</b><br/> {0,number,integer}። ወደ የተደራሽነት ቅንብሮች<br/> {1,number,integer} ይሂዱ። ባህሪን ይምረጡ እና አቋራጩን<br/> {2,number,integer} መታ ያድርጉ። ባህሪውን ለመድረስ አዝራሩን ይምረጡ<br/>"</string>
<string name="accessibility_button_or_gesture_title" msgid="3510075963401163529">"አዝራርን ወይም የእጅ ምልክትን ይጠቀሙ"</string>
<string name="accessibility_button_location_title" msgid="7182107846092304942">"አካባቢ"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ምንም}=1{1 መርሐግብር ተቀናብሯል}one{# መርሐግብሮች ተቀናብረዋል}other{# መርሐግብሮች ተቀናብረዋል}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"አይረብሹ"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ቅድሚያ ሁነታዎች"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"በአስፈላጊ ሰዎች እና መተግበሪያዎች ብቻ ማሳወቂያን ያግኙ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"መቆራረጦችን ይገድቡ"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"አትረብሽን አብራ"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"አርትዕ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"መርሐግብሮች"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"መርሐግብር"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"በራስ-ሰር አብራ"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"ቀን መቁጠሪያ ያክሉ"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ቀን መቁጠሪያዎን ይጠቀሙ"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"መርሐግብር"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"መርሐግብር ያቀናብሩ"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"መርሐግብር"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> ሰዓት፣ <xliff:g id="MINUTES">%2$d</xliff:g> ደ"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"መርሐግብር"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"በተወሰኑ ሰዓታት ላይ የስልክ ድምፅ አጥፋ"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"የአትረብሽ ደንቦችን ያቀናብሩ"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"ይህ መተግበሪያ የተሻሻሉ ቅንብሮችን አይደግፍም"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"ተጨማሪ ቅንብሮች"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"በዚህ መተግበሪያ ውስጥ ተጨማሪ ቅንብሮች ይገኛሉ"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"ረጋ ማለት"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"ረጋ ማለትን ይጠቀሙ"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"በአጭር የጊዜ ቆይታ ብዙ ማሳወቂያዎች ሲያገኙ መሣሪያዎ በማያ ገፁ ላይ የድምፅ መቆራረጦች እና ብቅ ባዮችን ያሳንሳል። ጥሪዎች፣ ማንቂያዎች እና የቅድሚያ ውይይቶች አሁንም እንደ መደበኛ ማንቂያ ይሆናሉ እና ሁሉም የደረሱ ማሳወቂያዎች በጥላ ውስጥ ለማግኘት ቀላል ናቸው።"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"የሥራ መገለጫዎች ላይ ይተግብሩ"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ለሥራ መገለጫ መተግበሪያዎች ያመልክቱ"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"የምናባዊ ዕውነታ አጋዥ አገልግሎቶች"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"የተመረጡ መተግበሪያዎች"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ምንም"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ሁሉም"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"መተግበሪያዎች እንዲሽሩ ይፍቀዱ"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"አቋርጠው መግባት የሚችሉ መተግበሪያዎች"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"ተጨማሪ መተግበሪያዎችን ይምረጡ"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{እስከ {time} ድረስ ለአንድ ሰዓት ብቻ ወደ ማንቂያዎች ይለውጡ}one{እስከ {time} ድረስ ለ# ሰዓት ብቻ ወደ ማንቂያዎች ይለውጡ}other{እስከ {time} ድረስ ለ# ሰዓታት ብቻ ወደ ማንቂያዎች ይለውጡ}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"እስከ <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> ድረስ ብቻ ወደ ማንቂያዎች ይቀይሩ"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ወደ ሁልጊዜ አቋርጥ ለውጥ"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"እንደገና ሰይም"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"አዶ ለውጥ"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"አዶ ለውጥ"</string>
<string name="warning_button_text" msgid="1274234338874005639">"ማስጠንቀቂያ"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"ዝጋ"</string>
<string name="device_feedback" msgid="5351614458411688608">"ስለዚህ መሣሪያ ግብረመልስ ላክ"</string>
@@ -4459,7 +4471,7 @@
<string name="credman_picker_title" msgid="8442086614222006564">"ለይለፍ ቃላት፣ የይለፍ ቁልፎች እና ራስ-ሙላ ተመራጭ አገልግሎት"</string>
<string name="credman_confirmation_message_title" msgid="8847900085593880729">"%1$s ይጥፋ?"</string>
<string name="credman_confirmation_message" msgid="2357324543658635239">"<b>ይህ አገልግሎት ይጥፋ?</b> <br/> <br/> እንደ ይለፍ ቃላት፣ ይለፍ ቁልፎች፣ የመክፈያ ዘዴዎች እና ሌሎች መረጃዎች ያለ የተቀመጠ መረጃ በመለያ በሚገቡበት ጊዜ አይሞሉም። የእርስዎን የተቀመጠ መረጃ ለመጠቀም የይለፍ ቃል፣ የይለፍ ቁልፍ ወይም የውሂብ አገልግሎት ይምረጡ።"</string>
- <string name="account_dashboard_title_with_passkeys" msgid="648242372086733541">"የይለፍ ቃላት፣ የይለፍ ቁልፎ እና መለያዎች"</string>
+ <string name="account_dashboard_title_with_passkeys" msgid="648242372086733541">"የይለፍ ቃላት፣ የይለፍ ቁልፎች እና መለያዎች"</string>
<string name="credman_confirmation_message_new_ui" msgid="6126274509951156460">"<b>ሁሉም አገልግሎቶች ይጥፉ?</b> <br/> <br/> ሲገቡ የይለፍ ቃሎች፣ የይለፍ ቁልፎች እና ሌላ የተቀመጡ መረጃዎች ለራስ-ሙላ አይገኙም"</string>
<string name="credman_autofill_confirmation_message_new_ui" msgid="6222139222478822267">"<b>የመረጡትን አገልግሎት ወደዚህ ይለውጡ <xliff:g id=app_name example=Provider>%1$s</xliff:g>?</b> <br/> <br/> አዲስ የይለፍ ቃሎች፣ የይለፍ ቁልፎች እና ሌሎች መረጃዎች ከአሁን በኋላ እዚህ ይቀመጣሉ። <xliff:g id=app_name example=Provider>%1$s</xliff:g> ምን በራስ-ሙላ ሊሆን እንደሚችል ለማወቅ በማያ ገፅዎ ላይ ያለውን ነገር ይጠቀማል።"</string>
<string name="credman_enable_confirmation_message_title" msgid="1037501792652277829">"%1$s ጥቅም ላይ ይዋል?"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ግራ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ቀኝ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"መያዣ"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ባትሪ"</string>
<string name="settings_panel_title" msgid="346363079938069215">"የቅንብሮች ፓነል"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"የዴስክቶፕ ሁነታን አስገድድ"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"በሁለተኛ ማሳያዎች ላይ የሙከራ ዴስክቶፕ ሁነታን አስገድድ"</string>
diff --git a/res/values-ar/arrays.xml b/res/values-ar/arrays.xml
index 31c9970..3855825 100644
--- a/res/values-ar/arrays.xml
+++ b/res/values-ar/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index a7e4eef..62f57be 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"هل تريد قطع الاتصال بالجهاز؟"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"إقران جهاز جديد"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"بلوتوث"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"تفعيل البلوتوث تلقائيًا مرة أخرى غدًا"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"إقران السماعة اليمنى"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"إقران السماعة اليسرى"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"إقران السماعة الأخرى"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"إقران السماعة اليسرى"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"إعدادات سماعات الأذن الطبية"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"الاختصار، التوافق مع السماعات الطبية"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"الإعدادات المسبقة"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"الإعدادات المسبقة"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"تعذَّر تعديل الإعداد المسبق"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"مصدر إخراج الصوت"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"لمحة عن إخراج الصوت"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"إلغاء"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"لا، شكرًا"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"لاحقًا"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"أوافق"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"المزيد"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"فتح القفل باستخدام وجهك"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"تنبيه"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"استخدم بصمة الإصبع لفتح قفل هاتفك أو الموافقة على عمليات الشراء.\n\nملاحظة: لا يمكنك استخدام بصمة الإصبع لفتح قفل هذا الجهاز. للحصول على المزيد من المعلومات، اتصل بمشرف المؤسسة."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"إلغاء"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"لا، شكرًا"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"لاحقًا"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"أوافق"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"هل تريد تخطّي بصمة الإصبع؟"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"لا يستغرق إعداد بصمة الإصبع أكثر من دقيقة أو دقيقتين. إذا تخطّيت هذا الإجراء، يمكنك إضافة بصمة الإصبع لاحقًا من الإعدادات."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"آلية العمل"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"تنشئ ميزة \"فتح الجهاز ببصمة الإصبع\" نموذجًا فريدًا من بصمة إصبعك لإثبات هويتك. لإنشاء نموذج بصمة الإصبع هذا أثناء عملية الإعداد، عليك تسجيل صور لبصمة إصبعك من جهات مختلفة."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"تنشئ ميزة \"فتح الجهاز ببصمة الإصبع\" نموذجًا فريدًا من بصمة إصبع طفلك لإثبات هويته. لإنشاء نموذج بصمة الإصبع هذا أثناء الإعداد، على طفلك تسجيل صور لبصمة إصبعه من جهات مختلفة."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"للحصول على أفضل النتائج، استخدم واقي شاشة مُعتمَدًا ويحمل شعار Made for Google. قد لا تعمل بصمة إصبعك مع واقيات الشاشة الأخرى."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"للحصول على أفضل النتائج، استخدم واقي شاشة مُعتمَد ويحمل شعار Made for Google. قد لا تعمل بصمة إصبعك، مع واقيات الشاشة الأخرى."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"للحصول على أفضل النتائج، استخدم واقي شاشة مُعتمَد ويحمل شعار Made for Google. قد لا تعمل بصمة إصبع طفلك مع واقيات الشاشة الأخرى."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"فتح الهاتف من الساعة"</string>
@@ -557,11 +558,11 @@
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"استخدام ميزة \"فتح الجهاز ببصمة الإصبع\" للمساحة الخاصة"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"استخدام ميزة \"فتح الجهاز بالتعرّف على الوجه\" للمساحة الخاصة"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"فتح القفل باستخدام الوجه وبصمة الإصبع للمساحة الخاصّة"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"ضبط فتح القفل ببصمة الإصبع للمساحة الخاصّة"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"ضبط فتح الجهاز ببصمة الإصبع للمساحة الخاصّة"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"يمكنك استخدام بصمة الإصبع لفتح قفل المساحة الخاصّة أو لإثبات هويتك، مثلاً عند تسجيل الدخول إلى التطبيقات أو الموافقة على عملية شراء"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"يمكن فتح قفل المساحة الخاصّة بدون قصدك، مثلاً عندما يضع أحد الأشخاص الجهاز على إصبعك."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"يمكنك استخدام بصمة إصبعك لفتح قفل المساحة الخاصّة أو الموافقة على عمليات شراء"</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"ضبط فتح القفل بالتعرف على الوجه للمساحة الخاصّة"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"ضبط فتح الجهاز بالتعرف على الوجه للمساحة الخاصّة"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"يمكنك استخدام وجهك لفتح قفل المساحة الخاصّة أو لإثبات هويتك، مثلاً عند تسجيل الدخول إلى التطبيقات أو الموافقة على عملية شراء"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"يمكن أن يؤدي النظر للهاتف إلى فتح قفل المساحة الخاصّة حتى إذا كنت لا تقصد ذلك. يستطيع أيضًا شخص آخر فتح قفل المساحة الخاصّة إذا كان يشبهك بدرجة كبيرة، مثلاً توأم متماثل أو شقيق شديد الشبه، أو إذا قرَّب الشخص الجهاز من وجهك."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"قد يكون استخدام وجهك لفتح قفل المساحة الخاصّة أقل أمانًا من استخدام نقش أو رقم تعريف شخصي قوي أو كلمة مرور قوية"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"في كل مرة يتم فيها قفل الجهاز"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 دقائق بعد انقضاء مهلة غلق الشاشة"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"بعد إعادة تشغيل الجهاز فقط"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"إذا كنت تستخدم طريقة قفل مختلفة للمساحة الخاصة، قد تحتاج إلى إثبات هويتك لفتح التطبيقات في المساحة الخاصة."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"إخفاء المساحة الخاصّة"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"إخفاء المساحة الخاصّة عندما تكون مقفلة"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"إذا أردت ألّا يعرف الآخرون بأنّ لديك مساحة خاصة على جهازك، يمكنك إخفاؤها من قائمة التطبيقات"</string>
@@ -585,7 +585,7 @@
<string name="private_space_search_description" msgid="1538155187658429618">"أدخِل \"المساحة الخاصة\" في شريط البحث"</string>
<string name="private_space_tap_tile_description" msgid="6173556870938267361">"انقر على "<b>"المساحة الخاصة"</b></string>
<string name="private_space_unlock_description" msgid="5527228922778630361">"افتح قفل مساحتك الخاصة"</string>
- <string name="private_space_hide_off_summary" msgid="8565973976602078315">"غير مفعَّلة"</string>
+ <string name="private_space_hide_off_summary" msgid="8565973976602078315">"الميزة غير مفعَّلة"</string>
<string name="private_space_hide_on_summary" msgid="3450844101901438867">"مفعَّلة"</string>
<string name="private_space_hide_dialog_title" msgid="6439207708506990156">"سيتم إخفاء المساحة الخاصة عند قفلها في المرة القادمة"</string>
<string name="private_space_hide_dialog_message" msgid="618693520130744836">"للوصول إلى المساحة الخاصة، أدخِل \"المساحة الخاصة\" في شريط بحث قائمة التطبيقات."</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"إعداد"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"المساحة الخاصة"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"يمكنك إخفاء التطبيقات الخاصة أو قفلها في مساحة منفصلة. ولمزيد من الأمان، استخدِم حساب Google مخصَّصًا."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"ضبط إعدادات مساحتك الخاصة"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548">""<b>"اختيار حساب Google لمساحتك الخاصة"</b>\n"يساعد استخدام حساب مخصَّص في إيقاف ظهور الملفات والصور والرسائل الإلكترونية المتزامنة خارج مساحتك الخاصة"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"طريقة العمل"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320">""<b>"إنشاء حساب Google لمساحتك الخاصّة"</b>\n"يساعد استخدام حساب مخصَّص للمساحة الخاصّة في منع الملفات والصور والرسائل الإلكترونية التي تتم مزامنتها من الظهور خارج مساحتك الخاصّة"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ضبط قفل"</b>\n"يمكنك قفل مساحتك الخاصة لمنع غيرك من فتحها"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498">""<b>"تثبيت التطبيقات"</b>\n"تحتوي مساحتك الخاصة على \"متجر Play\" خاص بها حتى تتمكّن من تثبيت التطبيقات بسهولة."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"إنّ التطبيقات في المساحة الخاصّة لن تظهر ضِمن \"إدارة الأذونات\" أو \"لوحة بيانات الخصوصية\" أو الإعدادات الأخرى إذا كانت المساحة الخاصّة مقفلة.\n\nلا يمكن استعادة المساحة الخاصّة إلى جهاز جديد. إذا أردت استخدام مساحة خاصّة على جهاز آخر، عليك إعدادها على ذلك الجهاز.\n\nإذا ربطَ أحد المستخدمين جهازك بجهاز كمبيوتر أو ثبَّت تطبيقات ضارة عليه، قد يستطيع هذا المستخدم الوصول إلى المساحة الخاصّة."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"تثبيت التطبيقات"</b>\n"بإمكانك تثبيت التطبيقات التي تريد الحفاظ على خصوصيتها في مساحتك الخاصّة"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ملاحظة"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"تتوقّف التطبيقات عند قفل المساحة الخاصّة"</b>\n"عند قفل مساحتك الخاصّة، يتم إيقاف التطبيقات المدرَجة فيها ولن يصلك منها أي إشعار"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"مزيد من المعلومات حول المساحة الخاصة"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"سيستغرق هذا الإجراء بضع لحظات"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"جارٍ إعداد المساحة الخاصة…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"يمكنك ضبط طريقة جديدة لقفل المساحة الخاصة أو استخدام القفل نفسه المستخدَم لفتح قفل الجهاز"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"استخدام قفل الشاشة"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"اختيار قفل جديد"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"يُرجى الانتظار قليلاً…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"يُرجى الانتظار قليلاً…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"اكتملت عملية الإعداد"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"للعثور على المساحة الخاصة، انتقِل إلى قائمة التطبيقات ثم مرِّر سريعًا للأسفل"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"تم"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ضبط رقم تعريف شخصي للمساحة الخاصّة"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ضبط كلمة مرور للمساحة الخاصّة"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ضبط نقش للمساحة الخاصّة"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"إنشاء حساب Google للمساعدة في الحفاظ على خصوصية بياناتك"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"في الشاشة التالية، يمكنك تسجيل الدخول إلى أحد الحسابات لاستخدامه في المساحة الخاصّة"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"إنشاء حساب مخصّص للمساعدة في منع ظهور البيانات خارج المساحة الخاصّة، مثل:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"الصور والملفات والرسائل الإلكترونية وجهات الاتصال وأحداث التقويم والبيانات الأخرى التي تمت مزامنتها"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"الاقتراحات وسجلّ تنزيل التطبيقات"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"سجلّ التصفُّح والإشارات المرجعية وكلمات المرور المحفوظة"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"المحتوى المقترَح بناءً على نشاطك في تطبيقات المساحة الخاصّة"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"حسنًا"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"قفل"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"إخفاء"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"يمكنك إضافة ما يصل إلى <xliff:g id="COUNT">%d</xliff:g> بصمات إصبع"</string>
@@ -669,7 +666,7 @@
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"اختيار الطريقة الاحتياطية لقفل الشاشة"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"إذا نسيت قفل شاشة هاتفك، لن يتمكَّن مشرف تكنولوجيا المعلومات من إعادة ضبطه لك."</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"اضبِط قفل شاشة منفصلاً لتطبيقات العمل."</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"لإعادة ضبط هذا القفل، يجب طلب المساعدة من المشرف الإداري لتقنية المعلومات"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"لإعادة ضبط هذا القفل في حال نسيانه، يجب طلب المساعدة من مشرف تقنية المعلومات"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"خيارات قفل الشاشة"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"خيارات قفل الشاشة"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"التأكيد التلقائي لفتح القفل"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"شهادة النظام"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"تثبيت الشهادة"</string>
<string name="wifi_details_title" msgid="222735438574597493">"تفاصيل الشبكة"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"تستخدِم هذه الشبكة بروتوكولاً أمنيًا قديمًا يُسمى \"الخصوصية المكافئة للشبكات السلكية\" (WEP)، وهو يوفِّر مستوى أمان أقل"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"قناع الشبكة الفرعية"</string>
<string name="server_name_title" msgid="7257095185810299066">"اسم الخادم"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"النوع"</string>
@@ -1203,7 +1201,7 @@
<string name="disable_game_default_frame_rate_title" msgid="3712908601744143753">"إيقاف عدد اللقطات في الثانية التلقائي"</string>
<string name="disable_game_default_frame_rate_summary" msgid="4436762704707434225">"إيقاف الحدّ من عدد اللقطات الأقصى في الثانية للألعاب عند <xliff:g id="FRAME_RATE">%1$d</xliff:g> هرتز."</string>
<string name="peak_refresh_rate_title" msgid="2056355754210341011">"العرض السلس"</string>
- <string name="peak_refresh_rate_summary" msgid="3212309985294885790">"تعمل هذه الميزة على رفع معدّل التحديث في الشاشة إلى <xliff:g id="ID_1">%1$d</xliff:g> هرتز لبعض أنواع المحتوى، علمًا بأنّ ذلك يؤدي زيادة استخدام البطارية."</string>
+ <string name="peak_refresh_rate_summary" msgid="3212309985294885790">"زيادة معدّل التحديث في الشاشة إلى <xliff:g id="ID_1">%1$d</xliff:g> هرتز لبعض أنواع المحتوى، علمًا بأنّ ذلك يزيد استهلاك طاقة البطارية"</string>
<string name="force_high_refresh_rate_toggle" msgid="3325789621928312050">"فرض معدل إعادة التحميل الأقصى"</string>
<string name="force_high_refresh_rate_desc" msgid="7794566420873814875">"أعلى معدل إعادة تحميل لتحسين استجابة اللمس وجودة الصور المتحركة. يؤدي هذا إلى زيادة استخدام البطارية."</string>
<string name="adaptive_sleep_title" msgid="2987961991423539233">"استعراض الشاشة"</string>
@@ -1231,7 +1229,7 @@
<string name="night_display_temperature_title" msgid="857248782470764263">"الكثافة"</string>
<string name="night_display_summary_off_auto_mode_never" msgid="7406899634169354142">"لن يتم تفعيل الميزة تلقائيًا على الإطلاق"</string>
<string name="night_display_summary_off_auto_mode_custom" msgid="6667008039080687931">"سيتم التفعيل تلقائيًا في <xliff:g id="ID_1">%1$s</xliff:g>"</string>
- <string name="night_display_summary_off_auto_mode_twilight" msgid="3669132200611324994">"سيتم التفعيل تلقائيًا عند غروب الشمس."</string>
+ <string name="night_display_summary_off_auto_mode_twilight" msgid="3669132200611324994">"التفعيل تلقائيًا عند غروب الشمس"</string>
<string name="night_display_summary_on_auto_mode_never" msgid="832333009202889350">"لن يتم الإيقاف بشكل تلقائي مطلقًا"</string>
<string name="night_display_summary_on_auto_mode_custom" msgid="2096677025343425755">"سيتم الإيقاف تلقائيًا عند الساعة <xliff:g id="ID_1">%1$s</xliff:g>"</string>
<string name="night_display_summary_on_auto_mode_twilight" msgid="8070517472000680361">"سيتم الإيقاف تلقائيًا عند شروق الشمس"</string>
@@ -1250,7 +1248,7 @@
<string name="dark_ui_auto_mode_custom_bedtime" msgid="8465023741946439266">"التفعيل عند حلول وقت النوم"</string>
<string name="dark_ui_status_title" msgid="3505119141437774329">"الحالة"</string>
<string name="dark_ui_summary_off_auto_mode_never" msgid="5828281549475697398">"لن يتم مطلقًا تفعيل الوضع تلقائيًا"</string>
- <string name="dark_ui_summary_off_auto_mode_auto" msgid="6766831395970887213">"سيتم التفعيل تلقائيًا عند غروب الشمس."</string>
+ <string name="dark_ui_summary_off_auto_mode_auto" msgid="6766831395970887213">"التفعيل تلقائيًا عند غروب الشمس"</string>
<string name="dark_ui_summary_off_auto_mode_custom" msgid="1345906088326708376">"سيتم تفعيل الإعداد تلقائيًا في <xliff:g id="ID_1">%1$s</xliff:g>."</string>
<string name="dark_ui_summary_off_auto_mode_custom_bedtime" msgid="7759826673214624622">"سيتم تفعيله تلقائيًا عند حلول وقت النوم."</string>
<string name="dark_ui_summary_on_auto_mode_never" msgid="2468597062391435521">"لن يتم الإيقاف بشكل تلقائي مطلقًا"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"عنوان MAC للجهاز على شبكة Wi‑Fi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"عنوان البلوتوث"</string>
<string name="status_serial_number" msgid="9060064164331466789">"الرقم التسلسلي"</string>
- <string name="status_up_time" msgid="1274778533719495438">"وقت التشغيل"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"مدة التشغيل"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"تاريخ التصنيع"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"تاريخ أول استخدام"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"عدد مرات تفريغ البطارية وشحنها"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"النقر في أسفل يمين لوحة اللمس"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"انقر أسفل يسار لوحة اللمس للحصول على مزيد من الخيارات."</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"سرعة المؤشر"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"نمط منتصف المؤشر"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"تغيير نمط منتصف المؤشر إلى الأسود"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"تغيير نمط منتصف المؤشر إلى الأخضر"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"تغيير نمط منتصف المؤشر إلى الأصفر"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"تغيير نمط منتصف المؤشر إلى الوردي"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"تغيير نمط منتصف المؤشر إلى الأزرق"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"التعرّف على إيماءات لوحة اللمس"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"لوحة اللمس، لوحة لمس، ماوس، مؤشر، الانتقال للأسفل أو للأعلى، تمرير سريع، النقر بزر الماوس الأيمن، نقرة، مؤشر"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"النقر بزر الماوس الأيمن، النقر"</string>
@@ -2584,7 +2588,7 @@
<string name="battery_saver_turn_on_summary" msgid="1433919417587171160">"إطالة عمر البطارية"</string>
<string name="battery_saver_sticky_title_new" msgid="5942813274115684599">"إيقاف الميزة عندما يكون الجهاز مشحونًا"</string>
<string name="battery_saver_sticky_title_percentage" msgid="1178162022087559148">"إيقاف شحن البطارية عند <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
- <string name="battery_saver_sticky_description_new" msgid="8543277078136947874">"تتوقف ميزة \"توفير شحن البطارية\" عندما تتخطى نسبة شحن البطارية <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
+ <string name="battery_saver_sticky_description_new" msgid="8543277078136947874">"إيقاف ميزة \"توفير شحن البطارية\" عندما تتخطى نسبة شحن البطارية <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
<!-- no translation found for battery_saver_seekbar_title (3712266470054006641) -->
<skip />
<string name="battery_saver_seekbar_title_placeholder" msgid="7141264642540687540">"تفعيل"</string>
@@ -2702,7 +2706,7 @@
<string name="cellular_security_settings_title" msgid="7779141923670352595">"أمان شبكة الجوّال"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"الإشعارات"</string>
<string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"إشعارات الشبكة"</string>
- <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"يمكنك تلقّي إشعارات عندما يتصل جهازك بشبكة غير مشفَّرة أو عندما ترصد شبكة أرقام التعريف الفريدة للجهاز أو شريحة SIM"</string>
+ <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"تلقّي إشعارات عندما يتصل جهازك بشبكة غير مشفَّرة أو عندما ترصد شبكة أرقام التعريف الفريدة للجهاز أو شريحة SIM"</string>
<string name="cellular_security_settings_encryption_title" msgid="4013084091666375780">"التشفير"</string>
<string name="cellular_security_network_generations_title" msgid="2343026988833783854">"أجيال الشبكات"</string>
<string name="cellular_security_network_generations_summary" msgid="139087814553929402">"يمكنك ضبط كل شريحة SIM مثبَّتة على الاتصال فقط بشبكات الجيل الثالث والرابع والخامس. لن تتصل شريحة SIM بشبكات الجيل الثاني القديمة وغير الآمنة. قد يحدّ هذا الإعداد من إمكانية اتصالك إذا كانت الشبكة الوحيدة المتوفّرة من الجيل الثاني. وقد يتم استخدام شبكات الجيل الثاني في حالات الطوارئ."</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ما من جداول زمنية}=1{تم ضبط جدول زمني واحد}two{تم ضبط جدولين زمنيين}few{تم ضبط # جداول زمنية}many{تم ضبط # جدولاً زمنيًا}other{تم ضبط # جدول زمني}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"وضع \"عدم الإزعاج\""</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"الأوضاع ذات الأولوية"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"ستصلك الإشعارات من الأشخاص المهمّين والتطبيقات المهمّة فقط"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"الحد من المقاطعات"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"تفعيل ميزة \"عدم الإزعاج\""</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"إضافة تقويم"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"استخدام التقويم"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"وفقًا للجدول الزمني"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"ضبط جدول زمني"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"الجدول الزمني"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> ساعة و<xliff:g id="MINUTES">%2$d</xliff:g> دقيقة"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"الجدول الزمني"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"كتم صوت الهاتف في أوقات معيّنة"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"تعيين قواعد عدم الإزعاج"</string>
@@ -3445,7 +3454,7 @@
<string name="work_sync_dialog_yes" msgid="5785488304957707534">"تأكيد"</string>
<string name="work_sync_dialog_message" msgid="5066178064994040223">"سيستخدم ملفك الشخصي للعمل الأصوات نفسها التي يستخدمها ملفك الشخصي."</string>
<string name="configure_notification_settings" msgid="1492820231694314376">"الإشعارات"</string>
- <string name="notification_dashboard_summary" msgid="7530169251902320652">"سجلّ الإشعارات والمحادثات"</string>
+ <string name="notification_dashboard_summary" msgid="7530169251902320652">"سجلّ الإشعارات، والمحادثات"</string>
<string name="conversation_notifs_category" msgid="2549844862379963273">"المحادثة"</string>
<string name="general_notification_header" msgid="3669031068980713359">"إدارة"</string>
<string name="app_notification_field" msgid="3208079070539894909">"إشعارات التطبيق"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"لا يتوافق هذا التطبيق مع الإعدادات المحسَّنة."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"إعدادات إضافية"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"تتوفّر إعدادات إضافية داخل التطبيق."</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"تخفيض الإشعارات الصوتية والاهتزاز"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"استخدام إعداد تخفيض الإشعارات الصوتية والاهتزاز"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"عندما تصلك العديد من الإشعارات في فترة زمنية قصيرة، سيقلِّل جهازك إلى أدنى حد المقاطعات الصوتية والإشعارات المنبثقة على الشاشة. وستتلقّى تنبيهات بشأن المكالمات والمنبهات والمحادثات ذات الأولوية كالمعتاد، ويمكن العثور على الإشعارات المستَلمة بسهولة في \"مركز الإشعارات\"."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"التطبيق على ملفات العمل"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"يسري على تطبيقات ملف العمل"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"خدمات تحسّن تجربة الواقع الافتراضي"</string>
@@ -3664,7 +3676,7 @@
<string name="app_notification_fsi_permission_summary" msgid="7673487977631068039">"السماح بعرض الإشعارات بملء الشاشة عندما يكون الجهاز مقفلاً"</string>
<string name="notification_badge_title" msgid="6854537463548411313">"السماح بنقطة الإشعار"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"إظهار نقطة الإشعار"</string>
- <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"إلغاء وضع \"عدم الإزعاج\""</string>
+ <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"تجاوز وضع \"عدم الإزعاج\""</string>
<string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"السماح لهذه الإشعارات بمقاطعتك عندما يكون وضع \"عدم الإزعاج\" مفعلاً"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"شاشة القفل"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"تم"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"التطبيقات المحدَّدة"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ما مِن تطبيقات"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"كل التطبيقات"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"السماح للتطبيقات بإلغاء وضع \"عدم الإزعاج\""</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"التطبيقات التي يمكنها مقاطعة عمل الميزة"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"اختيار مزيد من التطبيقات"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{التغيير إلى التنبيهات لمدة ساعة واحدة فقط حتى {time}}zero{التغيير إلى التنبيهات لمدة # ساعة فقط حتى {time}}two{التغيير إلى التنبيهات لمدة ساعتَين فقط حتى {time}}few{التغيير إلى التنبيهات لمدة # ساعات فقط حتى {time}}many{التغيير إلى التنبيهات لمدة # ساعة فقط حتى {time}}other{التغيير إلى التنبيهات لمدة # ساعة فقط حتى {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"التغيير إلى التنبيهات فقط حتى <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"تغيير إلى المقاطعة دائمًا"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"إعادة التسمية"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"تغيير الرمز"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"تغيير الرمز"</string>
<string name="warning_button_text" msgid="1274234338874005639">"تحذير"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"إغلاق"</string>
<string name="device_feedback" msgid="5351614458411688608">"إرسال ملاحظات حول هذا الجهاز"</string>
@@ -3970,7 +3987,7 @@
<string name="assist_access_screenshot_summary" msgid="5276593070956201863">"السماح للتطبيق المساعد بالوصول إلى صورة للشاشة"</string>
<string name="assist_flash_title" msgid="5449512572885550108">"إظهار وميض على الشاشة"</string>
<string name="assist_flash_summary" msgid="3032289860177784594">"إظهار وميض على حدود الشاشة عند وصول التطبيق المساعد إلى النص من الشاشة أو لقطة الشاشة"</string>
- <string name="assist_footer" msgid="8248015363806299068">"بإمكان التطبيقات المساعِدة مساعدك استنادًا إلى المعلومات التي تظهر على شاشتك. وتعمل بعض التطبيقات مع كل من خدمة المشغّل وخدمة الإدخال الصوتي لتوفير مساعدة متكاملة لك."</string>
+ <string name="assist_footer" msgid="8248015363806299068">"بإمكان التطبيقات المساعِدة مساعدتك استنادًا إلى المعلومات التي تظهر على شاشتك. وتعمل بعض التطبيقات مع كل من خدمة المشغّل وخدمة الإدخال الصوتي لتوفير مساعدة متكاملة لك."</string>
<string name="average_memory_use" msgid="717313706368825388">"متوسط استخدام الذاكرة"</string>
<string name="maximum_memory_use" msgid="2171779724001152933">"الاستخدام الأقصى للذاكرة"</string>
<string name="memory_usage" msgid="5594133403819880617">"استخدام الذاكرة"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"جهاز البلوتوث الأيسر"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"جهاز البلوتوث الأيمن"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"الحافظة"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"البطارية"</string>
<string name="settings_panel_title" msgid="346363079938069215">"لوحة الإعدادات"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"فرض وضع سطح المكتب"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"فرض وضع سطح المكتب التجريبي على شاشات العرض الثانوية"</string>
@@ -4840,23 +4858,23 @@
<string name="track_frame_time_keywords" msgid="7885340257945922239">"وحدة معالجة الرسومات"</string>
<string name="enable_16k_pages" msgid="8001470927566110689">"التشغيل مع صفحات حجمها 16 كيلوبايت"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"التشغيل بنواة متوافقة مع صفحات حجمها 16 كيلوبايت"</string>
- <string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"التبديل من الوضع 4 كيلوبايت إلى الوضع 16 كيلوبايت"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"جهازك حاليًا في الوضع غير المستند إلى حجم الصفحة، ويستخدم نواة متوافقة مع الصفحات بحجم 4 كيلوبايت. أنت بصدد التبديل إلى الوضع الذي يستخدم صفحات بحجم 16 كيلوبايت. وفي هذا الوضع، لا يمكن ضمان صحة بيانات البرامج. وفي حال فتح برنامج الإقلاع، قد تصبح البيانات المخزَّنة على الهاتف معرَّضة للخطر. سيؤدي هذا الإجراء إلى إعادة تشغيل الجهاز. وسيتم إيقاف بعض الميزات في هذين الوضعين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة الجهاز إلى وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع 4 كيلوبايت وقفل برنامج الإقلاع، وسيؤدي ذلك إلى إعادة ضبط الجهاز على الإعدادات الأصلية. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف ميزة \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\"."</string>
+ <string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"التبديل من الوضع ٤ كيلوبايت إلى الوضع ١٦ كيلوبايت"</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"جهازك حاليًا في الوضع غير المستند إلى حجم الصفحة، ويستخدم نواة متوافقة مع الصفحات بحجم ٤ كيلوبايت. أنت بصدد التبديل إلى الوضع الذي يستخدم صفحات بحجم ١٦ كيلوبايت. وفي هذا الوضع، لا يمكن ضمان صحة بيانات البرامج. وفي حال فتح برنامج الإقلاع، قد تصبح البيانات المخزَّنة على الهاتف معرَّضة للخطر. سيؤدي هذا الإجراء إلى إعادة تشغيل الجهاز. وسيتم إيقاف بعض الميزات في هذين الوضعين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة الجهاز إلى وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع ٤ كيلوبايت وقفل برنامج الإقلاع، وسيؤدي ذلك إلى إعادة ضبط الجهاز على الإعدادات الأصلية. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف ميزة \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\"."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"التبديل من الوضع 16 كيلوبايت إلى الوضع 4 كيلوبايت"</string>
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"يُرجى العلم بأنَّ جهازك حاليًا في الوضع غير المستند إلى حجم الصفحة، ويستخدم نواة متوافقة مع الصفحات بحجم 16 كيلوبايت، وأنت بصدد التبديل إلى الوضع الذي يستخدم صفحات بحجم 4 كيلوبايت. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيؤدي هذا الإجراء إلى إعادة تشغيل جهازك. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة الجهاز إلى وضع الإنتاج، عليك قفل برنامج الإقلاع، وسيؤدي ذلك إلى إعادة ضبط الجهاز على الإعدادات الأصلية. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف الإعداد \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\"."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"تعذَّر تحديث النواة إلى إصدار متوافق مع الصفحات التي حجمها 16 كيلوبايت."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"جارٍ تطبيق التغييرات"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"هل تريد إعادة تنسيق بيانات الجهاز إلى ext4؟ (مطلوب للوضع 16 كيلوبايت)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"يجب تحويل قسم البيانات في هذا الجهاز إلى نظام الملفات ext4 لتتمكّن من استخدام الوضع 16 كيلوبايت ضِمن خيارات المطوِّرين. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. لتفعيل الخيار 16 كيلوبايت، يجب إعادة تشغيل الجهاز مرة أخرى بعد ذلك. بعد تفعيل هذا الوضع، يمكنك التبديل بين الوضعَين 4 كيلوبايت و16 كيلوبايت من خلال إعادة تشغيل الجهاز لمرّة واحدة. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة الجهاز إلى وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع 4 كيلوبايت وقفل برنامج الإقلاع، وسيؤدي ذلك إلى إعادة ضبط الجهاز على الإعدادات الأصلية. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف الإعداد \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\". بعد التأكيد، سيتم حجب بيانات الجهاز وتغيير نظام الملفات إلى ext4. بعد إتمام هذه الخطوات، يُرجى إعادة تفعيل الوضع 16 كيلوبايت."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"هل تريد إعادة تنسيق بيانات الجهاز إلى ext4؟ (مطلوب للوضع ١٦ كيلوبايت)"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"يجب تحويل قسم البيانات في هذا الجهاز إلى نظام الملفات ext4 لتتمكّن من استخدام الوضع ١٦ كيلوبايت ضِمن خيارات المطوِّرين. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. لتفعيل الخيار ١٦ كيلوبايت، يجب إعادة تشغيل الجهاز مرة أخرى بعد ذلك. بعد تفعيل هذا الوضع، يمكنك التبديل بين الوضعَين ٤ كيلوبايت و١٦ كيلوبايت من خلال إعادة تشغيل الجهاز لمرّة واحدة. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة الجهاز إلى وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع ٤ كيلوبايت وقفل برنامج الإقلاع، وسيؤدي ذلك إلى إعادة ضبط الجهاز على الإعدادات الأصلية. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف الإعداد \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\". بعد التأكيد، سيتم حجب بيانات الجهاز وتغيير نظام الملفات إلى ext4. بعد إتمام هذه الخطوات، يُرجى إعادة تفعيل الوضع ١٦ كيلوبايت."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"محو جميع البيانات"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"تعذَّر حجب قسم البيانات وإعادة تنسيقه إلى ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"يجب فتح قفل برنامج الإقلاع لتفعيل الوضع 16 كيلوبايت"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"يجب فتح قفل برنامج الإقلاع على هذا الجهاز قبل استخدام الوضع 16 كيلوبايت ضِمن خيارات المطوِّرين. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. وعند تفعيل الوضع 16 كيلوبايت، سيتم حجب كل بيانات المستخدم وإعداداته. بعد فتح قفل برنامج الإقلاع، سيكون عليك إعادة تشغيل الجهاز مرّتين لتفعيل الخيار 16 كيلوبايت. بعد تفعيل هذا الوضع، يمكنك التبديل بين الوضعَين 4 كيلوبايت و16 كيلوبايت من خلال إعادة تشغيل الجهاز لمرّة واحدة. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة الجهاز إلى وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع 4 كيلوبايت وقفل برنامج الإقلاع أو إعدادات المصنّع الأصلي للجهاز، وسيؤدي ذلك إلى إعادة ضبط الجهاز على الإعدادات الأصلية. يُرجى فتح قفل برنامج الإقلاع ثم إعادة المحاولة. يمكنك الاطّلاع على تعليمات حول كيفية تنفيذ هذا الإجراء من خلال الانتقال إلى: <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"استخدام الوضع 4 كيلوبايت غير المستند إلى حجم الصفحة"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"جهازك الآن في الوضع 4 كيلوبايت ضِمن الوضع غير المستند إلى حجم الصفحة. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة تفعيل وضع الإنتاج، عليك قفل برنامج إقلاع الجهاز. انقر لقراءة المزيد."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"جهازك الآن في الوضع 4 كيلوبايت ضِمن الوضع غير المستند إلى حجم الصفحة. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة تفعيل وضع الإنتاج، عليك قفل برنامج إقلاع الجهاز. سيؤدي هذا الإجراء إلى إعادة ضبط الجهاز على الإعدادات الأصلية لوضع الإنتاج. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف الإعداد \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\". إذا تعذَّر تشغيل نظام Android أو كان يعمل بشكل غير مستقر، عليك إعادة تثبيت أحدث نسخ برامج الجهة المصنِّعة من خلال <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> أو <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>، وتحديد الخيارات التالية: \"حجب بيانات الجهاز\" (Wipe Device)، و\"قفل برنامج الإقلاع\" (Lock Bootloader)، و\"فرض تثبيت البيانات في جميع الأقسام\" (Force Flash all partitions)."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"استخدام الوضع 16 كيلوبايت غير المستند إلى حجم الصفحة"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"جهازك الآن في الوضع 16 كيلوبايت ضِمن الوضع غير المستند إلى حجم الصفحة. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة تفعيل وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع 4 كيلوبايت وقفل برنامج الإقلاع. انقر لقراءة المزيد."</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"استخدام الوضع ٤ كيلوبايت غير المستند إلى حجم الصفحة"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"جهازك الآن في الوضع ٤ كيلوبايت ضِمن الوضع غير المستند إلى حجم الصفحة. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة تفعيل وضع الإنتاج، عليك قفل برنامج إقلاع الجهاز. انقر لقراءة المزيد."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"جهازك الآن في الوضع ٤ كيلوبايت ضِمن الوضع غير المستند إلى حجم الصفحة. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة تفعيل وضع الإنتاج، عليك قفل برنامج إقلاع الجهاز. سيؤدي هذا الإجراء إلى إعادة ضبط الجهاز على الإعدادات الأصلية لوضع الإنتاج. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف الإعداد \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\". إذا تعذَّر تشغيل نظام Android أو كان يعمل بشكل غير مستقر، عليك إعادة تثبيت أحدث نسخ برامج الجهة المصنِّعة من خلال <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> أو <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>، وتحديد الخيارات التالية: \"حجب بيانات الجهاز\" (Wipe Device)، و\"قفل برنامج الإقلاع\" (Lock Bootloader)، و\"فرض تثبيت البيانات في جميع الأقسام\" (Force Flash all partitions)."</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"استخدام الوضع ١٦ كيلوبايت غير المستند إلى حجم الصفحة"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"جهازك الآن في الوضع ١٦ كيلوبايت ضِمن الوضع غير المستند إلى حجم الصفحة. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة تفعيل وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع ٤ كيلوبايت وقفل برنامج الإقلاع. انقر لقراءة المزيد."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"جهازك الآن في الوضع 16 كيلوبايت ضِمن الوضع غير المستند إلى حجم الصفحة. وفي هذا الوضع، لا يمكن ضمان سلامة برنامج النظام. وعندما يكون برنامج الإقلاع غير مقفل، قد تصبح بياناتك المخزَّنة على الهاتف معرَّضة للخطر. سيتم إيقاف بعض الميزات في هذَين الوضعَين، وبالتالي قد لا تعمل بعض التطبيقات. لإعادة تفعيل وضع الإنتاج، عليك التبديل مرة أخرى إلى الوضع 4 كيلوبايت وقفل برنامج الإقلاع. سيؤدي هذا الإجراء إلى إعادة ضبط الجهاز على الإعدادات الأصلية لوضع الإنتاج. بعد تشغيل نظام Android على الجهاز بنجاح، أوقِف الإعداد \"فتح قفل المصنّع الأصلي للجهاز\" ضِمن \"خيارات المطوّرين\". إذا تعذَّر تشغيل نظام Android أو كان يعمل بشكل غير مستقر، عليك إعادة تثبيت أحدث نسخ برامج الجهة المصنِّعة من خلال <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> أو <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>، وتحديد الخيارات التالية: \"حجب بيانات الجهاز\" (Wipe Device)، و\"قفل برنامج الإقلاع\" (Lock Bootloader)، و\"فرض تثبيت البيانات في جميع الأقسام\" (Force Flash all partitions)."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"الوضع 16 كيلوبايت غير المستند إلى حجم الصفحة"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"قراءة المزيد"</string>
@@ -5019,7 +5037,7 @@
<string name="enable_2g_summary" msgid="2794534052372565914">"شبكة الجيل الثاني أقل أمانًا، ولكن قد تحسِّن الاتصال بالإنترنت في بعض المواقع الجغرافية. يُسمح باستخدام شبكة الجيل الثاني دائمًا لمكالمات الطوارئ."</string>
<string name="enable_2g_summary_disabled_carrier" msgid="8141118453219482762">"يطلب مشغّل شبكة الجوال <xliff:g id="CARRIER_NAME_2G">%1$s</xliff:g> توفّر شبكة الجيل الثاني"</string>
<string name="require_cellular_encryption_title" msgid="6087085031703089235">"السماح بالشبكات المشفَّرة فقط"</string>
- <string name="require_cellular_encryption_summary" msgid="6090569065420631457">"سيكون هذا الإجراء أكثر أمانًا، ولكن قد يؤدي إلى الحد من إمكانية الاتصال بشبكة الجوّال في بعض المواقع الجغرافية. ويُسمح بإجراء مكالمات الطوارئ دائمًا."</string>
+ <string name="require_cellular_encryption_summary" msgid="6090569065420631457">"إجراء أكثر أمانًا، ولكن قد يؤدي إلى الحد من إمكانية الاتصال بشبكة الجوّال في بعض المواقع الجغرافية، ويُسمح بإجراء مكالمات الطوارئ دائمًا"</string>
<string name="app_info_all_services_label" msgid="1487070364839071105">"جميع الخدمات"</string>
<string name="show_clip_access_notification" msgid="7782300987639778542">"إظهار الوصول إلى الحافظة"</string>
<string name="show_clip_access_notification_summary" msgid="474090757777203207">"إظهار رسالة عندما يصل التطبيق إلى نص أو صور أو محتوى آخر تم نسخه."</string>
@@ -5305,7 +5323,7 @@
<string name="audio_streams_qr_code_scanner" msgid="525396804963685478">"لبدء الاستماع، امسَح ضوئيًا رمز الاستجابة السريعة التالي."</string>
<string name="audio_streams_add_source_bad_code_state_summary" msgid="6527086906921868757">"يُرجى التأكد من كلمة المرور وإعادة المحاولة"</string>
<string name="audio_streams_add_source_failed_state_summary" msgid="3937546443978562322">"يتعذّر الربط بالجهاز. يُرجى إعادة المحاولة."</string>
- <string name="audio_streams_connecting_summary" msgid="7237827765572331702">"جارٍ الاتصال…"</string>
+ <string name="audio_streams_connecting_summary" msgid="7237827765572331702">"جارٍ التوصيل…"</string>
<string name="audio_streams_dialog_stream_is_not_available" msgid="4032878851270690546">"البث الصوتي غير متوفّر"</string>
<string name="audio_streams_is_not_playing" msgid="8480293894696007941">"ما مِن محتوى في هذا البث الصوتي"</string>
<string name="audio_streams_dialog_close" msgid="8177201719298408431">"إغلاق"</string>
diff --git a/res/values-as/arrays.xml b/res/values-as/arrays.xml
index c414563..950ac71 100644
--- a/res/values-as/arrays.xml
+++ b/res/values-as/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index 4c768c3..e9a8648 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ডিভাইচৰ সংযোগ বিছিন্ন কৰিবনে?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"নতুন ডিভাইচ পেয়াৰ কৰক"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ব্লুটুথ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"কাইলৈ পুনৰ স্বয়ংক্ৰিয়ভাৱে অন কৰক"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"সোঁ কাণখন পেয়াৰ কৰক"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"বাওঁ কাণখন পেয়াৰ কৰক"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"নিজৰ অন্য কাণখন পেয়াৰ কৰক"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"বাওঁ কাণখন পেয়াৰ কৰক"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"শুনাৰ ডিভাইচৰ ছেটিং"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"শ্বৰ্টকাট, শ্ৰৱণ যন্ত্ৰৰ সুসংগতা"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"প্ৰিছেট"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"প্ৰিছেট"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"প্ৰিছেট আপডে’ট কৰিব পৰা নগ’ল"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"অডিঅ’ আউটপুট"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"অডিঅ’ আউটপুটৰ বিষয়ে"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"বাতিল কৰক"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"নালাগে, ধন্যবাদ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"এতিয়া নহয়"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"মই সন্মত"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"অধিক"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"নিজৰ চেহেৰাৰ জৰিয়তে আনলক কৰক"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"মনত ৰাখিব"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"আপোনাৰ ফ\'নটো আনলক কৰিবলৈ বা ক্ৰয়ৰ অনুমোদন জনাবলৈ আপোনাৰ ফিংগাৰপ্ৰিণ্ট ব্যৱহাৰ কৰক৷\n\nটোকা: আপুনি এই ডিভাইচটো আনলক কৰিবলৈ আপোনাৰ ফিংগাৰপ্ৰিণ্ট ব্যৱহাৰ কৰিব নোৱাৰে৷ অধিক তথ্যৰ বাবে, আপোনাৰ প্ৰতিষ্ঠানৰ প্ৰশাসকৰ লগত যোগাযোগ কৰক৷"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"বাতিল কৰক"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"নালাগে, ধন্যবাদ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"এতিয়া নহয়"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"মই সন্মত"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ফিংগাৰপ্ৰিণ্ট ছেট আপ নকৰাকৈ এৰি যাব নেকি?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ফিংগাৰপ্ৰিণ্ট ছেট আপ কৰোঁতে মাত্ৰ এক বা দুই মিনিট সময়হে লাগে। আপুনি যদি এতিয়া এৰি যায়, তেন্তে পাছত ছেটিঙলৈ গৈ আপোনাৰ ফিংগাৰপ্ৰিণ্ট যোগ কৰিব পাৰে।"</string>
@@ -554,7 +555,7 @@
<string name="private_space_fingerprint_title" msgid="5989254643211889931">"ফিংগাৰপ্ৰিণ্ট আনলক"</string>
<string name="private_space_face_title" msgid="3290402865367663079">"ফে’চ আনলক"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"ছেট আপ কৰিবলৈ টিপক"</string>
- <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"ব্যক্তিগত স্পে’চৰ বাবে ফিংগাৰপ্ৰিণ্ট আনলক"</string>
+ <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"প্ৰাইভেট স্পে’চৰ বাবে ফিংগাৰপ্ৰিণ্ট আনলক"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"ব্যক্তিগত স্পে’চৰ বাবে ফে’চ আনলক"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"প্ৰাইভেট স্পে’চৰ বাবে মুখাৱয়ব আৰু ফিংগাৰপ্ৰিন্ট আনলক"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"প্ৰাইভেট স্পে’চৰ বাবে ফিংগাৰপ্ৰিন্ট আনলক ছেট আপ কৰক"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"প্ৰতিবাৰ ডিভাইচটো লক হ’লে"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"স্ক্ৰীন টাইমআউট হোৱাৰ ৫ মিনিট পাছত"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"ডিভাইচটো ৰিষ্টাৰ্ট হোৱাৰ পাছতহে"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"যদি আপুনি নিজৰ প্ৰাইভেট স্পে\'চৰ বাবে অন্য এটা লক ব্যৱহাৰ কৰে, আপুনি নিজৰ প্ৰাইভেট স্পে\'চত এপ্ খুলিবলৈ নিজৰ পৰিচয় সত্যাপন কৰিব লগা হ\'ব পাৰে।"</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"প্ৰাইভেট স্পে’চ লুকুৱাওক"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"লক হৈ থাকিলে প্ৰাইভেট স্পে’চ লুকুৱাই ৰাখক"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"আপোনাৰ ডিভাইচত প্ৰাইভেট স্পে\'চ থকাৰ বিষয়ে অন্য লোকে জনাটো বন্ধ কৰিবলৈ, আপুনি ইয়াক আপোনাৰ এপৰ সূচীৰ পৰা লুকুৱাব পাৰে"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"ছেট আপ কৰক"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"প্ৰাইভেট স্পে\'চ"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ব্যক্তিগত এপ্সমূহ এটা পৃথক স্পেচত লুকুৱাই ৰাখক অথবা লক কৰি ৰাখক। অতিৰিক্ত নিৰাপত্তাৰ বাবে এটা সমৰ্পিত Google একাউণ্ট ব্যৱহাৰ কৰক।"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"আপোনাৰ প্ৰাইভেট স্পে\'চ ছেট আপ কৰক"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"আপোনাৰ স্পেচৰ বাবে এটা Google একাউণ্ট বাছনি কৰক"</b>\n"এটা সমৰ্পিত একাউণ্ট ব্যৱহাৰ কৰাটোৱে আপোনাৰ স্পেচৰ বাহিৰত ছিংক কৰা ফাইল, ফট’ আৰু ইমেইল ওলোৱাটো বন্ধ কৰাত সহায় কৰে"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"ই কিদৰে কাম কৰে"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"আপোনাৰ স্পে’চৰ বাবে এটা Google একাউণ্ট সৃষ্টি কৰক"</b>\n"যদি আপুনি এটা সমৰ্পিত একাউণ্ট ব্যৱহাৰ কৰে, তেন্তে ই আপোনাৰ ছিংক কৰা ফাইল, ফট’ আৰু ইমেইলবোৰ স্পে’চৰ বাহিৰত প্ৰদৰ্শিত হোৱাটো বন্ধ কৰাত সহায় কৰে"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"লক ছেট কৰক"</b>\n"অন্য লোকে খোলাটো বন্ধ কৰিবলৈ আপোনাৰ স্পেচ লক কৰক"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"এপ্ ইনষ্টল কৰক"</b>\n"আপোনাৰ প্ৰাইভেট স্পেচৰ নিজা Play Store থকাৰ বাবে আপুনি সহজে এপ্ ইনষ্টল কৰিব পাৰে।"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"আপোনাৰ ব্যক্তিগত স্পে’চ লক কৰি থোৱা অৱস্থাত আপোনাৰ ব্যক্তিগত স্পে’চত এপ্সমূহ অনুমতিৰ পৰিচালক, গোপনীয়তাৰ ডেশ্বব’ৰ্ড আৰু অন্য ছেটিঙত প্ৰদৰ্শিত নহ’ব।\n\nআপোনাৰ প্ৰাইভেট স্পে’চ এটা নতুন ডিভাইচলৈ নিব নোৱাৰি। আপুনি অন্য এটা ডিভাইচত ব্যক্তিগত স্পে’চ ব্যৱহাৰ কৰিব বিচাৰিলে আপুনি অন্য এটা ব্যক্তিগত স্পে’চ ছেট আপ কৰিব লাগিব।\n\nআপোনাৰ ডিভাইচটো কোনো কম্পিউটাৰৰ সৈতে সংযোগ কৰা অথবা আপোনাৰ ডিভাইচত ক্ষতিকাৰক এপ্ ইনষ্টল কৰা যিকোনো লোকে আপোনাৰ প্ৰাইভেট স্পে’চ এক্সেছ কৰিব পাৰিব পাৰে।"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"এপ্সমূহ ইনষ্টল কৰক"</b>\n"আপুনি আপোনাৰ স্পে’চত ব্যক্তিগত কৰি ৰাখিব বিচৰা এপ্সমূহ ইনষ্টল কৰক"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"মনত ৰাখিব"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"আপুনি আপোনাৰ স্পে’চ লক কৰিলে এপ্সমূহ বন্ধ হৈ যায়"</b>\n"আপুনি আপোনাৰ স্পে’চ লক কৰিলে, আপোনাৰ স্পে’চত থকা এপ্সমূহ বন্ধ হৈ যায় আৰু আপুনি সেইসমূহৰ পৰা জাননী লাভ নকৰে"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"প্ৰাইভেট স্পে’চৰ বিষয়ে অধিক জানক"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ইয়াৰ বাবে কেইমুহূৰ্তমান লাগিব"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"প্ৰাইভেট স্পে\'চ ছেট আপ কৰি থকা হৈছে…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"আপুনি এটা নতুন লক কেৱল প্ৰাইভেট স্পে’চৰ বাবে ছেট কৰিব পাৰে বা আপুনি আপোনাৰ ডিভাইচটো আনলক কৰিবলৈ ব্যৱহাৰ কৰা একেটা লক ব্যৱহাৰ কৰিব পাৰে"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"স্ক্ৰীন লক ব্যৱহাৰ কৰক"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"নতুন লক বাছনি কৰক"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ক্ষন্তেক অপেক্ষা কৰক…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ক্ষন্তেক অপেক্ষা কৰক…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"সকলো সাজু!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"আপোনাৰ প্ৰাইভেট স্পে\'চ বিচাৰিবলৈ কৰিবলৈ, আপোনাৰ এপৰ সূচীখনলৈ গৈ তাৰ পাছত তললৈ স্ক্ৰ’ল কৰক"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"কৰা হ’ল"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"প্ৰাইভেট স্পেচৰ বাবে এটা পিন ছেট কৰক"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"প্ৰাইভেট স্পেচৰ বাবে এটা পাছৱৰ্ড ছেট কৰক"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"প্ৰাইভেট স্পেচৰ বাবে এটা আৰ্হি ছেট কৰক"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"আপোনাৰ ডেটা ব্যক্তিগত কৰি ৰখাত সহায় কৰিবলৈ এটা Google একাউণ্ট সৃষ্টি কৰক"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"পৰৱৰ্তী স্ক্ৰীনত আপুনি আপোনাৰ প্ৰাইভেট স্পেচৰ সৈতে ব্যৱহাৰ কৰিবলৈ এটা একাউণ্টত ছাইন ইন কৰিব পাৰিব"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"প্ৰাইভেট স্পেচৰ বাহিৰত তথ্য প্ৰদৰ্শিত হোৱাটো বন্ধ কৰাত সহায় কৰিবলৈ এটা সমৰ্পিত একাউণ্ট সৃষ্টি কৰক, যেনে:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"ছিংক কৰা ফট’, ফাইল, ইমেইল, সম্পৰ্ক, কেলেণ্ডাৰৰ অনুষ্ঠান আৰু আন ডেটা"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"এপ্ ডাউনল’ডৰ ইতিহাস আৰু চুপাৰিছসমূহ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ব্ৰাউজিঙৰ ইতিহাস, বুকমাৰ্ক আৰু ছেভ কৰা পাছৱৰ্ডসমূহ"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"প্ৰাইভেট স্পেচৰ এপ্সমূহত আপোনাৰ কাৰ্যকলাপৰ সৈতে সম্পৰ্কিত পৰামৰ্শিত সমল"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"বুজি পালোঁ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"লক কৰক"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"লুকুৱাওক"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"আপুনি <xliff:g id="COUNT">%d</xliff:g> টালৈকে ফিংগাৰপ্ৰিণ্ট যোগ কৰিব পাৰে"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"ছিষ্টেমৰ প্ৰমাণপত্ৰ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"প্ৰমাণপত্ৰ পিন কৰা"</string>
<string name="wifi_details_title" msgid="222735438574597493">"নেটৱৰ্কৰ সবিশেষ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"এই নেটৱৰ্কটোৱে WEP নামৰ এটা পুৰণি সুৰক্ষাৰ প্ৰট’কল ব্যৱহাৰ কৰে, যিটো কম সুৰক্ষিত"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"ছাবনেট মাস্ক"</string>
<string name="server_name_title" msgid="7257095185810299066">"ছাৰ্ভাৰৰ নাম"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"প্ৰকাৰ"</string>
@@ -1182,8 +1180,8 @@
<string name="auto_rotate_option_face_based" msgid="3438645484087953174">"অন আছে - মুখাৱয়ব ভিত্তিক"</string>
<string name="auto_rotate_switch_face_based" msgid="9116123744601564320">"মুখাৱয়ব চিনাক্তকৰণ"</string>
<string name="auto_rotate_link_a11y" msgid="5146188567212233286">"স্বয়ং-ঘূৰ্ণনৰ বিষয়ে অধিক জানক"</string>
- <string name="screen_resolution_title" msgid="2690518693139811486">"স্ক্ৰীনৰ ৰিজ\'লিউছন"</string>
- <string name="screen_resolution_option_high" msgid="2617496842852992853">"উচ্চ ৰিজ\'লিউছন"</string>
+ <string name="screen_resolution_title" msgid="2690518693139811486">"স্ক্ৰীনৰ ৰিজ\'লিউশ্বন"</string>
+ <string name="screen_resolution_option_high" msgid="2617496842852992853">"উচ্চ ৰিজ\'লিউশ্বন"</string>
<string name="screen_resolution_option_full" msgid="2694003735219114186">"সম্পূৰ্ণ ৰিজ’লিউশ্বন"</string>
<string name="screen_resolution_footer" msgid="6772341522952795647">"সম্পূৰ্ণ ৰিজ’লিউশ্বনে আপোনাৰ অধিক বেটাৰী ব্যৱহাৰ কৰে। আপোনাৰ ৰিজ’লিউশ্বন সলনি কৰিলে কিছুমান এপ্ ৰিষ্টাৰ্ট হ’ব পাৰে।"</string>
<string name="screen_resolution_selected_a11y" msgid="6158451180032224977">"বাছনি কৰা হৈছে"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ডিভাইচৰ ৱাই-ফাই MAC ঠিকনা"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ব্লুটুথৰ ঠিকনা"</string>
<string name="status_serial_number" msgid="9060064164331466789">"ক্ৰমিক নম্বৰ"</string>
- <string name="status_up_time" msgid="1274778533719495438">"চলি থকা সময়"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"চলি থকা সময়"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"নিৰ্মাণ কৰাৰ তাৰিখ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"প্ৰথম ব্যৱহাৰ কৰাৰ তাৰিখ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"চক্ৰৰ গণনা"</string>
@@ -1511,7 +1509,7 @@
<string name="reset_esim_error_title" msgid="6516110227665862295">"ই-ছিম মচিব নোৱাৰি"</string>
<string name="reset_esim_error_msg" msgid="8459527827897797168">"কিবা ভুল হ’ল আৰু আপোনাৰ ই-ছিম মচা হোৱা নাছিল।\n\nআপোনাৰ ডিভাইচ ৰিষ্টাৰ্ট কৰক আৰু পুনৰ চেষ্টা কৰক।"</string>
<string name="reset_private_space_delete_title" msgid="2555885198282572990">"প্ৰাইভেট স্পে\'চ মচক"</string>
- <string name="reset_private_space_delete_dialog" msgid="2325106559507364385">"যদি আপোনাৰ ডিভাইচত প্ৰাইভেট স্পে’চ আছে, সেয়া স্থায়ীভাৱে মচা হ’ব আৰু আপোনাৰ স্পেচটোত যোগ দিয়া Google একাউণ্টটো আঁতৰোৱা হ’ব। \n\nআপোনাৰ স্পেচত থকা আটাইবোৰ এপ্ আৰু সেইসমূহৰ ডেটা আপোনাৰ ফ’নৰ "<b>"অভ্যন্তৰীণ ষ্ট’ৰেজ"</b>"ৰ পৰা মচা হ’ব।"</string>
+ <string name="reset_private_space_delete_dialog" msgid="2325106559507364385">"যদি আপোনাৰ ডিভাইচত প্ৰাইভেট স্পে’চ আছে, সেয়া স্থায়ীভাৱে মচা হ’ব আৰু আপোনাৰ স্পে’চটোত যোগ দিয়া Google একাউণ্টটো আঁতৰোৱা হ’ব। \n\nআপোনাৰ স্পে’চত থকা আটাইবোৰ এপ্ আৰু সেইসমূহৰ ডেটা আপোনাৰ ফ’নৰ "<b>"অভ্যন্তৰীণ ষ্ট’ৰেজ"</b>"ৰ পৰা মচা হ’ব।"</string>
<string name="main_clear_title" msgid="277664302144837723">"আটাইবোৰ ডেটা মচক (ফেক্টৰী ৰিছেট)"</string>
<string name="main_clear_short_title" msgid="4752094765533020696">"আটাইবোৰ ডেটা মচক (ফেক্টৰী ৰিছেট)"</string>
<string name="main_clear_desc_also_erases_external" msgid="3687911419628956693"><li>"সংগীত"</li>\n<li>"ফট’"</li>\n<li>"অন্য ব্যৱহাৰকাৰীৰ ডেটা"</li></string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"একেবাৰে তলৰ সোঁফালৰ টিপা"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"অধিক বিকল্প পাবলৈ টাচ্চপেডৰ একেবাৰে তলৰ সোঁফালৰ কোণটোত টিপক"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"পইণ্টাৰৰ গতিবেগ"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"পইণ্টাৰ পূৰ কৰাৰ শৈলী"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"পইণ্টাৰ পূৰ কৰাৰ শৈলী ক’লা কৰক"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"পইণ্টাৰ পূৰ কৰাৰ শৈলী সেউজীয়া কৰক"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"পইণ্টাৰ পূৰ কৰাৰ শৈলী হালধীয়া কৰক"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"পইণ্টাৰ পূৰ কৰাৰ শৈলী গুলপীয়া কৰক"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"পইণ্টাৰ পূৰ কৰাৰ শৈলী নীলা কৰক"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"টাচ্চপেডৰ নিৰ্দেশসমূহ শিকক"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ট্ৰেকপেড, ট্ৰেক পেড, মাউছ, কাৰ্ছৰ, স্ক্ৰ’ল কৰক, ছোৱাইপ কৰক, ৰাইট ক্লিক কৰক, ক্লিক কৰক, পইণ্টাৰ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ৰাইট ক্লিক কৰক, টিপক"</string>
@@ -3212,7 +3216,7 @@
<string name="keywords_default_apps" msgid="4601664230800605416">"এপ্সমূহ, ডিফ\'ল্ট"</string>
<string name="keywords_ignore_optimizations" msgid="8967142288569785145">"অপ্টিমাইজেশ্বন, ড\'জ, এপ্ ষ্টেণ্ডবাইক উপেক্ষা কৰক"</string>
<string name="keywords_color_mode" msgid="1193896024705705826">"জীৱন্ত, RGB, sRGB, ৰং, প্ৰাকৃতিক, মানক"</string>
- <string name="keywords_screen_resolution" msgid="6652125115386722875">"FHD, QHD, ৰিজ\'লিউছন, 1080p, 1440p"</string>
+ <string name="keywords_screen_resolution" msgid="6652125115386722875">"FHD, QHD, ৰিজ\'লিউশ্বন, 1080p, 1440p"</string>
<string name="keywords_color_temperature" msgid="8159539138837118453">"ৰং, উষ্মতা, ডি৬৫, ডি৭৩, বগা, হালধীয়া, নীলা, উষ্ম, শীতল"</string>
<string name="keywords_lockscreen" msgid="3656926961043485797">"আনলক কৰিবলৈ শ্লাইড কৰক, পাছৱৰ্ড, আৰ্হি, পিন"</string>
<string name="keywords_app_pinning" msgid="1564144561464945019">"স্ক্ৰীন পিন কৰা"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{এটাও নাই}=1{1 খন সময়সূচী ছেট কৰা হৈছে}one{# খন সময়সূচী ছেট কৰা হৈছে}other{# খন সময়সূচী ছেট কৰা হৈছে}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"অসুবিধা নিদিব"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"অগ্ৰাধিকাৰপ্ৰাপ্ত ম’ড"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"কেৱল গুৰুত্বপূর্ণ লোক আৰু এপ্সমূহৰ পৰা জাননী পাওক"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"বাধাবোৰ সীমিত কৰক"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"অসুবিধা নিদিব অন কৰক"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"এখন কেলেণ্ডাৰ যোগ দিয়ক"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"আপোনাৰ কেলেণ্ডাৰ ব্যৱহাৰ কৰক"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"সময়সূচী"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"সময়সূচী ছেট কৰক"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"সময়সূচী"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> ঘণ্টা, <xliff:g id="MINUTES">%2$d</xliff:g> মিনিট"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"সময়সূচী"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"নিৰ্দ্দিষ্ট সময়ৰ মূৰত ফ\'ন নিৰৱ কৰক"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"অসুবিধা নিদিবৰ নিয়ম ছেট কৰক"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"এই এপ্টোৱে উন্নত ছেটিং সমৰ্থন নকৰে"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"অধিক ছেটিং"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"এই এপ্টোৰ ভিতৰত অধিক ছেটিং উপলব্ধ"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"কুলডাউন"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"কুলডাউন ব্যৱহাৰ কৰক"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"আপুনি কম সময়ৰ ভিতৰতে বহুতো জাননী পালে, আপুনি ডিভাইচটোৱে ধ্বনিসমূহে সৃষ্টি কৰা বাধা আৰু স্ক্ৰীনত পপ-আপসমূহ কমাব। কল, এলাৰ্ম আৰু অগ্ৰাধিকাৰপ্ৰাপ্ত বাৰ্তালাপসমূহৰ বাবে তেতিয়াও স্বাভাৱিকভাৱেই সতৰ্কবাৰ্তা আহিব আৰু ডেলিভাৰী হোৱা আটাইবোৰ জাননী Shadeত বিচাৰি পোৱাটো সহজ।"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"কৰ্মস্থানৰ প্ৰ’ফাইলত প্ৰয়োগ কৰক"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"কৰ্মস্থানৰ প্ৰ’ফাইলৰ এপত প্ৰয়োগ কৰক"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"ভিআৰ সহায়ক সেৱা"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"বাছনি কৰা এপ্"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"এটাও নহয়"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"আটাইবোৰ"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"এপক অ\'ভাৰৰাইডৰ অনুমতি দিয়ক"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ব্যাঘাত জন্মাব পৰা এপ্সমূহ"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"অধিক এপ্ বাছনি কৰক"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} পৰ্যন্ত কেৱল এঘণ্টাৰ বাবে এলাৰ্মলৈ সলনি কৰক}one{{time} পৰ্যন্ত কেৱল # ঘণ্টাৰ বাবে এলাৰ্মলৈ সলনি কৰক}other{{time} পৰ্যন্ত কেৱল # ঘণ্টাৰ বাবে এলাৰ্মলৈ সলনি কৰক}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"কেৱল <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> পৰ্যন্ত এলাৰ্ম সলনি কৰক"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"সদায় ব্যাঘাত জন্মোৱা ছেটিঙলৈ সলনি কৰক"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"নতুন নাম দিয়ক"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"চিহ্ন সলনি কৰক"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"চিহ্ন সলনি কৰক"</string>
<string name="warning_button_text" msgid="1274234338874005639">"সকীয়নি"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"বন্ধ কৰক"</string>
<string name="device_feedback" msgid="5351614458411688608">"ডিভাইচটো ব্যৱহাৰ কৰি কেনে লাগিছে জনাওক"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"বাওঁ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"সোঁ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"কে’ছ"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"বেটাৰী"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ছেটিঙৰ পেনেল"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"বলপূৰ্বক ডেস্কটপ ম’ড"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"দ্বিতীয় ডিছপ্লে’ত পৰীক্ষামূলক ডেস্কটপ ম’ড বলপূৰ্বকভাৱে প্ৰয়োগ কৰক"</string>
diff --git a/res/values-az/arrays.xml b/res/values-az/arrays.xml
index 93d30f7..5e1b4e6 100644
--- a/res/values-az/arrays.xml
+++ b/res/values-az/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index c2ae61e..9b0de63 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Cihaz ayrılsın?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Cihaz əlavə edin"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Sabah avtomatik olaraq yenidən aktiv edin"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Sağ qulaqlığı birləşdirin"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Sol qulaqlığı birləşdirin"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Digər qulaqlığı birləşdirin"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Sol qulaqlığı birləşdirin"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Eşitmə cihazı ayarları"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Qısayol, eşitmə cihazı uyğunluğu"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Hazır ayarlar"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Hazır ayar"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Hazır ayar güncəllənmədi"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio çıxışı"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Audio çıxışı haqqında"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Ləğv edin"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Yox, çox sağ olun"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"İndi yox"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Razıyam"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Daha çox"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Üzünüz ilə kildi açın"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Unutmayın"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Telefonu kiliddən çıxarmaq və ya alışları təsdiqləmək üçün barmaq izini istifadə edin.\n\nBu cihazı kiliddən çıxarmaq üçün barmaq izini istifadə edə bilməzsiniz. Ətraflı məlumat üçün təşkilat admini ilə əlaqə saxlayın."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Ləğv edin"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Xeyr, təşəkkürlər"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"İndi yox"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Razıyam"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Barmaq izi ötürülsün?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Barmaq izinin ayarlanması bir-iki dəqiqə çəkəcək. Bu mərhələni ötürsəniz, barmaq izini sonradan ayarlarda əlavə edə bilərsiniz."</string>
@@ -554,19 +555,19 @@
<string name="private_space_fingerprint_title" msgid="5989254643211889931">"Barmaqla kilidaçma"</string>
<string name="private_space_face_title" msgid="3290402865367663079">"Üzlə kilidaçma"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Ayarlamaq üçün toxunun"</string>
- <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Şəxsi sahə üçün barmaqla kilidaçma"</string>
- <string name="private_space_face_unlock_title" msgid="462248384776453613">"Şəxsi sahə üçün üzlə kilidaçma"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Şəxsi sahə üçün Üz və Barmaqla Kilidaçma"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Şəxsi sahə üçün Barmaqla Kilidaçmanı ayarlayın"</string>
- <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Tətbiqlərə daxil olmaq və ya alışı təsdiqləmək kimi hallarda şəxsi sahənizi kiliddən çıxarmaq və ya kimliyinizi doğrulamaq üçün barmaq izinizi istifadə edin"</string>
+ <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Məxfi sahə üçün barmaqla kilidaçma"</string>
+ <string name="private_space_face_unlock_title" msgid="462248384776453613">"Məxfi sahə üçün üzlə kilidaçma"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Məxfi sahə üçün Üz və Barmaqla Kilidaçma"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Məxfi sahə üçün Barmaqla Kilidaçmanı ayarlayın"</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Tətbiqlərə daxil olmaq və ya alışı təsdiqləmək kimi hallarda məxfi sahənizi kiliddən çıxarmaq və ya kimliyinizi doğrulamaq üçün barmaq izinizi işlədin"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"İstəmədiyiniz zaman şəxsi sahənizin kilidi açıla bilər, məsələn kimsə telefonunuzu barmağınıza tuta bilər."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Şəxsi sahənizi kiliddən çıxarmaq və ya alışı təsdiqləmək üçün barmaq izinizdən istifadə edin."</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Şəxsi sahə üçün Üzlə Kilidaçmanı ayarlayın"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Məxfi sahə üçün Üzlə Kilidaçmanı ayarlayın"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Tətbiqlərə daxil olmaq və ya alışı təsdiqləmək kimi hallarda şəxsi sahənizi kiliddən çıxarmaq və ya kimlik doğrulaması üçün üzünüzü istifadə edin."</string>
- <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Telefona baxmaqla istəmədən şəxsi sahəni kiliddən çıxara bilərsiniz. Sizə çox bənzəyən birisi (məsələn, əkiz bacı/qardaş), yaxud cihazı üzünüzə doğru tutan bir şəxs də şəxsi sahənizi kiliddən çıxara bilər."</string>
+ <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Telefona baxmaqla istəmədən məxfi sahəni kiliddən çıxara bilərsiniz. Sizə çox bənzəyən birisi (məsələn, əkiz bacı/qardaş), yaxud cihazı üzünüzə doğru tutan bir şəxs də məxfi sahənizi kiliddən çıxara bilər."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Şəxsi sahənizi kiliddən çıxarmaq üçün üzünüzdən istifadə etmək güclü model, PIN və ya parol qədər təhlükəsiz olmaya bilər."</string>
- <string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Şəxsi sahəni kiliddən çıxarmaq üçün gözləriniz açıq olmalıdır. Ən yaxşı nəticələr üçün günəş eynəyini çıxarın."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Üz ilə şəxsi sahəni kiliddən çıxarın.\n\nUnutmayın:\nEyni anda yalnız bir üz ayarlamaq olar. Başqa üz əlavə etmək üçün cari üzü silin.\n\nTelefona baxmaqla istəmədiyiniz halda onu kiliddən çıxara bilərsiniz.\n\nCihaz üzünüzə tərəf tutularsa, başqası şəxsi sahənizi kiliddən çıxara bilər.\n\nSizə çox bənzəyən birisi (məsələn, əkiz bacı/qardaş) şəxsi sahənizi kiliddən çıxara bilər."</string>
+ <string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Məxfi sahəni kiliddən çıxarmaq üçün gözləriniz açıq olmalıdır. Ən yaxşı nəticələr üçün günəş eynəyini çıxarın."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Üz ilə məxfi sahəni kiliddən çıxarın.\n\nUnutmayın:\nEyni anda yalnız bir üz ayarlamaq olar. Başqa üz əlavə etmək üçün cari üzü silin.\n\nTelefona baxmaqla istəmədiyiniz halda onu kiliddən çıxara bilərsiniz.\n\nCihaz üzünüzə tərəf tutularsa, başqası məxfi sahənizi kiliddən çıxara bilər.\n\nSizə çox bənzəyən birisi (məsələn, əkiz bacı/qardaş) məxfi sahənizi kiliddən çıxara bilər."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Üzlə Kilidaçma istifadə edərkən həmişə təsdiq addımı tələb edilsin"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Kiliddən çıxarma üsulları"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"Cihazın ekran kilidi ilə eyni"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Hər dəfə cihaz kilidləndikdə"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Ekranın sönmə müddətindən sonra 5 dəqiqə"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Yalnız cihaz yenidən başladıqdan sonra"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Məxfi sahəni gizlədin"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Kilidli olduqda şəxsi sahəni gizlədin"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Digərlərinin cihazdakı şəxsi sahədən xəbərdar olmaması üçün onu tətbiq siyahısından gizlədə bilərsiniz"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Ayarlayın"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Şəxsi sahə"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Şəxsi tətbiqləri ayrıca məkanda gizlədin və ya kilidləyin. Əlavə təhlükəsizlik üçün xüsusi Google Hesabı istifadə edin."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Şəxsi sahə qurun"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Sahə üçün Google Hesabı seçin"</b>\n"Xüsusi hesabdan istifadə sinxronlaşdırılmış fayl, foto və e-məktubların sahədən kənarda görünməsinin qarşısını alır"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Haqqında"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Sahəniz üçün Google Hesabı yaradın"</b>\n"Xüsusi hesab istifadə edirsinizsə, bu, sahədən kənarda görünən sinxronlaşdırılmış fayl, foto və e-poçtların qarşısını almağa kömək edir"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Kilid qurun"</b>\n"Başqalarının açmaması üçün sahəni kilidləyin"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Tətbiq quraşdırın"</b>\n"Şəxsi sahənin öz Play Marketi var. Asanlıqla tətbiq quraşdıra bilərsiniz."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Şəxsi sahə kilidləndikdə oradakı tətbiqlər icazə meneceri, məxfilik paneli və digər ayarlarda görünməyəcək.\n\nŞəxsi sahə yeni cihaza köçürülə bilməz. Başqa cihazda istifadə etmək istəsəniz, başqa bir şəxsi sahə ayarlamalısınız.\n\nCihazı kompüterə qoşan və ya cihazda zərərli tətbiqlər quraşdıran istənilən şəxs şəxsi sahəyə daxil ola bilər."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Tətbiqlər quraşdırın"</b>\n"Sahənizdə məxfi saxlamaq istədiyiniz tətbiqləri quraşdırın"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Nəzərdə saxlayın"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Sahəni kilidlədikdə tətbiqlər dayanır"</b>\n"Sahəni kilidlədikdə sahədəki tətbiqlər dayandırılır və onlardan bildirişlər almayacaqsınız"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Şəxsi sahə haqqında ətraflı məlumat"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Bir neçə dəqiqə çəkəcək"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Məxfi yer ayarlanır…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Yalnız şəxsi sahə üçün yeni kilid təyin edə və ya cihaz kilidini açdığınız kiliddən istifadə edə bilərsiniz"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Ekran kilidi istifadə edin"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Yeni kilid seçin"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Bir saniyə…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Bir saniyə…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tam hazırdır!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Şəxsi sahəni tapmaq üçün tətbiq siyahısına keçib, aşağı sürüşdürün"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Hazırdır"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Şəxsi sahə üçün PIN qurun"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Şəxsi sahə üçün parol qurun"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Şəxsi sahə üçün model qurun"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Datanı məxfi saxlamaq üçün Google Hesabı yaradın"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Növbəti ekranda şəxsi sahədən istifadə üçün hesaba daxil ola bilərsiniz"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Datanın şəxsi məkandan kənarda görünməməsi üçün xüsusi hesab yaradın, məsələn:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinxronlaşdırılmış foto, fayl, e-poçt, kontakt, təqvim hadisələri və digər data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Tətbiq endirmə tarixçəsi və tövsiyələr"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Baxış tarixçəsi, əlfəcinlər və saxlanan parollar"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Şəxsi sahə tətbiqlərindəki fəaliyyətlə bağlı təklif olunan məzmun"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Anladım"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Kilidləyin"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Gizlədin"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"<xliff:g id="COUNT">%d</xliff:g> ədədə qədər barmaq izi əlavə edə bilərsiniz"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sistem sertifikatı"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Sertifikatın bərkidilməsi"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Şəbəkə detalları"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Bu şəbəkə güvənliyi az olan WEP adlı köhnə təhlükəsizlik protokolundan istifadə edir"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Alt şəbəkə maskası"</string>
<string name="server_name_title" msgid="7257095185810299066">"Serverin adı"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Növ"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Cihazın Wi‑Fi MAC ünvanı"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth ünvanı"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Seriya nömrəsi"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Müddəti"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Müddət"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"İstehsal tarixi"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"İlk istifadə tarixi"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Dövrə sayı"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Aşağı sağa toxunma"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Digər seçimlər üçün taçpedin aşağı sağ küncünə toxunun"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Kursor sürəti"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Poynter doldurma üslubu"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Poynter doldurma üslubunu qaraya dəyişin"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Poynter doldurma üslubunu yaşıla dəyişin"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Poynter doldurma üslubunu sarıya dəyişin"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Poynter doldurma üslubunu çəhrayıya dəyişin"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Poynter doldurma üslubunu maviyə dəyişin"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Taçped jestlərini öyrənin"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trekped, trek ped, maus, kursor, sürüşdürün, çəkin, sağ düymə ilə toxunun, klikləyin, poynter"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"sağ düymə ilə toxunun, basın"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Heç biri}=1{1 cədvəl ayarlanıb}other{# cədvəl ayarlanıb}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Narahat etməyin"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritet rejimləri"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Yalnız vacib şəxs və tətbiqlərdən bildiriş alın."</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Kəsintiləri məhdudlaşdırın"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\"Narahat Etməyin\" rejimini aktiv edin"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Redaktə edin"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Cədvəllər"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Rejim"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Avtomatik yandırın"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Təqvim əlavə edin"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Təqvim istifadə edin"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Cədvəl"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Rutin"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Müəyyən vaxtlarda telefonu səssiz edin"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Bu tətbiq geniş ayarları dəstəkləmir"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Digər ayarlar"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Bu tətbiqdə başqa ayarlar da var"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"İstirahət"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"İstirahət rejimindən istifadə edin"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Qısa müddət ərzində çox sayda bildirişlər aldığınız zaman cihazınız səs müdaxilələrini və ekrandakı popap bildirişlərini minimuma endirəcək. Zənglər, siqnallar və prioritet söhbətlər normal qaydada işləyəcək və çatdırılmış bütün bildirişləri Shade-də asanlıqla tapmaq olar."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"İş profillərinə tətbiq edin"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"İş profili tətbiqlərinə tətbiq edin"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR köməkçi xidmətləri"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Seçilmiş tətbiqlər"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Heç biri"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Hamısı"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Tətbiqlərin rejimdən imtina etməsinə icazə verin"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Narahat etmiş sayılmayan tətbiqlər"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Daha çox tətbiq seçin"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Yalnız bu vaxtadək bir saatlıq xəbərdarlıqlara dəyişin: {time}}other{Yalnız bu vaxtadək # saatlıq xəbərdarlıqlara dəyişin: {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Yalnız <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> vaxtınadək xəbərdarlıqları dəyişin"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Həmişə fasiləyə dəyişin"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Xəbərdarlıq"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Bağlayın"</string>
<string name="device_feedback" msgid="5351614458411688608">"Bu cihaz haqqında fikrinizi bildirin"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Sol"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Sağ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Qutu"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batareya"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Ayarlar Paneli"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Masaüstü rejiminə keçid məcburi olsun"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Əlavə ekranlarda masaüstünün eksperimental rejiminə keçid məcburi olsun"</string>
diff --git a/res/values-b+sr+Latn/arrays.xml b/res/values-b+sr+Latn/arrays.xml
index 6dea39e..69b2c2a 100644
--- a/res/values-b+sr+Latn/arrays.xml
+++ b/res/values-b+sr+Latn/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 40b42b2..968995e 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Prekidate vezu sa uređajem?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Uparite novi uređaj"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatski ponovo uključi sutra"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Upari desno uvo"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Upari levo uvo"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Uparite drugo uvo"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Upari levo uvo"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Podešavanja slušnog aparata"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Prečica, kompatibilnost sa slušnim aparatima"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Zadata podešavanja"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Zadata podešavanja"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Ažuriranje zadatih podešavanja nije uspelo"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio izlaz"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"O audio izlazu"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Otkaži"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ne, hvala"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ne sada"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Prihvatam"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Više"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Otključajte pomoću lica"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Imajte na umu"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Otključavajte telefon ili odobravajte kupovine pomoću otiska prsta.\n\nNapomena: Ne možete da otključavate ovaj uređaj pomoću otiska prsta. Više informacija zatražite od administratora organizacije."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Otkaži"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ne, hvala"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ne sada"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Prihvatam"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Preskačete otiske prstiju?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Podešavanje otisaka prstiju traje svega minut-dva. Ako preskočite ovo, možete da dodate otisak prsta kasnije u podešavanjima."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Princip rada"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Otključavanje otiskom prsta pravi jedinstveni model otiska prsta radi verifikovanja identiteta. Da biste napravili taj model otiska prsta tokom podešavanja, morate da slikate otisak prsta iz različitih položaja."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Otključavanje otiskom prsta pravi jedinstveni model detetovog otiska prsta radi verifikovanja identiteta. Da bi napravilo taj model otiska prsta tokom podešavanja, dete treba da slika otisak prsta iz različitih položaja."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Da biste imali najbolje rezultate, koristite zaštitu za ekran sa sertifikatom Napravljeno za Google. Otisak prsta možda neće raditi sa drugim zaštitama za ekran."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Da biste postigli najbolje rezultate, koristite zaštitu za ekran sa sertifikatom Napravljeno za Google. Otisak prsta možda neće raditi sa drugim zaštitama za ekran."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Da biste imali najbolje rezultate, koristite zaštitu za ekran sa sertifikatom Napravljeno za Google. Otisak prsta deteta možda neće raditi sa drugim zaštitama za ekran."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Otključavanje satom"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Svaki put kad se uređaj zaključa"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minuta posle gašenja ekrana"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Samo posle restartovanja uređaja"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Ako za privatan prostor koristite drugo zaključavanje, možda ćete morati da potvrdite identitet da biste otvorili aplikacije u njemu."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Sakrijte privatan prostor"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Sakrij privatan prostor kada je zaključan"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Privatan prostor možete da sakrijete na listi aplikacija kako drugi ne bi znali da ga imate na uređaju"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Podesi"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privatni prostor"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Sakrijte ili zaključajte privatne aplikacije u zasebnom prostoru. Koristite namenski Google nalog radi dodatne bezbednosti."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Podesite privatni prostor"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Izaberite Google nalog za prostor"</b>\n"Korišćenjem namenskog naloga sprečavate da se sinhronizovani fajlovi, slike i imejlovi pojavljuju izvan prostora"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Princip rada"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Napravite Google nalog za prostor"</b>\n"Ako koristite namenski nalog, sprečavate da se sinhronizovani fajlovi, slike i imejlovi prikazuju izvan prostora"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Podesite zaključavanje"</b>\n"Zaključajte prostor da drugi ne bi mogli da ga otvore"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instalirajte aplikacije"</b>\n"Privatni prostor ima svoju Play prodavnicu, pa možete lako da instalirate aplikacije."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Kada je privatni prostor zaključan, aplikacije u njemu se ne prikazuju u menadžeru dozvola, na kontrolnoj tabli za privatnost ni u drugim podešavanjima.\n\nPrivatni prostor ne možete da vratite na novom uređaju. Morate da podesite drugi privatni prostor ako želite da ga koristite na drugom uređaju.\n\nSvako ko vaš uređaj poveže sa računarom ili na njega instalira zlonamerne aplikacije moći će da pristupi vašem privatnom prostoru."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instalirajte aplikacije"</b>\n"Aplikacije za koje želite da budu privatne instalirajte u prostoru"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Imajte na umu"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikacije se zaustavljaju kada zaključate prostor"</b>\n"Kada zaključate prostor, aplikacije u njemu se zaustavljaju i ne šalju vam obaveštenja"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Saznajte više o privatnom prostoru"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Potrajaće nekoliko trenutaka"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Podešava se privatni prostor…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Možete da podesite novo otključavanje samo za privatan prostor ili da koristite ono isto koje koristite za otključavanje uređaja"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Koristi otključavanje ekrana"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Odaberi novi tip otključavanja"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Samo trenutak…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Samo trenutak…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Gotovo!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Da biste pronašli privatni prostor, otvorite listu aplikacija i skrolujte nadole"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Gotovo"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Podesite PIN za privatni prostor"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Podesite lozinku za privatni prostor"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Podesite obrazac za privatni prostor"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Otvorite namenski Google nalog da biste zaštitili privatnost podataka"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na sledećem ekranu možete da se prijavite na nalog koji ćete koristiti sa privatnim prostorom"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Otvorite namenski nalog kako biste sprečili da se izvan privatnog prostora prikazuju podaci, na primer:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinhronizovane slike, fajlovi, imejlovi, kontakti, događaji u kalendaru i drugi podaci"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Istorija preuzimanja aplikacije i preporuke"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Istorija pregledanja, obeleživači i sačuvane lozinke"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Predložen sadržaj povezan sa aktivnostima u aplikacijama iz privatnog prostora"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Važi"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Zaključaj"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Sakrij"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Možete da ih dodate do <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -669,7 +666,7 @@
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Odaberite rezervni način za otključavanje ekrana"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Ako zaboravite otključavanje ekrana, administrator ne može da ga resetuje."</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"Podesite zasebno zaključavanje za poslovne aplikacije"</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"Ako zaboravite ovo zaključavanje, zatražite od IT administratora da ga resetuje"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"Ako zaboravite kako da otključate, zatražite od IT administratora da to resetuje"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"Opcije zaključavanja ekrana"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"Opcije otključavanja ekrana"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"Otključavanje koje se automatski potvrđuje"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sertifikat sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Postavljanje sertifikata"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalji o mreži"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ova mreža koristi stariji bezbednosni protokol zvani WEP koji je manje siguran"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska podmreže"</string>
<string name="server_name_title" msgid="7257095185810299066">"Naziv servera"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tip"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"WiFi MAC adresa uređaja"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth adresa"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serijski broj"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Vreme rada"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Aktivno vreme"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Datum proizvodnje"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum prvog korišćenja"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Broj ciklusa"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Dodir u donjem desnom uglu"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Dodirnite donji desni ugao tačpeda za više opcija"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Brzina pokazivača"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Stil popune pokazivača"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Promenite stil popune u crno"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Promenite stil popune u zeleno"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Promenite stil popune u žuto"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Promenite stil popune u roze"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Promenite stil popune u plavo"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Naučite pokrete za tačped"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"dodirna tabla, miš, kursor, skrolovanje, prevlačenje, desni klik, klik, pokazivač"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"desni klik, dodir"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nijedan}=1{1 raspored je podešen}one{# raspored je podešen}few{# rasporeda su podešena}other{# rasporeda je podešeno}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ne uznemiravaj"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritetni režimi"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Dobijajte obaveštenja samo od važnih osoba i aplikacija"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ograničite prekide"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Uključite režim Ne uznemiravaj"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Dodajte kalendar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Koristite svoj kalendar"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Raspored"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Podesite raspored"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Raspored"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> s, <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Raspored"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Utišajte telefon u određeno vreme"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Podesite pravila za režim „Ne uznemiravaj“"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ova aplikacija ne podržava poboljšana podešavanja"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Još podešavanja"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Dostupno je još podešavanja u aplikaciji"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Utišavanje"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Koristi utišavanje"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kada dobijete mnogo obaveštenja u kratkom periodu, uređaj će smanjiti broj zvučnih ometanja i iskačućih prozora na ekranu. I dalje ćete dobijati uobičajena obaveštenja za pozive, alarme i prioritetne konverzacije, a sva primljena obaveštenja možete lako da pronađete u traci sa obaveštenjima."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Primeni na poslovne profile"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Primenite na aplikacije poslovnog profila"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Usluge pomagača za virtuelnu realnost"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Izabrane aplikacije"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nijedna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Sve"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Dozvoli da aplikacije zanemaruju"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikacije koje mogu da prekidaju"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Izaberite još aplikacija"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Pređite samo na alarme na jedan sat sve do {time}}one{Pređite samo na alarme na # sat sve do {time}}few{Pređite samo na alarme na # sata sve do {time}}other{Pređite samo na alarme na # sati sve do {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Prebacuje u režim samo sa alarmima do <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Prebacuje u režim uvek prekidaj"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Preimenuj"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Promeni ikonu"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Promeni ikonu"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Upozorenje"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Zatvori"</string>
<string name="device_feedback" msgid="5351614458411688608">"Šalji povratne informacije o uređaju"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Levo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Desno"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Futrola"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Baterija"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Tabla sa podešavanjima"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Nametni režim računara"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Nameće eksperimentalni režim računara na sekundarnim ekranima"</string>
@@ -4841,24 +4859,24 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"Uključi uz veličinu stranica 16 KB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Uključi uređaj uz jezgro podržano za 16 KB stranice"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Pređite sa režima od 4 KB na režim od 16 KB"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Koristite režim nezavisan od veličine stranice sa jezgrom od 4 KB, a prelazite na režim od 16 KB. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Ovim ćete restartovati uređaj. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da ga vratite na režim od 4 KB i zaključate pokretački program, što će resetovati uređaj na fabrička podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera."</string>
- <string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Pređite sa 16 KB režima na 4 KB režim"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Koristite režim nezavisan od veličine stranice sa jezgrom za 16 KB, a prelazite na 4 KB režim. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Ovim ćete restartovati uređaj. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da zaključate pokretački program, što će resetovati uređaj na fabrička podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Koristite režim nezavisan od veličine stranice sa jezgrom od 4 kB, a prelazite na režim od 16 kB. U ovom režimu ne može da se garantuje integritet softvera, pa podaci koji se čuvaju na telefonu dok je pokretački program otključan mogu da budu ugroženi. Ovim ćete restartovati uređaj. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da ga vratite na režim od 4 kB i zaključate pokretački program, što će resetovati uređaj na fabrička podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera."</string>
+ <string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Pređite sa režima od 16 kB na režim od 4 kB"</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Koristite režim nezavisan od veličine stranice sa jezgrom za 16 kB, a prelazite na režim od 4 kB. U ovom režimu ne može da se garantuje integritet softvera, pa podaci koji se čuvaju na telefonu dok je pokretački program otključan mogu da budu ugroženi. Ovim ćete restartovati uređaj. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da zaključate pokretački program, što će resetovati uređaj na fabrička podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Ažuriranje na jezgro kompatibilno sa 16 KB stranicama nije uspelo."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Primenjuje se promena"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Želite da reformatirate uređaj na ext4? (potrebno za 16 KB režim)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Da bi ovaj uređaj mogao da koristi 16 KB opciju za programera, njegova particija podataka treba da se konvertuje u ext4. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Aktiviranje 16 KB opcije zahteva još jedno restartovanje. Kada budete u ovom režimu, moći ćete da prelazite sa 4 KB režima na 16 KB režim i obratno uz jedno restartovanje. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da ga vratite na 4 KB režim i zaključate pokretački program, što će resetovati uređaj na fabrička podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera. Uređaj će posle potvrde biti obrisan, a sistem fajlova promenjen na ext4. Kada se to završi, vratite se ovde da biste ponovo omogućili 16 KB režim."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Reformatiraćete uređaj na ext4? (potrebno za režim od 16 kB)"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Da bi ovaj uređaj mogao da koristi opciju za programera od 16 kB, njegova particija podataka treba da se konvertuje u ext4. U ovom režimu ne može da se garantuje integritet softvera, pa podaci koji se čuvaju na telefonu dok je pokretački program otključan mogu da budu ugroženi. Aktiviranje opcije od 16 kB zahteva još jedno restartovanje. Kada budete u ovom režimu, moći ćete da prelazite sa režima od 4 kB na režim od 16 kB i obratno uz jedno restartovanje. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da ga vratite na režim od 4 kB i zaključate pokretački program, čime će se uređaj resetovati na fabrička podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera. Uređaj će posle potvrde biti obrisan, a sistem fajlova promenjen na ext4. Kada se to završi, vratite se ovde da biste ponovo omogućili režim od 16 kB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Obriši sve podatke"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Reformatiranje i brisanje particije podataka na ext4 nije uspelo."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Treba da otključate pokretački program da biste koristili 16 KB režim"</string>
- <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Da bi ovaj uređaj mogao da koristi 16 KB opciju za programera, na njemu treba da bude otključan pokretački program. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Kada se aktivira 16 KB režim, svi podaci i podešavanja korisnika će biti izbrisani. Kada se pokretački program otključa, aktiviranje 16 KB opcije zahteva dva restartovanja. Kada budete u ovom režimu, moći ćete da prelazite sa 4 KB režima na 16 KB režim i obratno uz jedno restartovanje. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da ga vratite na 4 KB režim i zaključate OEM ili pokretački program na uređaju (što će ga resetovati na fabrička podešavanja). Otključajte pokretački program i probajte ponovo. Uputstva kako to da uradite potražite na <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Koristite 4 KB režim nezavisan od veličine stranice"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Koristite 4 KB režim u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da zaključate pokretački program uređaja. Dodirnite da biste pročitali više."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Koristite 4 KB režim u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da zaključate pokretački program uređaja. To će ponovo resetovati uređaj na fabrička podešavanja i vratiti ga na proizvodna podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera. Ako je uređaj nestabilan ili se na njemu ne uključi Android, ponovo ga flešujte koristeći najnovije slike sa fabričkim podešavanjima sa <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Možete i da koristite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> i izaberete Obriši uređaj, Zaključaj pokretački program i Prinudno flešuj sve particije."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Koristite 16 KB režim nezavisan od veličine stranice"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Koristite 16 KB režim u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da ga vratite na 4 KB režim i zaključate pokretački program uređaja. Dodirnite da biste pročitali više."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Koristite 16 KB režim u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da ga vratite na 4 KB režim i zaključate pokretački program uređaja. To će ponovo resetovati uređaj na fabrička podešavanja i vratiti ga na proizvodna podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera. Ako je uređaj nestabilan ili se na njemu ne uključi Android, ponovo ga flešujte koristeći najnovije slike sa fabričkim podešavanjima sa <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Možete i da koristite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> i izaberete Obriši uređaj, Zaključaj pokretački program i Prinudno flešuj sve particije."</string>
- <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 KB režim nezavisan od veličine stranice"</string>
+ <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Da bi ovaj uređaj mogao da koristi opciju za programera od 16 kB, na njemu treba da bude otključan pokretački program. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Kada se aktivira režim od 16 kB, svi podaci i podešavanja korisnika će biti izbrisani. Kada se pokretački program otključa, aktiviranje opcije od 16 kB zahteva dva restartovanja. Kada budete u ovom režimu, moći ćete da prelazite sa režima od 4 kB na režim od 16 kB i obratno uz jedno restartovanje. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj vratili na proizvodni režim, treba da ga vratite na režim od 4 kB i zaključate OEM ili pokretački program na uređaju (što će ga resetovati na fabrička podešavanja). Otključajte pokretački program i probajte ponovo. Uputstva kako to da uradite potražite na <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Koristite režim od 4 kB nezavisan od veličine stranice"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Koristite režim od 4 kB u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa podaci koji se čuvaju na telefonu dok je pokretački program otključan mogu da budu ugroženi. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da zaključate pokretački program uređaja. Dodirnite da biste pročitali više."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Koristite režim od 4 kB u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa mogu biti ugroženi podaci koji se čuvaju na telefonu dok je pokretački program otključan. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da zaključate pokretački program uređaja. To će ponovo resetovati uređaj na fabrička podešavanja i vratiti ga na proizvodna podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera. Ako je uređaj nestabilan ili se na njemu ne uključi Android, ponovo ga flešujte koristeći najnovije slike sa fabričkim podešavanjima sa <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Možete i da koristite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> i izaberete Obriši uređaj, Zaključaj pokretački program i Prinudno flešuj sve particije."</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Koristite režim od 16 kB nezavisan od veličine stranice"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Koristite režim od 16 kB u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa podaci koji se čuvaju na telefonu dok je pokretački program otključan mogu da budu ugroženi. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da ga vratite na režim od 4 kB i zaključate pokretački program uređaja. Dodirnite da biste pročitali više."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Koristite režim od 16 kB u okviru režima nezavisnog od veličine stranice. U ovom režimu ne može da se garantuje integritet softvera, pa podaci koji se čuvaju na telefonu dok je pokretački program otključan mogu da budu ugroženi. Neke funkcije su onemogućene u ovim režimima, što znači da neke aplikacije možda neće raditi. Da biste uređaj ponovo vratili u proizvodni režim, morate da ga vratite na režim od 4 kB i zaključate pokretački program uređaja. To će ponovo resetovati uređaj na fabrička podešavanja i vratiti ga na proizvodna podešavanja. Kada se na uređaju uključi Android, onemogućite OEM otključavanje u Opcijama za programera. Ako je uređaj nestabilan ili se na njemu ne uključi Android, ponovo ga flešujte koristeći najnovije slike sa fabričkim podešavanjima sa <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Možete i da koristite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> i izaberete Obriši uređaj, Zaključaj pokretački program i Prinudno flešuj sve particije."</string>
+ <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Režim od 16 kB nezavisan od veličine stranice"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Pročitajte više"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Obrađivač izveštaja o grešci"</string>
<string name="bug_report_handler_picker_footer_text" msgid="4935758328366585673">"Određuje koja aplikacija upravlja prečicom za izveštaj o grešci na uređaju."</string>
@@ -4956,7 +4974,7 @@
<string name="default_active_sim_calls" msgid="2390973682556353558">"pozivi"</string>
<string name="default_active_sim_sms" msgid="8041498593025994921">"SMS"</string>
<string name="default_active_sim_mobile_data" msgid="6798083892814045301">"mobilni podaci"</string>
- <string name="wifi_scan_notify_message" msgid="1331238142061476869">"Radi boljeg doživljaja uređaja, aplikacije i usluge mogu i dalje da traže WiFi mreže u bilo kom trenutku, čak i kada je WiFi isključen. To može da se koristi, na primer, za poboljšavanje funkcija i usluga zasnovanih na lokaciji. To možete da promenite u podešavanjima WiFi skeniranja."</string>
+ <string name="wifi_scan_notify_message" msgid="1331238142061476869">"Radi boljeg doživljaja, aplikacije i usluge mogu i dalje da traže WiFi mreže u bilo kom trenutku, čak i kada je WiFi isključen. To može da se koristi, na primer, za poboljšavanje funkcija i usluga zasnovanih na lokaciji. To možete da promenite u podešavanjima WiFi skeniranja."</string>
<string name="wifi_scan_change" msgid="8438320311511852918">"Promeni"</string>
<string name="preference_summary_default_combination" msgid="4643585915107796253">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="NETWORKMODE">%2$s</xliff:g>"</string>
<string name="mobile_data_connection_active" msgid="2422223108911581552">"Povezano"</string>
diff --git a/res/values-be/arrays.xml b/res/values-be/arrays.xml
index 2a7b529..d5c5b10 100644
--- a/res/values-be/arrays.xml
+++ b/res/values-be/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index c833865..40f7119 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Адключыць прыладу?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Спалучыць новую прыладу"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Уключыць заўтра аўтаматычна"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Спалучыць справа"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Спалучыць злева"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Спалучыце для іншага вуха"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Спалучыць для левага вуха"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Налады слыхавога апарата"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Хуткае ўключэнне спецыяльных магчымасцей, сумяшчальнасць са слыхавымі апаратамі"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Наборы налад"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Набор налад"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Не ўдалося абнавіць набор налад"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аўдыявыхад"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Пра аўдыявыхад"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Скасаваць"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Не, дзякуй"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Не зараз"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Я згаджаюся"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Яшчэ"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Разблакіруйце праз твар"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Важная інфармацыя"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Для ўхвалення куплі ці разблакіроўкі тэлефона можна карыстацца адбіткам пальца.\n\nЗаўвага. Вы не можаце выкарыстоўваць адбітак пальца для разблакіроўкі гэтай прылады. Для атрымання дадатковай інфармацыі звяжыцеся з адміністратарам арганізацыі."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Скасаваць"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Не, дзякуй"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Не зараз"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Я згаджаюся"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Не наладжваць адбітак?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Для наладжвання адбітка пальца спатрэбіцца пара хвілін. Вы можаце прапусціць гэты крок і дадаць адбітак пальца пазней у наладах."</string>
@@ -558,11 +559,11 @@
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Распазнаванне твару для прыватнай прасторы"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Разблакіроўка прыватнай прасторы па твары або адбітку пальца"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Наладжванне разблакіроўкі прыватнай прасторы адбіткам пальца"</string>
- <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Адбітак пальца можна выкарыстоўваць для разблакіроўкі прыватнай прасторы ці пацвярджэння асобы, напрыклад, падчас уваходу ў праграмы або для ўхвалення куплі"</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Адбітак пальца можна выкарыстоўваць для разблакіроўкі прыватнай прасторы ці пацвярджэння асобы, напрыклад падчас уваходу ў праграмы або для ўхвалення куплі"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Прыватная прастора можа быць разблакіравана без вашага намеру, напрыклад, калі хтосьці прыкладзе ваш палец да тэлефона."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Выкарыстоўвайце адбітак пальца, каб разблакіраваць прыватную прастору або ўхваліць куплю"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Наладжванне распазнавання твару для прыватнай прасторы"</string>
- <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Распазнаванне твару можна выкарыстоўваць для разблакіроўкі прыватнай прасторы і пацвярджэння асобы, напрыклад, падчас уваходу ў праграмы або для ўхвалення куплі"</string>
+ <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Распазнаванне твару можна выкарыстоўваць для разблакіроўкі прыватнай прасторы і пацвярджэння асобы, напрыклад падчас уваходу ў праграмы або для ўхвалення куплі"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Зірнуўшы на тэлефон, вы можаце разблакіраваць прыватную прастору, нават не маючы такога намеру. Акрамя таго, вашу прыватную прастору можа разблакіраваць чалавек, вельмі падобны на вас (напрыклад, ідэнтычнае блізня), ці той, хто паднясе прыладу да вашага твару."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Разблакіроўка прыватнай прасторы з дапамогай распазнавання твару можа быць менш бяспечнай, чым выкарыстанне складанага ўзору, PIN-кода або пароля"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Каб разблакіраваць прыватную прастору, расплюшчыце вочы. Для дасягнення найлепшых вынікаў зніміце сонечныя акуляры."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Пры кожнай блакіроўцы прылады"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 хвілін пасля часу да выключэння экрана"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Толькі пасля перазапуску прылады"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Калі вы выкарыстоўваеце іншы спосаб блакіроўкі для прыватнай прасторы, вам, магчыма, прыйдзецца пацвярджаць сваю асобу, каб адкрываць праграмы ў прыватнай прасторы."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Схаваць прыватную прастору"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Не паказваць прыватную прастору, калі яна заблакіравана"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Вы можаце схаваць прыватную прастору так, каб яна не паказвалася ў спісе праграм на прыладзе. Дзякуючы гэтаму староннія асобы не будуць ведаць, што вы карыстаецеся гэтай функцыяй."</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Наладзіць"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Прыватная прастора"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Праграмы ў асабістай прасторы можна схаваць або абараніць з дапамогай блакіроўкі. У мэтах бяспекі выкарыстоўвайце асобны Уліковы запіс Google."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Наладжванне прыватнай прасторы"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Выбар Уліковага запісу Google для прасторы"</b>\n"Каб сінхранізаваныя файлы, фота і электронныя лісты не з\'яўляліся па-за межамі вашай прыватнай прасторы, выкарыстоўвайце асобны ўліковы запіс."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Як гэта працуе"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Стварыце Уліковы запіс Google для сваёй прасторы"</b>\n"Пры выкарыстанні асобнага ўліковага запісу сінхранізаваныя файлы, фота і электронныя лісты не будуць з’яўляцца па-за межамі прасторы"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Устаноўка блакіроўкі"</b>\n"Абараніце прыватную прастору з дапамогай блакіроўкі, каб іншыя карыстальнікі не маглі яе адкрыць."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Усталяванне праграм"</b>\n"У прыватнай прасторы ёсць Крама Play, таму вы можаце з лёгкасцю ўсталёўваць праграмы."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Калі доступ да прыватнай прасторы заблакіраваны, праграмы з яе не паказваюцца ў менеджары дазволаў, на панэлі кіравання доступам і ў іншых наладах.\n\nПрыватную прастору немагчыма перамясціць на іншую прыладу. Для кожнай прылады трэба будзе наладжваць асобную прыватную прастору.\n\nДоступ да прыватнай прасторы можа атрымаць чалавек, які ўсталюе на вашай прыладзе шкодныя праграмы або падключыць яе да камп\'ютара."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Усталюйце праграмы"</b>\n"Усталюйце праграмы, якія будуць заставацца прыватнымі дзякуючы прасторы"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Што трэба мець на ўвазе"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Пры заблакіраваным доступе да прасторы дададзеныя ў яе праграмы перастаюць працаваць"</b>\n"Калі доступ да прасторы заблакіраваны, дададзеныя ў яе праграмы перастаюць працаваць і апавяшчэнні з іх не паказваюцца"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Даведацца больш пра прыватную прастору"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Гэты працэс зойме крыху часу"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Ідзе наладжванне прыватнай прасторы…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Вы можаце задаць спосаб разблакіроўкі асобна для прыватнай прасторы або выкарыстоўваць той, з дапамогай якога вы выконваеце разблакіроўку прылады"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Выкарыстоўваць спосаб, выбраны для экрана"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Выбраць новы спосаб разблакіроўкі"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Пачакайце…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Пачакайце…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Гатова!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Каб знайсці прыватную прастору, перайдзіце да спіса праграм і прагартайце ўніз"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Гатова"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Задайце PIN-код для прыватнай прасторы"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Задайце пароль для прыватнай прасторы"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Узор разблакіроўкі для прыват. прасторы"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Стварыце Уліковы запіс Google, каб абараніць свае даныя"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"На наступным экране вы зможаце ўвайсці ва ўліковы запіс, каб выкарыстоўваць яго ў прыватнай прасторы"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Стварыце асобны ўліковы запіс, каб даныя не пападалі за межы вашай прыватнай прасторы. Напрыклад:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Сінхранізаваныя фота, файлы, электронныя лісты, кантакты, падзеі ў календары і іншыя даныя"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Рэкамендацыі і гісторыя спампоўвання праграм"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Гісторыя прагляду сайтаў, закладкі і захаваныя паролі"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Змесціва, прапанаванае з улікам вашых дзеянняў у праграмах з прыватнай прасторы"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Блакіроўка"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Хаванне"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Вы можаце дадаць да <xliff:g id="COUNT">%d</xliff:g> адбіткаў пальца"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Сертыфікат сістэмы"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Замацоўванне сертыфіката"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Інфармацыя аб сетцы"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Гэта сетка выкарыстоўвае ўстарэлы пратакол бяспекі WEP з нізкім узроўнем абароны"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Маска падсеткі"</string>
<string name="server_name_title" msgid="7257095185810299066">"Назва сервера"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Тып"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC-адрас Wi‑Fi прылады"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Адрас Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Серыйны нумар"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Час працы пасля апошняй загрузкі"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Час працы пасля апошняй загрузкі"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Дата вырабу"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Дата першага выкарыстання"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Колькасць цыклаў"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Дотык унізе справа"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Націсніце правы ніжні вугал сэнсарнай панэлі, каб убачыць больш параметраў"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Хуткасць указальніка"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Стыль заліўкі паказальніка"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Змяніць стыль заліўкі на чорны"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Змяніць стыль заліўкі на зялёны"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Змяніць стыль заліўкі на жоўты"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Змяніць стыль заліўкі на ружовы"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Змяніць стыль заліўкі на сіні"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Даведацца пра жэсты сэнсарнай панэлі"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"сэнсарная панэль, мыш, курсор, прагартаць, правесці пальцам, націснуць правай кнопкай мышы, націснуць, націсканне, паказальнік"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"націснуць правай кнопкай мышы, дакрануцца, націснуць, дотык"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ніводнага}=1{Зададзены 1 расклад}one{Зададзены # расклад}few{Зададзена # расклады}many{Зададзена # раскладаў}other{Зададзена # раскладу}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Не турбаваць"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Прыярытэтныя рэжымы"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Атрымліваць апавяшчэнні толькі ад важных людзей і праграм"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Абмежаванне колькасці непатрэбных апавяшчэнняў"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Уключэнне рэжыму \"Не турбаваць\""</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Дадайце каляндар"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Перайсці да календара"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Па раскладзе"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Задаць расклад"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Расклад"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> гадз <xliff:g id="MINUTES">%2$d</xliff:g> хв"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Расклад"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Выключаць гук тэлефона ў пэўны час"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Правілы рэжыму \"Не турбаваць\""</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Гэта праграма не падтрымлівае пашыраныя налады"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Дадатковыя налады"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Іншыя налады даступныя ўнутры гэтай праграмы"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Рэжым спакою"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Выкарыстанне рэжыму спакою"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Калі вы атрымаеце шмат апавяшчэнняў за кароткі час, прылада абмяжуе гукавыя сігналы і ўсплывальныя вокны на экране. Вы працягнеце атрымліваць звычайныя абвесткі аб выкліках, будзільніках і прыярытэтных размовах, а ўсе дастаўленыя апавяшчэнні зможаце праглядзець на шчытку."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Прымяніць да працоўных профіляў"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Прымяняць да праграм працоўнага профілю"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Дапаможныя VR-сэрвісы"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Выбраныя праграмы"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ніякія"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Усе"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Дазволіць праграмам перавызначаць"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Гэты рэжым не распаўсюджваецца на наступныя праграмы"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Выбраць іншыя праграмы"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Пераключэнне на рэжым \"Толькі будзільнікі\" на адну гадзіну да {time}}one{Пераключэнне на рэжым \"Толькі будзільнікі\" на # гадзіну да {time}}few{Пераключэнне на рэжым \"Толькі будзільнікі\" на # гадзіны да {time}}many{Пераключэнне на рэжым \"Толькі будзільнікі\" на # гадзін да {time}}other{Пераключэнне на рэжым \"Толькі будзільнікі\" на # гадзіны да {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Пераключыцца на рэжым «толькі будзільнікі» да <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Уключыць усе апавяшчэнні"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Перайменаваць"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Змяніць значок"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Змяніць значок"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Заўвага"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Закрыць"</string>
<string name="device_feedback" msgid="5351614458411688608">"Адправіць водгук пра гэту прыладу"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Левая"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Правая"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Чахол"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Акумулятар"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Панель налад"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Прымусова ўключаць рэжым працоўнага стала"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Прымусова ўключаць эксперыментальны рэжым працоўнага стала на дадатковых экранах"</string>
diff --git a/res/values-bg/arrays.xml b/res/values-bg/arrays.xml
index 7726731..712ecab 100644
--- a/res/values-bg/arrays.xml
+++ b/res/values-bg/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 05eb2a8..0f53175 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Прекр. на връзката с у-вото?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Сдвояване на ново устройство"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Автоматично включване отново утре"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Дясно ухо: Сдвояване"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Ляво ухо: Сдвояване"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Сдвояване на другото ухо"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Ляво ухо: Сдвояване"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Настройки за слуховия апарат"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Пряк път, съвместимост със слухови апарати"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Предварително зададени"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Предварително зададено"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Предварително зададените настройки не бяха актуализирани"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудиоизход"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Всичко за аудиоизхода"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Отказ"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Не, благодаря"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Не сега"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Приемам"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Още"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Отключване с лицето ви"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Имайте предвид следното"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Използвайте отпечатъка си, за да отключвате телефона си или да одобрявате покупки.\n\nЗабележка: Не можете да отключвате това устройство с отпечатъка си. За повече информация се свържете с администратора на организацията си."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Отказ"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Не, благодаря"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Не сега"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Приемам"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Да се пропусне ли отпечатъкът?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Настройването на отпечатък отнема само една или две минути. Ако пропуснете тази стъпка, можете да добавите отпечатъка си по-късно от настройките."</string>
@@ -575,9 +576,8 @@
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"Авт. заключване на частното пространство"</string>
<string name="private_space_auto_lock_page_summary" msgid="8679844515655838654">"Частното ви пространство може да се заключва автоматично, ако не сте използвали устройството си за определен период от време"</string>
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"При всяко заключване на устройството"</string>
- <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 мин. до авт. изключване на екрана"</string>
+ <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 мин. след авт. изключване на екрана"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Само след рестартиране на устройството"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Ако използвате различно заключване за частното пространство, може да се наложи да потвърдите, че сте вие, за да отваряте приложенията в него."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Скриване на частното пространство"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Скриване на частното пространство, когато е заключено"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"За да бъде тайно частното пространство на устройството ви, можете да го скриете от списъка с приложения"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Настройване"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Частно пространство"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Скривайте или заключвайте частните приложения в отделно пространство. За допълнителна сигурност използвайте специален профил в Google."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Настройване на частно пространство"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Избиране на профил в Google за пространството ви"</b>\n"Използването на специален профил помага синхронизираните файлове, снимки и имейли да не се показват извън пространството ви"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Начин на работа"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Създаване на профил в Google за пространството ви"</b>\n"Ако използвате отделен профил, синхронизираните файлове, снимки и имейли няма да се показват извън пространството ви"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Задаване на заключване"</b>\n"Заключете пространството си, за да не може да бъде отваряно от други хора"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Инсталиране на приложения"</b>\n"Частното ви пространство има собствен Google Play Магазин, така че лесно да инсталирате приложения."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Когато частното ви пространство е заключено, приложенията в него няма да се показват в мениджъра на разрешенията, таблото за управление на поверителността и други настройки.\n\nЧастното ви пространство не може да бъде възстановено на ново устройство. В такъв случай ще трябва да настроите друго частно пространство.\n\nВсеки, който свърже устройството ви с компютър или инсталира злонамерени приложения на него, би могъл да осъществи достъп до частното ви пространство."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Инсталиране на приложения"</b>\n"Инсталирайте приложенията, които искате да запазите частни в пространството си"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Имайте предвид следното"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Спиране на приложенията при заключване на пространството ви"</b>\n"Когато заключите пространството си, приложенията в него се спират и няма да получавате известия от тях"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Научете повече за частното пространство"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Това ще отнеме известно време"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Частното пространство се настройва…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Можете да зададете нова опция за заключване специално за частното пространство или да използвате тази, с която отключвате устройството си"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Използване на закл. на екрана"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Избиране на нова опция за заключване"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Една секунда…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Една секунда…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Готово!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"За да намерите частното си пространство, отворете списъка с приложения и превъртете надолу"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Готово"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Задайте ПИН код за частното пространство"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Задайте парола за частното пространство"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Задайте фигура за частното пространство"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Създайте си профил в Google, за да запазите поверителността на данните си"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"На следващия екран можете да влезете в профил, за да използвате частното си пространство"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Създайте си специален профил, така че данните да не се показват извън частното пространство, като например:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Синхронизирани снимки, файлове, имейли, контакти, събития от календара и други данни"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"История на изтеглянията и препоръки за приложения"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"История на сърфиране, отметки и запазени пароли"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Предложено съдържание, свързано с активността ви в приложенията в частното пространство"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Разбрах"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Заключване"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Скриване"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Можете да добавите до <xliff:g id="COUNT">%d</xliff:g> отпечатъка"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Системен сертификат"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Фиксиране на сертификати"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Подробно за мрежата"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Тази мрежа използва по-стар протокол за сигурност, наречен WEP, който не е толкова надежден"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Подмрежова маска"</string>
<string name="server_name_title" msgid="7257095185810299066">"Име на сървъра"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Тип"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC адрес за Wi‑Fi на устройството"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Адрес на Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Сериен номер"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Време на активност"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Време на работа"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Дата на производство"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Дата на първото използване"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Брой цикли"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Докосване долу вдясно"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"За още опции докоснете долния десен ъгъл на сензорния панел"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Скорост на курсора"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Стил на запълване на курсора"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Запълване на курсора в черно"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Запълване на курсора в зелено"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Запълване на курсора в жълто"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Запълване на курсора в розово"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Запълване на курсора в синьо"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Жестове със сензорния панел: Урок"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"тракпад, мишка, курсор, превъртане, плъзгане, кликване с десния бутон, кликване, показалец"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"кликване с десния бутон, докосване"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Нито един}=1{Зададен е 1 график}other{Зададени са # графика}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Не безпокойте"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Приоритетни режими"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Получаване на известия само от важни хора и приложения"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ограничаване на прекъсванията"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Включване на режима „Не безпокойте“"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Добавяне на календар"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Използване на календара ви"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"График"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"График"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Заглуш. на телефона в опр. моменти"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Правила за „Не безпокойте“"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Това приложение не поддържа подобрените настройки"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Още настройки"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Още настройки са налице в приложението"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Изчакване за известията"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Използване на режима за изчакване"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Когато получавате много известия за кратък период от време, устройството ви ще свежда до минимум звуковите прекъсвания и изскачащите прозорци на екрана. Ще получавате обичайните сигнали за обажданията, будилниците и разговорите с приоритет и лесно можете да намерите всички доставени известия в падащия панел."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Прилагане към служебните потребителски профили"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Прилагане за приложенията в служебния потребителски профил"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Помощни услуги за VR"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Избрани приложения"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Никои"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Всички"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Разрешаване на приложения да отменят режима"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Приложения, които могат да прекъсват режима"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Избиране на още приложения"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Активиране на режима „Само будилници“ за един час (до {time})}other{Активиране на режима „Само будилници“ за # часа (до {time})}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Активиране на режима „Само будилници“ до <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Активиране на режима „Прекъсване винаги“"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Предупреждение"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Затваряне"</string>
<string name="device_feedback" msgid="5351614458411688608">"Отзиви за устройството"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Лява"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Дясно"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Калъф"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Батерия"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Панел за настройки"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Принудително задаване на настолен режим"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Принудително задаване на експерименталния настолен режим на алтернативни дисплеи"</string>
diff --git a/res/values-bn/arrays.xml b/res/values-bn/arrays.xml
index c88de1c..73619bf 100644
--- a/res/values-bn/arrays.xml
+++ b/res/values-bn/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 2104e9d..7462d06 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ডিভাইসের ডিসকানেক্ট করবেন?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"নতুন ডিভাইস পেয়ার করুন"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ব্লুটুথ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"আগামীকাল আবার অটোমেটিক চালু হবে"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"ডান কানে পেয়ার করুন"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"বাঁ কানে পেয়ার করুন"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"অন্য হিয়ারিং এড পেয়ার করুন"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"বাঁদিকেরটি পেয়ার করুন"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"হিয়ারিং ডিভাইস সংক্রান্ত সেটিংস"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"শর্টকাট, হিয়ারিং এড কম্প্যাটিবিলিটি"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"প্রিসেট"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"প্রিসেট"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"প্রিসেট আপডেট করা যায়নি"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"অডিও আউটপুট"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"অডিও আউটপুট সম্পর্কে"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"বাতিল করুন"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"না থাক"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"এখন নয়"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"আমি সম্মতি জানাচ্ছি"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"আরও"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"আপনার ফেস দিয়ে আনলক করুন"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"মনে রাখবেন"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"আপনার ফোন আনলক বা কেনাকাটাগুলির অনুমোদন করতে আপনার আঙ্গুলের ছাপ ব্যবহার করুন। \n\nদ্রষ্টব্য: আপনি এই ডিভাইসটি আনলক করার জন্য আপনার আঙ্গুলের ছাপ ব্যবহার করতে পারবেন না। আরও তথ্যের জন্য, আপনার প্রতিষ্ঠানের প্রশাসকের সাথে যোগাযোগ করুন।"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"বাতিল করুন"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"না থাক"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"এখন নয়"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"আমি রাজি"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ফিঙ্গারপ্রিন্ট এড়িয়ে যাবেন?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ফিঙ্গারপ্রিন্ট সেট-আপ করতে এক থেকে দুই মিনিট মতো সময় লাগবে। আপনি যদি এড়িয়ে যেতে চান তবে পরে সেটিংসে গিয়ে পরিবর্তন করতে পারবেন।"</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"এটি কীভাবে কাজ করে"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"আপনার পরিচয় যাচাই করার জন্য, \'ফিঙ্গারপ্রিন্ট আনলক\' ফিচার আপনার ফিঙ্গারপ্রিন্টের একটি অনন্য মডেল তৈরি করে। সেট-আপ করার সময় ফিঙ্গারপ্রিন্ট মডেলটি তৈরি করার জন্য, বিভিন্ন দিক থেকে আপনাকে ফিঙ্গারপ্রিন্টের ছবি নিতে হবে।"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"আপনার সন্তানের পরিচয় যাচাই করার জন্য, \'ফিঙ্গারপ্রিন্ট আনলক\' ফিচার তার ফিঙ্গারপ্রিন্টের একটি অনন্য মডেল তৈরি করে। সেটআপ করার সময় এই ফিঙ্গারপ্রিন্ট মডেল তৈরি করার জন্য, বিভিন্ন দিক থেকে তার ফিঙ্গারপ্রিন্টের ছবি নিতে হবে।"</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"সবচেয়ে ভাল ফলাফল পেতে, Google-এর জন্য তৈরি হিসেবে সার্টিফিকেট প্রাপ্ত একটি স্ক্রিন প্রোটেকটর ব্যবহার করুন। অন্য কোনও স্ক্রিন প্রোটেকটর ব্যবহার করলে, আপনার ফিঙ্গারপ্রিন্ট কাজ নাও করতে পারে।"</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"সবচেয়ে ভাল ফলাফল পেতে, Google-এর জন্য তৈরি হিসেবে সার্টিফিকেট প্রাপ্ত একটি স্ক্রিন প্রোটেকটর ব্যবহার করুন। অন্যান্য স্ক্রিন প্রোটেকটর ব্যবহার করলে, আপনার ফিঙ্গারপ্রিন্ট কাজ নাও করতে পারে।"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"সবচেয়ে ভাল ফলাফল পেতে, Google-এর জন্য তৈরি হিসেবে সার্টিফিকেট প্রাপ্ত একটি স্ক্রিন প্রোটেকটর ব্যবহার করুন। অন্য কোনও স্ক্রিন প্রোটেকটর ব্যবহার করলে, আপনার সন্তানের আঙ্গুলের ছাপ কাজ নাও করতে পারে।"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"ঘড়ি আনলক করা"</string>
@@ -557,13 +558,13 @@
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"প্রাইভেট স্পেসের জন্য \'ফিঙ্গারপ্রিন্ট আনলক\'"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"প্রাইভেট স্পেসের জন্য \'ফেস আনলক\'"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"প্রাইভেট স্পেসের জন্য ফেস ও ফিঙ্গারপ্রিন্ট আনলক করার সুবিধা"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"প্রাইভেট স্পেসের জন্য ফিঙ্গারপ্রিন্ট আনলক সেট আপ করুন"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"প্রাইভেট স্পেসের জন্য ফিঙ্গারপ্রিন্ট আনলক সেটআপ করুন"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"অ্যাপে সাইন-ইন বা কেনাকাটায় অনুমোদন করার মতোই ফিঙ্গারপ্রিন্ট ব্যবহার করে প্রাইভেট স্পেস আনলক বা নিজের পরিচয় যাচাই করুন"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"আপনি না চাইলেও, প্রাইভেট স্পেস আপনার আঙুলে ফোন ছুঁইয়ে অন্য কেউ আনলক করতে পারবেন।"</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"আপনার প্রাইভেট স্পেস আনলক করতে বা কেনাকাটা অনুমোদন করতে ফিঙ্গারপ্রিন্ট ব্যবহার করুন"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"প্রাইভেট স্পেসের জন্য ফেস আনলক সেট আপ করুন"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"অ্যাপে সাইন-ইন বা কেনাকাটায় অনুমোদন করার মতোই ফিঙ্গারপ্রিন্ট ব্যবহার করে প্রাইভেট স্পেস আনলক বা নিজের পরিচয় যাচাই করুন"</string>
- <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"ফোন সামনে থেকে দেখলে আপনি না চাইলেও প্রাইভেট স্পেস আনলক হয়ে যাবে। আপনার মতো দেখতে এমন যে কেউ, যেমন আপনার যমজ ভাই বা বোন বা অন্য কেউ, আপনার মুখের সামনে প্রাইভেট স্পেস এনেও আনলক করতে পারবেন।"</string>
+ <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"ফোন সামনে থেকে দেখলে আপনি না চাইলেও প্রাইভেট স্পেস আনলক হয়ে যাবে। আপনার মতো দেখতে এমন যে কেউ, যেমন আপনার যমজ ভাই বা বোন বা অন্য কেউ প্রাইভেট স্পেস আনলক করতে পারবেন। এছাড়া, ডিভাইস আপনার মুখের সামনে এনেও প্রাইভেট স্পেস আনলক করা যাবে।"</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"প্রাইভেট স্পেস আনলক করার জন্য শক্তিশালী প্যাটার্ন, পিন বা পাসওয়ার্ড ব্যবহার করার পরিবর্তে নিজের ফেস ব্যবহার করলে সেটি কম সুরক্ষিত হতে পারে"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"প্রাইভেট স্পেস আনলক করার সময় চোখ খোলা রাখতে হবে। এটি সঠিকভাবে করতে সানগ্লাস খুলে রাখুন।"</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"আপনার প্রাইভেট স্পেস আনলক করতে নিজের ফেস ব্যবহার করুন।\n\nমনে রাখবেন:\nএকবারে আপনি শুধুমাত্র একটি ফেস সেট-আপ করতে পারবেন। অন্য কোনও ফেস যোগ করতে, বর্তমানে থাকা ফেস মুছে দিন।\n\nফোনের দিকে তাকালে, আপনি না চাইলেও সেটি আনলক হয়ে যেতে পারে।\n\nঅন্য কেউ আপনার মুখের সামনে ধরে রেখে ট্যাবলেট আনলক করতে পারেন।\n\nঅনেকটা আপনার মতো দেখতে কেউ, যেমন যমজ ভাই বা বোন, আপনার প্রাইভেট স্পেস আনলক করতে পারেন।"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"প্রতিবার ডিভাইস লক হলে"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"স্ক্রিন টাইমআউটের পরে ৫ মিনিট"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"শুধুমাত্র ডিভাইস রিস্টার্ট হওয়ার পরে"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"প্রাইভেট স্পেস লুকান"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"প্রাইভেট স্পেস লক থাকাকালীন সেটি লুকান"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"আপনার ডিভাইসে যে প্রাইভেট স্পেস আছে সে কথা অন্য লোকজনকে জানানো বন্ধ করতে, এটি আপনার অ্যাপ তালিকা থেকে লুকাতে পারবেন"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"সেট-আপ করুন"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"প্রাইভেট স্পেস"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"প্রাইভেট অ্যাপ আলাদা একটি স্পেসে লুকিয়ে রাখুন বা লক করুন। অতিরিক্ত সুরক্ষার জন্য নির্দিষ্ট Google অ্যাকাউন্ট ব্যবহার করুন।"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"আপনার প্রাইভেট স্পেস সেট-আপ করুন"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"আপনার স্পেসের জন্য Google অ্যাকাউন্ট বেছে নিন"</b>\n"নির্দিষ্ট একটি অ্যাকাউন্ট ব্যবহার করলে সিঙ্ক করা ফাইল, ফটো এবং ইমেল আপনার স্পেসের বাইরে দেখানো হবে না"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"এটি কীভাবে কাজ করে"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"আপনার স্পেসের জন্য Google অ্যাকাউন্ট তৈরি করুন"</b>\n"আপনি নিজের স্পেসের জন্য নির্দিষ্ট অ্যাকাউন্ট ব্যবহার করলে, সেটি স্পেসের বাইরে সিঙ্ক করা ফাইল, ফটো এবং ইমেল দেখানো বন্ধ করতে সহায়তা করে"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"লক সেট করুন"</b>\n"অন্যরা যাতে এই স্পেস খুলতে না পারে সেজন্য আপনার স্পেস লক করুন"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"অ্যাপ ইনস্টল করুন"</b>\n"আপনার প্রাইভেট স্পেস থেকে Play Store অ্যাক্সেস করতে পারবেন যার ফলে আপনি সহজেই অ্যাপ ইনস্টল করতে পারবেন।"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"আপনার প্রাইভেট স্পেস লক থাকাকালীন, সেখানে থাকা অ্যাপ, পার্মিশন ম্যানেজার, প্রাইভেসি ড্যাশবোর্ড এবং অন্যান্য সেটিংসে দেখা যাবে না।\n\nনতুন ডিভাইসে আপনার প্রাইভেট স্পেস ফিরিয়ে আনা যাবে না। আপনি অন্য ডিভাইসে প্রাইভেট স্পেস ব্যবহার করতে চাইলে, আপনাকে অন্য একটি প্রাইভেট স্পেস সেট-আপ করতে হবে।\n\nযদি কেউ আপনার ডিভাইস একটি কম্পিউটারের সাথে কানেক্ট করেন বা ডিভাইসে ক্ষতিকারক অ্যাপ ইনস্টল করেন, তাহলে তিনি আপনার প্রাইভেট স্পেস হয়ত অ্যাক্সেস করতে পারবেন।"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"অ্যাপ ইনস্টল করুন"</b>\n"আপনি নিজের স্পেসে যেসব অ্যাপ ব্যক্তিগত রাখতে চান সেগুলি ইনস্টল করুন"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"মনে রাখবেন"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"আপনি নিজের স্পেস লক করলে অ্যাপ বন্ধ হয়"</b>\n"আপনি নিজের স্পেস লক করলে, আপনার স্পেসে থাকা অ্যাপগুলি বন্ধ হয়ে যাবে এবং আপনি সেগুলি থেকে কোনও বিজ্ঞপ্তি পাবেন না"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"প্রাইভেট স্পেস সম্পর্কে আরও জানুন"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"এর জন্য কিছুক্ষণ সময় লাগতে পারে"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"প্রাইভেট স্পেস সেট-আপ করা হচ্ছে…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"আপনি শুধুমাত্র প্রাইভেট স্পেসের জন্য একটি নতুন লক সেট করতে পারবেন অথবা আপনার ডিভাইস আনলক করতে যে লকটি ব্যবহার করেন সেটি ব্যবহার করা যাবে।"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"স্ক্রিন লক ব্যবহার করুন"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"নতুন লক বেছে নিন"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"একটু অপেক্ষা করুন…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"একটু অপেক্ষা করুন…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"সব রেডি!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"আপনার প্রাইভেট স্পেস খুঁজে দেখতে অ্যাপ তালিকায় যান, তারপর নিচের দিকে স্ক্রল করুন"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"হয়ে গেছে"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"আপনার প্রাইভেট স্পেসের জন্য পিন সেট করুন"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"আপনার প্রাইভেট স্পেসের জন্য পাসওয়ার্ড সেট করুন"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"আপনার প্রাইভেট স্পেসের জন্য প্যাটার্ন সেট করুন"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"আপনার ডেটা ব্যক্তিগত রাখতে Google অ্যাকাউন্ট তৈরি করুন"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"পরবর্তী স্ক্রিনে আপনার প্রাইভেট স্পেসের সাথে ব্যবহার করতে কোনও অ্যাকাউন্টে সাইন-ইন করতে পারবেন"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"প্রাইভেট স্পেসের বাইরে ডেটা দেখতে পাওয়া বন্ধ করতে একটি ডেডিকেটেড অ্যাকাউন্ট তৈরি করুন, যেমন:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"সিঙ্ক করা ফটো, ফাইল, ইমেল, পরিচিতি, ক্যালেন্ডারের ইভেন্ট ও অন্যান্য ডেটা"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"অ্যাপ ডাউনলোড করার ইতিহাস ও সাজেশন"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ব্রাউজিং ইতিহাস, বুকমার্ক ও সেভ করা বুকমার্ক"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"প্রাইভেট স্পেস অ্যাপে আপনার অ্যাক্টিভিটি সম্পর্কিত সাজেস্ট করা কন্টেন্ট"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"বুঝেছি"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"লক"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"লুকান"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"আপনি সর্বাধিক <xliff:g id="COUNT">%d</xliff:g>টি ফিঙ্গারপ্রিন্ট যোগ করতে পারবেন"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"সিস্টেম সার্টিফিকেট"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"সার্টিফিকেট পিন করা হচ্ছে"</string>
<string name="wifi_details_title" msgid="222735438574597493">"নেটওয়ার্কের বিবরণ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"এই নেটওয়ার্ক WEP নামের একটি পুরনো সুরক্ষা প্রোটোকল ব্যবহার করে, যেটি তুলনামূলকভাবে কম সুরক্ষিত"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"সাবনেট মাস্ক"</string>
<string name="server_name_title" msgid="7257095185810299066">"সার্ভারের নাম"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ধরন"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ডিভাইসের ওয়াই-ফাই MAC অ্যাড্রেস"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ব্লুটুথ অ্যাড্রেস"</string>
<string name="status_serial_number" msgid="9060064164331466789">"সিরিয়াল নম্বর"</string>
- <string name="status_up_time" msgid="1274778533719495438">"আপ টাইম"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"আপটাইম"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"তৈরির তারিখ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ব্যবহারের প্রথম তারিখ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"সাইকেল কাউন্ট"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ডানদিকের-নিচে ট্যাপ করা"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"আরও বিকল্পের জন্য টাচপ্যাডের নিচে ডানদিকের কোণায় ট্যাপ করুন"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"পয়েন্টারের গতি"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"পয়েন্টার ফিল স্টাইল"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"পয়েন্টার ফিল স্টাইল বদলে কালো করুন"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"পয়েন্টার ফিল স্টাইল বদলে সবুজ করুন"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"পয়েন্টার ফিল স্টাইল বদলে হলুদ করুন"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"পয়েন্টার ফিল স্টাইল বদলে গোলাপি করুন"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"পয়েন্টার ফিল স্টাইল বদলে নীল করুন"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"টাচপ্যাডের জেসচার সম্পর্কে জানুন"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ট্র্যাকপ্যাড, ট্র্যাক প্যাড, মাউস, কার্সর, স্ক্রল, সোয়াইপ, ডানদিকের বোতামে ক্লিক, ক্লিক, পয়েন্টার"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ডানদিকের বোতামে ক্লিক, ট্যাপ"</string>
@@ -2320,7 +2323,7 @@
<string name="accessibility_hearing_device_pairing_page_title" msgid="6608901091770850295">"হিয়ারিং ডিভাইস পেয়ার করা"</string>
<string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"আপনি এই পৃষ্ঠায় ASHA এবং LE Audio হিয়ারিং ডিভাইসের সাথে পেয়ার করতে পারেন। আপনার হিয়ারিং ডিভাইস চালু আছে কিনা এবং পেয়ার করার জন্য রেডি কিনা তা ভালোভাবে দেখে নিন।"</string>
<string name="accessibility_found_hearing_devices" msgid="637407580358386553">"উপলভ্য হিয়ারিং ডিভাইস"</string>
- <string name="accessibility_found_all_devices" msgid="7817834722148556520">"হিয়ারিং ডিভাইস দেখতে পাচ্ছেন না?"</string>
+ <string name="accessibility_found_all_devices" msgid="7817834722148556520">"আপনার হিয়ারিং ডিভাইস দেখতে পাচ্ছেন না?"</string>
<string name="accessibility_list_all_devices_title" msgid="161495343959211216">"আরও ডিভাইস দেখুন"</string>
<string name="accessibility_audio_adjustment_title" msgid="1332113739136802997">"অডিও অ্যাডজাস্টমেন্ট"</string>
<string name="accessibility_toggle_audio_description_preference_title" msgid="8916473886256061220">"অডিও বিবরণ"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{একটিও নেই}=1{১টি শিডিউল সেট করা হয়েছে}one{#টি শিডিউল সেট করা হয়েছে}other{#টি শিডিউল সেট করা হয়েছে}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"বিরক্ত করবে না"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"অগ্রাধিকার মোড"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"শুধু গুরুত্বপূর্ণ লোকজন এবং অ্যাপ থেকে বিজ্ঞপ্তি পান"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"বিরক্তিকর কন্টেন্ট বন্ধ করা"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\'বিরক্ত করবে না\' মোড চালু করুন"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"এডিট করুন"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"সময়সূচি"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"সময়সূচি"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"অটোমেটিক চালু করা হয়"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"একটি ক্যালেন্ডার যোগ করুন"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"আপনার ক্যালেন্ডার ব্যবহার করুন"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"শিডিউল করুন"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"সময়সূচি"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"নির্দিষ্ট সময়ে ফোন সাইলেন্ট করুন"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"এই অ্যাপে উন্নত সেটিংস কাজ করে না"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"আরও সেটিংস"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"এই অ্যাপের মধ্যে আরও সেটিংস উপলভ্য আছে"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"কুলডাউন"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"কুলডাউন ব্যবহার করুন"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"আপনি যখন অল্প সময়ের মধ্যে অনেক বিজ্ঞপ্তি পাবেন, তখন আপনার ডিভাইস বিজ্ঞপ্তির জন্য হওয়া শব্দ কমিয়ে দেবে এবং স্ক্রিনে কম পপ-আপ দেখাবে। কল, অ্যালার্ম এবং গুরুত্বপূর্ণ কথোপকথন সম্পর্কিত বিজ্ঞপ্তিগুলি এখনও আগের মতোই পাওয়া যাবে। এছাড়াও, আপনি যেসব বিজ্ঞপ্তি পেয়েছেন তা সহজেই \'শেড\'-এ পাবেন।"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"অফিস প্রোফাইলে প্রয়োগ করুন"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"অফিস প্রোফাইল অ্যাপে প্রয়োগ করুন"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"ভিআর(VR) সহায়তাকারী পরিষেবা"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"বেছে নেওয়া অ্যাপ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"কোনওটিই নয়"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"সব"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"অ্যাপ ওভাররাইডের অনুমতি দিন"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"যে অ্যাপগুলি \'বিরক্ত করবে না\' মোড এড়িয়ে নিজের কাজ করতে পারে"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"আরও অ্যাপ বেছে নিন"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} পর্যন্ত এক ঘণ্টার জন্য অ্যালার্ম পরিবর্তন করুন}one{{time} পর্যন্ত # ঘণ্টার জন্য অ্যালার্ম পরিবর্তন করুন}other{{time} পর্যন্ত # ঘণ্টার জন্য অ্যালার্ম পরিবর্তন করুন}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"শুধুমাত্র <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> পর্যন্ত অ্যালার্মগুলি পরিবর্তন করুন"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"সর্বদা বাধা দেওয়াতে পরিবর্তন করুন"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"সতর্কতা"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"বন্ধ করুন"</string>
<string name="device_feedback" msgid="5351614458411688608">"এই ডিভাইসের সম্পর্কে মতামত পাঠান"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"বাঁদিক"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ডান"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"কেস"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ব্যাটারি"</string>
<string name="settings_panel_title" msgid="346363079938069215">"সেটিংস প্যানেল"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ফোর্স ডেস্কটপ মোড"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"সেকেন্ডারি ডিসপ্লেতে ফোর্স এক্সপেরিমেন্টাল ডেস্কটপ মোড চালু করা আছে"</string>
diff --git a/res/values-bs/arrays.xml b/res/values-bs/arrays.xml
index 93ee2fe..2b34f3d 100644
--- a/res/values-bs/arrays.xml
+++ b/res/values-bs/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 24816cb..133c096 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Želite li prekinuti vezu s uređajem?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Uparite novi uređaj"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatski uključi ponovo sutra"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Upari desno uho"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Upari lijevo uho"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Uparite drugo uho"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Upari lijevo uho"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Postavke slušnog aparata"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Prečica, kompatibilnost sa slušnim aparatom"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Zadane postavke"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Zadana postavka"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Ažuriranje zadanih postavki nije uspjelo"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Izlaz zvuka"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Informacije o izlazu zvuka"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Otkaži"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ne, hvala"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ne sada"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Prihvatam"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Više"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Otključajte pomoću lica"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Napomena"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Pomoću otiska prsta otključavajte telefon ili odobravajte kupovinu.\n\nNapomena: otisak prsta ne možete koristiti za otključavanje ovog uređaja. Za više informacija, obratite se administratoru svoje organizacije"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Otkaži"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ne, hvala"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ne sada"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Prihvatam"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Preskočiti otisak prsta?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Postavljanje otiska prsta traje svega minutu ili dvije. Ako ovo preskočite, otisak prsta možete dodati kasnije u postavkama."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Kako funkcionira"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Otključavanje otiskom prsta kreira jedinstveni model vašeg otiska prsta radi potvrde vašeg identiteta. Da kreirate ovaj model otiska prsta tokom postavljanja, trebate snimiti slike otiska prsta u različitim položajima."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Otključavanje otiskom prsta kreira jedinstveni model otiska prsta vašeg djeteta radi potvrde vašeg identiteta. Da kreira ovaj model otiska prsta tokom postavljanja, dijete treba snimiti slike otiska prsta u različitim položajima."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Za najbolje rezultate koristite zaštitu ekrana koja ima oznaku Proizvedeno za Google. Moguće je da vaš otisak prsta neće funkcionirati s drugim zaštitama ekrana."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Za najbolje rezultate koristite zaštitu ekrana koja ima certifikat Proizvedeno za Google. Moguće je da vaš otisak prsta neće funkcionirati s drugim zaštitama ekrana."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Za najbolje rezultate koristite zaštitu ekrana koja ima oznaku Proizvedeno za Google. Moguće je da otisak prsta vašeg djeteta neće funkcionirati s drugim zaštitama ekrana."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Otključavanje pomoću sata"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Svaki put kada se ekran zaključa"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minuta nakon isteka vremena ekrana"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Samo kada se uređaj ponovo pokrene"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Sakrij privatni prostor"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Sakrij privatni prostor kada je zaključan"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Kako drugi ne bi saznali da imate privatni prostor na uređaju, možete ga sakriti s liste aplikacija"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Postavi"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privatni prostor"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Sakrijte ili zaključajte privatne aplikacije u zasebnom prostoru. Koristite namjenski Google račun radi dodatne sigurnosti."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Postavite privatni prostor"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Odaberite Google račun za prostor"</b>\n"Korištenje namjenskog računa pomaže da se sinhronizirani fajlovi, fotografije i e-poruke ne pojavljuju izvan prostora"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Kako radi"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Kreirajte Google račun za svoj prostor"</b>\n"Ako koristite namjenski račun, to pomaže da se sinhronizirani fajlovi, fotografije i e-poruke prestanu pojavljivati izvan vašeg prostora"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Postavite zaključavanje"</b>\n"Zaključajte prostor da onemogućite drugim osobama da ga otvore"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instalirajte aplikacije"</b>\n"Privatni prostor ima svoju Play trgovinu, pa možete lako instalirati aplikacije."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Aplikacije u privatnom prostoru se neće prikazivati u upravitelju odobrenja, na kontrolnoj tabli za privatnost ni u drugim postavkama kada je privatni prostor zaključan.\n\nPrivatni prostor se ne može vratiti na novi uređaj. Morate postaviti drugi privatni prostor ako ga želite koristiti na drugom uređaju.\n\nAko neko poveže vaš uređaj s računarom ili na njega instalira zlonamjerne aplikacije, možda će moći pristupati vašem privatnom prostoru."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instalirajte aplikacije"</b>\n"Instalirajte aplikacije koje želite da budu privatne u vašem prostoru"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Imajte na umu"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikacije se zaustavljaju kada zaključate prostor"</b>\n"Kada zaključate prostor, aplikacije u prostoru se zaustavljaju i od njih više nećete primati obavještenja"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Saznajte više o privatnom prostoru"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Ovo će potrajati nekoliko trenutaka"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Postavljanje privatnog prostora…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Možete postaviti novo zaključavanje samo za privatni prostor ili koristiti isto zaključavanje koje koristite za otključavanje uređaja"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Koristi zaključavanje ekrana"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Odaberite novi način zaključavanja"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Samo trenutak…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Samo trenutak…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Sve je spremno!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Da pronađete privatni prostor, idite na listu aplikacija i kližite nadolje"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Gotovo"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Postavite PIN za privatni prostor"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Postavite lozinku za privatni prostor"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Postavite uzorak za privatni prostor"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Kreirajte Google račun da zaštitite privatnost podataka"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na sljedećem ekranu se možete prijaviti na račun da ga koristite s privatnim prostorom"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Kreirajte namjenski račun da spriječite pojavljivanje podataka izvan privatnog prostora, kao što su:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"sinhronizirane slike, fajlovi, e-poruke, kontakti, događaji u kalendaru i drugi podaci"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"historija preuzimanja aplikacija i preporuke"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"historija pregledanja, oznake i sačuvane lozinke"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"predloženi sadržaj povezan s aktivnošću u aplikacijama u privatnom prostoru"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Razumijem"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Zaključaj"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Sakrij"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Broj otisaka prstiju koje možete dodati: <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -665,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Odaberite zaključavanje ekrana"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Odaberite novo zaključavanje ekrana"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Odaberite zaključavanje za poslovne aplikacije"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Odaberite novo poslovno zaklj."</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Odaberite novo zaključavanje radnog profila"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Za dodatnu sigurnost postavite alternativni način zaključavanja ekrana"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Odaberite rezervni način zaključavanja ekrana"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Ako zaboravite radnju za zaključavanje ekrana, vaš IT administrator je neće moći poništiti."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certifikat sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Kačenje certifikata"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalji o mreži"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ova mreža koristi stariji sigurnosni protokol pod nazivom WEP protokol, koji je manje siguran"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska podmreže"</string>
<string name="server_name_title" msgid="7257095185810299066">"Naziv servera"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Vrsta"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC adresa uređaja za WiFi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth adresa"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serijski broj"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Vrijeme aktivnosti"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Vrijeme aktivnosti"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Datum proizvodnje"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum prve upotrebe"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Broj ciklusa"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Dodir dolje desno"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Dodirnite donji desni ugao dodirne podloge za više opcija"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Brzina pokazivača"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Stil ispune pokazivača"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Promjena ispune pokazivača u crnu"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Promjena ispune pokazivača u zelenu"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Promjena ispune pokazivača u žutu"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Promjena ispune pokazivača u ružičastu"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Promjena ispune pokazivača u plavu"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Naučite pokrete dodirne podloge"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"dodirna tabla, tabla na dodir, miš, kursor, klizanje, prevlačenje, desni klik, klik, pokazivač"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"desni klik, dodir"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nema}=1{Postavljen je 1 raspored}one{Postavljen je # raspored}few{Postavljena su # rasporeda}other{Postavljeno je # rasporeda}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ne ometaj"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritetni načini rada"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Primajte obavještenja samo od važnih osoba i aplikacija"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ograničite ometanja"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Uključi način rada Ne ometaj"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Uredi"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Rasporedi"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Raspored"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Automatski uključi"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Dodajte kalendar"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Koristite kalendar"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Raspored"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Postavite raspored"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Raspored"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> h <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Raspored"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Utišaj telefon u određeno vrijeme"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Postavite pravila za način rada Ne ometaj"</string>
@@ -3518,7 +3522,7 @@
<string name="lock_screen_notifs_redact_work" msgid="3833920196569208430">"Obavještenja o osjetljivom sadržaju radnog profila"</string>
<string name="lock_screen_notifs_redact_work_summary" msgid="3238238380405430156">"Prikaz osjetljivog sadržaja radnog profila kada je uređaj zaključan"</string>
<string name="lock_screen_notifications_summary_show" msgid="6540443483088311328">"Prikaži sav sadržaj obavještenja"</string>
- <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"Prikaz osjetljivog sadržaja kada je ekran otključan"</string>
+ <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"Prikaži osjetljiv sadržaj kada je ekran otključan"</string>
<string name="lock_screen_notifications_summary_disable" msgid="3388290397947365744">"Uopće ne prikazuj obavještenja"</string>
<string name="lock_screen_notifications_interstitial_message" msgid="6326229471276829730">"Šta želite da vam zaključani ekran prikazuje?"</string>
<string name="lock_screen_notifications_interstitial_title" msgid="1360388192096354315">"Zaključani ekran"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ova aplikacija ne podržava poboljšane postavke"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Više postavki"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Više postavki dostupno je unutar aplikacije"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Mirovanje"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Koristite mirovanje"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kada unutar kratkog vremenskog raspona dobijete mnogo obavještenja, uređaj će minimalizirati zvučne prekide i skočne prozore na ekranu. Pozivi, alarmi i prioritetni razgovori će se i dalje normalno oglašavati, a sva isporučena obavještenja ćete moći lako pronaći na lokaciji za obavještenja."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Primijeni na poslovne profile"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Primijenite na aplikacije radnog profila"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Usluge pomagača za VR"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Odabrane aplikacije"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nijedna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Sve"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Dozvolite aplikacijama da zanemaruju"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikacije koje vas mogu prekinuti"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Odaberite još aplikacija"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Promjena na alarme samo na jedan sat do {time}}one{Promjena na alarme samo na # sat do {time}}few{Promjena na alarme samo na # sata do {time}}other{Promjena na alarme samo na # sati do {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Pređi na postavku Samo alarmi do <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Promijeniti u uvijek prekini"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Promijeni naziv"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Promijeni ikonu"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Promijenite ikonu"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Upozorenje"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Zatvori"</string>
<string name="device_feedback" msgid="5351614458411688608">"Slanje povratnih informacija o uređaju"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Lijeva"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Desni"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Maska"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Baterija"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Ploča s postavkama"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Nametni način rada na računaru"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Nametanje eksperimentalnog načina rada na računaru na sekundarnim ekranima"</string>
@@ -4858,10 +4871,10 @@
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Potrebno je otključavanje programa za učitavanje operativnog sistema za način rada od 16 kB"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Na ovom uređaju program za učitavanje operativnog sistema treba biti otključan prije korištenja opcije za programere sa 16 kB. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Svi korisnički podaci i postavke će biti izbrisani kada se aktivira način rada od 16 kB. Kada se program za učitavanje operativnog sistema otključa, aktiviranje opcije od 16 kB zahtijevat će dva ponovna pokretanja. Kada ste u ovom načinu rada, možete se prebacivati iz načina rada od 4 kB u način rada od 16 kB jednim ponovnim pokretanjem. Neke funkcije će biti onemogućene u ovim načinima rada, pa neke aplikacije možda neće funkcionirati. Da vratite uređaj u proizvodni način rada, trebate vratiti u način rada od 4 kB a zatim zaključati OEM/program za učitavanje operativnog sistema (čime se uređaj vraća na fabričke postavke). Otključajte program za učitavanje operativnog sistema i pokušajte ponovo. Uputstva za ovo potražite na <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Korištenje načina rada od 4 kB neovisnog o veličini stranice"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"U načinu ste rada od 4 kB neovisnom o veličini stranice. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Neke funkcije će biti onemogućene u ovim načinima, pa neke aplikacije možda neće funkcionirati. Da ponovo uđete u proizvodni način rada, morate otključati program za učitavanje operativnog sistema na uređaju. Dodirnite da pročitate više."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"U načinu ste rada od 4 kB neovisnom o veličini stranice. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Neke funkcije će biti onemogućene u ovim načinima, pa neke aplikacije možda neće funkcionirati. Da ponovo uđete u proizvodni način rada, morate otključati program za učitavanje operativnog sistema na uređaju. To će ponovo vratiti uređaj na fabričke postavke i vratiti proizvodne postavke. Nakon što se uređaj uspješno pokrene u Androidu, onemogućite OEM otključavanje u Opcijama za programere. Ako se uređaj ne pokrene u Androidu ili ako je nestabilan, reprogramirajte uređaj najnovijim fabričkim slikama sa <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ili upotrijebite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> i odaberite \"Uništi sve podatke na uređaju\"\', \"Zaključaj program za učitavanje operativnog sistema\" i \"Prisilno programiraj sve particije\"."</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"U načinu ste rada od 4 kB neovisnom o veličini stranice. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Neke funkcije će biti onemogućene u ovim načinima, pa neke aplikacije možda neće funkcionirati. Da ponovo uđete u proizvodni način rada, morate zaključati program za učitavanje operativnog sistema na uređaju. Dodirnite da pročitate više."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"U načinu ste rada od 4 kB neovisnom o veličini stranice. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Neke funkcije će biti onemogućene u ovim načinima, pa neke aplikacije možda neće funkcionirati. Da ponovo uđete u proizvodni način rada, morate zaključati program za učitavanje operativnog sistema na uređaju. To će ponovo vratiti uređaj na fabričke postavke i vratiti proizvodne postavke. Nakon što se uređaj uspješno pokrene u Androidu, onemogućite OEM otključavanje u Opcijama za programere. Ako se uređaj ne pokrene u Androidu ili ako je nestabilan, reprogramirajte uređaj najnovijim fabričkim slikama sa <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ili upotrijebite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> i odaberite \"Uništi sve podatke na uređaju\"\', \"Zaključaj program za učitavanje operativnog sistema\" i \"Prisilno programiraj sve particije\"."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Korištenje načina rada od 16 kB neovisnog o veličini stranice"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"U načinu ste rada od 16 kB neovisnom o veličini stranice. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Neke funkcije će biti onemogućene u ovim načinima, pa neke aplikacije možda neće funkcionirati. Da ponovo uđete u proizvodni način rada, morate se vratiti u način rada od 4K i zatim otključati program za učitavanje operativnog sistema na uređaju. Dodirnite da pročitate više."</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"U načinu ste rada od 16 kB neovisnom o veličini stranice. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Neke funkcije će biti onemogućene u ovim načinima, pa neke aplikacije možda neće funkcionirati. Da ponovo uđete u proizvodni način rada, morate se vratiti u način rada od 4 kB i zatim zaključati program za učitavanje operativnog sistema na uređaju. Dodirnite da pročitate više."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"U načinu ste rada od 16 kB neovisnom o veličini stranice. Integritet softvera se ne može garantirati u ovom načinu rada i svi podaci pohranjeni na telefonu dok je program za učitavanje operativnog sistema otključan bi mogli biti izloženi riziku. Neke funkcije će biti onemogućene u ovim načinima, pa neke aplikacije možda neće funkcionirati. Da ponovo uđete u proizvodni način rada, morate se vratiti u način rada od 4K i zatim otključati program za učitavanje operativnog sistema na uređaju. To će ponovo vratiti uređaj na fabričke postavke i vratiti proizvodne postavke. Nakon što se uređaj uspješno pokrene u Androidu, onemogućite OEM otključavanje u Opcijama za programere. Ako se uređaj ne pokrene u Androidu ili ako je nestabilan, reprogramirajte uređaj najnovijim fabričkim slikama sa <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ili upotrijebite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> i odaberite \"Uništi sve podatke na uređaju\"\', \"Zaključaj program za učitavanje operativnog sistema\" i \"Prisilno programiraj sve particije\"."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Način rada od 16 kB neovisan o veličini stranice"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Pročitajte više"</string>
@@ -4915,7 +4928,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Dozvoli Mock Modem"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Dozvolite ovom uređaju da pokrene uslugu Mock Modem za instrumentacijsko testiranje. Nemojte to omogućavati za vrijeme normalnog korištenja telefona"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Onemogući zaštite tokom dijeljenja ekrana"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Isključite zaštite sistema za osjetljivi sadržaj aplikacija radi predstojeće sesije dijeljenja ekrana"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Isključite zaštite sistema za osjetljivi sadržaj aplikacija za predstojeće sesije dijeljenja ekrana"</string>
<string name="media_controls_title" msgid="403271085636252597">"Mediji"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Zakači plejer medija"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Za brzo nastavljanje reprodukcije plejer medija ostaje otvoren u Brzim postavkama"</string>
diff --git a/res/values-ca/arrays.xml b/res/values-ca/arrays.xml
index 9b23023..730ab35 100644
--- a/res/values-ca/arrays.xml
+++ b/res/values-ca/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index c552524..aacebe0 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Vols desconnectar el dispositiu?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Vincula un dispositiu nou"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Torna\'l a activar automàticament demà"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Vincula la dreta"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Vincula l\'esquerra"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Vincula l\'altra orella"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Vincula l\'esquerra"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Configuració de l\'audiòfon"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Drecera, compatibilitat amb audiòfons"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Valors predefinits"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Valors predefinits"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"No s\'ha pogut actualitzar el valor predefinit"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Sortida d\'àudio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Sobre la sortida d\'àudio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancel·la"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No, gràcies"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ara no"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Accepto"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Més"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Desbloqueja amb la cara"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Nota important"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Utilitza l\'empremta digital per desbloquejar el telèfon o aprovar compres.\n\nNota: no pots fer servir l\'empremta digital per desbloquejar aquest dispositiu. Per obtenir més informació, contacta amb l\'administrador de la teva organització."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancel·la"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No, gràcies"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ara no"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Accepto"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Vols ometre l\'empremta digital?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Només tardaràs un parell de minuts a configurar l\'empremta digital. Si omets aquest pas, pots afegir-la més endavant a Configuració."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Com funciona"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Desbloqueig amb empremta digital crea un model únic de la teva empremta digital per verificar la teva identitat. Per crear-lo durant la configuració, es prendran imatges de la teva empremta digital des de diverses posicions."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Desbloqueig amb empremta digital crea un model únic de l\'empremta digital del teu fill per verificar la seva identitat. Per crear aquest model durant la configuració, es farà fotos de l\'empremta digital des de diverses posicions."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Per obtenir els millors resultats, utilitza un protector de pantalla que tingui la certificació Made For Google. Si utilitzes altres protectors de pantalla, pot ser que l\'empremta digital no funcioni."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Per obtenir els millors resultats, utilitza un protector de pantalla que tingui la certificació Made For Google. Si utilitzes altres protectors de pantalla, pot ser que la teva empremta digital no funcioni."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Per obtenir els millors resultats, utilitza un protector de pantalla que tingui la certificació Made For Google. Si utilitzes altres protectors de pantalla, pot ser que l\'empremta digital del teu fill o filla no funcioni."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Desbloqueig amb rellotge"</string>
@@ -566,7 +567,7 @@
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Si mires el telèfon, es pot desbloquejar l\'espai privat sense voler. També pot desbloquejar l\'espai privat una persona que s\'assembli molt a tu (per exemple, un bessó idèntic), o algú que t\'apropi el dispositiu a la cara."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Utilitzar la cara per desbloquejar l\'espai privat pot ser menys segur que un bon patró, PIN o contrasenya"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Per desbloquejar l\'espai privat, has de tenir els ulls oberts. Per obtenir els millors resultats, treu-te les ulleres de sol."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Utilitza la cara per desbloquejar l\'espai privat.\n\nTingues en compte el següent:\nNomés pots tenir configurada una cara alhora. Per afegir una altra cara, suprimeix l\'actual.\n\nSi mires el telèfon, es pot desbloquejar sense voler.\n\nUna altra persona pot desbloquejar l\'espai privat si et posa el dispositiu davant de la cara.\n\nAlgú que s\'assembli molt a tu, com ara un bessó idèntic, pot desbloquejar l\'espai privat."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Utilitza la cara per desbloquejar l\'espai privat.\n\nTingues en compte el següent:\nNomés pots tenir configurada una cara. Per afegir-ne una altra, suprimeix l\'actual.\n\nSi mires el telèfon, es pot desbloquejar sense voler.\n\nUna altra persona pot desbloquejar l\'espai privat si et posa el dispositiu davant de la cara.\n\nAlgú que s\'assembli molt a tu, com ara un bessó idèntic, pot desbloquejar l\'espai privat."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"En utilitzar Desbloqueig facial, sol·licita sempre una confirmació"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Formes de desbloqueig"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"El mateix bloqueig de pantalla que el del dispositiu"</string>
@@ -575,10 +576,8 @@
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"Bloqueja l\'espai privat automàticament"</string>
<string name="private_space_auto_lock_page_summary" msgid="8679844515655838654">"Pots bloquejar l\'espai privat automàticament si no has utilitzat el dispositiu durant un temps"</string>
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Cada vegada que es bloquegi el dispositiu"</string>
- <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min després de temps d\'espera de pantalla"</string>
+ <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min després del temps d\'espera de la pantalla"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Només després de reiniciar el dispositiu"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Amaga l\'espai privat"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Amaga l\'espai privat quan està bloquejat"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Per evitar que altres persones sàpiguen que tens un espai privat al dispositiu, pots amagar-lo de la llista d\'aplicacions"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configura"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espai privat"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Amaga o bloqueja les aplicacions privades en un espai separat. Utilitza un Compte de Google dedicat per a més seguretat."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configura l\'espai privat"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Tria un Compte de Google per a l\'espai"</b>\n"Utilitzar un compte dedicat ajuda a evitar que els fitxers, les fotos i els correus electrònics sincronitzats es mostrin fora de l\'espai."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Com funciona"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crea un Compte de Google per a l\'espai"</b>\n"Si utilitzes un compte dedicat, t\'ajudarà a evitar que els fitxers, les fotos i els correus electrònics sincronitzats es mostrin fora de l\'espai"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Defineix un bloqueig"</b>\n"Bloqueja l\'espai per evitar que altres persones l\'obrin."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instal·la aplicacions"</b>\n"L\'espai privat té la seva pròpia Play Store perquè puguis instal·lar aplicacions fàcilment."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Les aplicacions de l\'espai privat no es mostraran al gestor de permisos, al tauler de privadesa ni en altres opcions de configuració quan l\'espai privat estigui bloquejat.\n\nL\'espai privat no es pot restaurar en un dispositiu nou. Caldrà que configuris un altre espai privat si el vols utilitzar en un altre dispositiu.\n\nQualsevol persona que connecti el teu dispositiu a un ordinador o instal·li aplicacions malicioses al teu dispositiu podria accedir a l\'espai privat."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instal·la aplicacions"</b>\n"Instal·la aplicacions que vulguis mantenir privades a l\'espai"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Nota important"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Les aplicacions s\'aturen quan bloqueges l\'espai"</b>\n"Quan bloquegis l\'espai, les aplicacions de l\'espai s\'aturaran i no en rebràs notificacions"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Més informació sobre l\'espai privat"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Aquesta acció tardarà una estona"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"S\'està configurant l\'espai privat…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Pots definir un bloqueig nou només per a l\'espai privat o utilitzar el mateix que fas servir per desbloquejar el dispositiu"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Utilitza el bloqueig de pantalla"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Tria un bloqueig nou"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Un moment…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Un moment…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tot a punt!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Per trobar l\'espai privat, ves a la llista d\'aplicacions i desplaça\'t cap avall"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Fet"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Defineix un PIN per a l\'espai privat"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Defineix contrasenya per a l\'espai privat"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Defineix un patró per a l\'espai privat"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crea un Compte de Google per ajudar a mantenir la privacitat de les teves dades"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"A la pantalla següent pots iniciar la sessió en un compte per utilitzar-lo a l\'espai privat"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crea un compte dedicat perquè fora de l\'espai privat no apareguin dades com ara:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotos, fitxers, correus, contactes, esdeveniments del calendari i altres dades sincronitzades"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historial d\'aplicacions baixades i recomanacions"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historial de navegació, adreces d\'interès i contrasenyes desades"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Contingut suggerit relacionat amb la teva activitat en aplicacions de l\'espai privat"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Entesos"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloqueja"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Amaga"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Pots afegir un màxim de <xliff:g id="COUNT">%d</xliff:g> empremtes digitals"</string>
@@ -796,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{Ha de contenir com a mínim 1 caràcter que no sigui una lletra}other{Ha de contenir com a mínim # caràcters que no siguin lletres}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{Ha de contenir com a mínim 1 caràcter que no sigui un número}other{Ha de contenir com a mínim # caràcters que no siguin números}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"L\'administrador del dispositiu no permet que s\'utilitzi una contrasenya recent"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"No es permet cap seqüència de dígits ascendents, descendents ni repetits"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"No es permeten les seqüències de dígits ascendents, descendents o repetits"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"Confirma"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"Esborra"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"El bloqueig de pantalla ja s\'ha canviat. Torna-ho a provar amb el bloqueig de pantalla nou."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificat del sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fixació de certificats"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalls de la xarxa"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Aquesta xarxa utilitza un protocol de seguretat més antic anomenat \"WEP\", que és menys segur"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Màscara de la subxarxa"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nom del servidor"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipus"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adreça MAC de la xarxa Wi‑Fi del dispositiu"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adreça de Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Número de sèrie"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Temps d\'activitat"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Temps d\'activitat"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data de fabricació"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data del primer ús"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Nombre de cicles"</string>
@@ -1631,12 +1628,12 @@
<string name="lockpassword_choose_your_pin_message" msgid="7230665212172041837">"Per motius de seguretat, cal que defineixis un PIN"</string>
<string name="lockpassword_choose_your_pin_header_for_fingerprint" msgid="2783879743691792556">"Per utilitzar l\'empremta, defineix un PIN"</string>
<string name="lockpassword_confirm_your_password_header" msgid="6132312814563023990">"Torna a introduir la contrasenya"</string>
- <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Reintrodueix la contrasenya de treball"</string>
+ <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Torna a introduir la contrasenya de treball"</string>
<string name="lockpassword_confirm_your_work_password_header" msgid="4647071231702288305">"Introdueix la contrasenya de la feina"</string>
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"Confirma el patró"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"Introdueix el patró de la feina"</string>
<string name="lockpassword_confirm_your_pin_header" msgid="2241722970567131308">"Torna a introduir el PIN"</string>
- <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Reintrodueix el PIN de treball"</string>
+ <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Torna a introduir el PIN de treball"</string>
<string name="lockpassword_confirm_your_work_pin_header" msgid="4229765521391960255">"Introdueix el PIN de la feina"</string>
<string name="lockpassword_confirm_passwords_dont_match" msgid="2100071354970605232">"Les contrasenyes no coincideixen"</string>
<string name="lockpassword_confirm_pins_dont_match" msgid="1103699575489401030">"Els PIN no coincideixen"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Toc a la part inferior dreta"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Toca l\'extrem inferior dret del ratolí per veure més opcions"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocitat del punter"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Estil d\'emplenament del punter"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Canvia emplenament del punter a negre"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Canvia emplenament del punter a verd"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Canvia emplenament del punter a groc"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Canvia emplenament del punter a rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Canvia emplenament del punter a blau"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Aprèn els gestos del ratolí tàctil"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ratolí tàctil, ratolí, cursor, desplaçar-se, lliscar, fer clic amb el botó dret, fer clic, punter"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"fer clic amb el botó dret, tocar"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Cap}=1{S\'ha definit 1 programació}other{S\'han definit # programacions}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"No molestis"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modes prioritaris"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Rep notificacions només de persones i aplicacions importants"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Restringeix les interrupcions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Activa el mode No molestis"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Edita"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Programacions"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Programació"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Activa automàticament"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Afegeix un calendari"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Utilitza el calendari"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programació"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Defineix una programació"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Programa"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> h <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Programació"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silencia en hores concretes"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Defineix les regles de No molestis"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Aquesta aplicació no és compatible amb la configuració avançada"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Més opcions de configuració"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Hi ha més opcions de configuració disponibles en aquesta aplicació"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Moderació de notificacions"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Utilitza la moderació de notificacions"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Quan rebis moltes notificacions en un període de temps curt, el dispositiu minimitzarà les interrupcions sonores i les finestres emergents en pantalla. Les alertes de trucades, alarmes i converses prioritàries seguiran com sempre. A més, les notificacions rebudes es poden trobar fàcilment a l\'àrea de notificacions."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplica als perfils de treball"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplica a les aplicacions del perfil de treball"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Serveis d\'ajuda per a RV"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Aplicacions seleccionades"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Cap"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Tot"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permet que les aplicacions ignorin el mode No molestis"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplicacions que poden interrompre"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Selecciona més aplicacions"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Canvia al mode Només alarmes durant 1 hora fins a les {time}}other{Canvia al mode Només alarmes durant # hores fins a les {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Canvia al mode Només alarmes fins a les <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Canvia al mode Interromp sempre"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Canvia el nom"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Canvia la icona"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Canvia la icona"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Advertiment"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Tanca"</string>
<string name="device_feedback" msgid="5351614458411688608">"Envia suggeriments sobre el dispositiu"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Esquerre"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Dret"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Funda"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Tauler de configuració"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Força el mode d\'escriptori"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Força el mode d\'escriptori experimental en pantalles secundàries"</string>
@@ -4846,7 +4859,7 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"Inicia amb pàgines de 16 kB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Inicia amb un nucli compatible amb pàgines de 16 kB"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Canvia del mode de 4 kB al mode de 16 kB"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Estàs en mode independent de les pàgines executant un nucli de 4 kB i canviaràs al mode de 16 kB. No es pot garantir la integritat del programari en aquest mode, i les dades que estiguin emmagatzemades al dispositiu mentre el bootloader està desbloquejat poden estar en perill. Aquesta acció reiniciarà el dispositiu. Com que es desactivaran algunes funcions en aquests modes, és possible que algunes aplicacions no funcionin. Per fer que el dispositiu torni al mode de producció, hauràs de tornar al mode de 4 kB i, a continuació, bloquejar el bootloader, que restablirà les dades de fàbrica del dispositiu. Quan el dispositiu s\'iniciï a Android correctament, desactiva el desbloqueig OEM a Opcions per a desenvolupadors."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Estàs en mode independent de la pàgina executant un nucli de 4 kB i canviaràs al mode de 16 kB. No es pot garantir la integritat del programari en aquest mode, i les dades que estiguin emmagatzemades al dispositiu mentre el bootloader està desbloquejat poden estar en perill. Aquesta acció reiniciarà el dispositiu. Com que es desactivaran algunes funcions en aquests modes, és possible que algunes aplicacions no funcionin. Per fer que el dispositiu torni al mode de producció, hauràs de tornar al mode de 4 kB i, a continuació, bloquejar el bootloader, que restablirà les dades de fàbrica del dispositiu. Quan el dispositiu s\'iniciï a Android correctament, desactiva el desbloqueig OEM a Opcions per a desenvolupadors."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Canvia del mode de 16 kB al mode de 4 kB"</string>
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Estàs en mode independent de la pàgina executant un nucli de 16 kB i canviaràs al mode de 4 kB. No es pot garantir la integritat del programari en aquest mode, i les dades que estiguin emmagatzemades al dispositiu mentre el bootloader està desbloquejat poden estar en perill. Aquesta acció reiniciarà el dispositiu. Com que es desactivaran algunes funcions en aquests modes, és possible que algunes aplicacions no funcionin. Per fer que el dispositiu torni al mode de producció, hauràs de tornar a bloquejar el bootloader, que restablirà les dades de fàbrica del dispositiu. Quan el dispositiu s\'iniciï a Android correctament, desactiva el desbloqueig OEM a Opcions per a desenvolupadors."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"No s\'ha pogut actualitzar el nucli a un compatible amb pàgines de 16 kB."</string>
diff --git a/res/values-cs/arrays.xml b/res/values-cs/arrays.xml
index 5296677..212c705 100644
--- a/res/values-cs/arrays.xml
+++ b/res/values-cs/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index ea4500a..16069b4 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Odpojit zařízení?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Spárovat nové zařízení"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Zítra znovu automaticky zapnout"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Spárovat pravé ucho"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Spárovat levé ucho"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Spárovat druhé ucho"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Spárovat levé ucho"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Nastavení naslouchátek"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Zkratka, kompatibilita s naslouchátky"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Předvolby"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Předvolba"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Předvolbu nelze aktualizovat"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Zvukový výstup"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Informace o zvukovém výstupu"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Zrušit"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ne, děkuji"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Teď ne"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Souhlasím"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Další"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Odemykání pomocí obličeje"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Upozornění"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Odemykejte telefon a schvalujte nákupy otiskem prstu.\n\nPoznámka: Otisk prstu nelze použít k odemykání tohoto zařízení. Další informace vám poskytne administrátor vaší organizace."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Zrušit"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ne, díky"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Teď ne"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Souhlasím"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Přeskočit zadání otisku prstu?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Nastavení otisku prstu trvá jen minutu nebo dvě. Pokud tento krok přeskočíte, můžete otisk prstu přidat později v nastavení."</string>
@@ -557,12 +558,12 @@
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Odemknutí otiskem prstu pro soukromý prostor"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Odemknutí obličejem pro soukromý prostor"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Odemknutí obličejem a otiskem prstu pro soukromý prostor"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Nastavte pro svůj soukromý prostor odemknutí otiskem prstu"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Nastavte odemknutí soukromého prostoru otiskem prstu"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Odemykejte svůj soukromý prostor a ověřujte svou identitu v aplikacích (např. při přihlašování nebo schvalování nákupů) otiskem prstu."</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Váš soukromý prostor se může odemknout, aniž byste to chtěli, například když vám někdo podrží telefonu u prstu."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Odemykejte svůj soukromý prostor a schvalujte nákupy otiskem prstu."</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Nastavte pro svůj soukromý prostor odemknutí obličejem"</string>
- <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Odemykejte soukromý prostor a ověřujte svou identitu v aplikacích (např. při přihlašování nebo schvalování nákupů) otiskem prstu."</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Nastavte odemknutí soukromého prostoru obličejem"</string>
+ <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Odemykejte soukromý prostor a ověřujte svou identitu v aplikacích (např. při přihlašování nebo schvalování nákupů) pomocí obličeje."</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Soukromý prostor můžete odemknout pohledem, i když zrovna nechcete. Soukromý prostor bude moci odemknout také někdo, kdo je vám hodně podobný, například vaše identické dvojče, nebo někdo, kdo vám zařízení podrží před obličejem."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Odemykání soukromého prostoru obličejem může být méně bezpečné než silné gesto, PIN nebo heslo"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"K odemknutí soukromého prostoru musíte mít otevřené oči. Doporučujeme sundat si sluneční brýle."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Vždy, když se zařízení zamkne"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minut po vypnutí obrazovky"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Pouze po restartu zařízení"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Pokud pro soukromý prostor používáte jiný zámek, k otevření aplikací v soukromém prostoru budete pravděpodobně muset ověřit svou totožnost."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Skrýt soukromý prostor"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Skrýt soukromý prostor, když je uzamčený"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Pokud chcete, aby o soukromém prostoru ve vašem zařízení nikdo nevěděl, můžete ho v seznamu aplikací skrýt"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Nastavit"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Soukromý prostor"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Můžete si skrýt nebo uzamknout soukromé aplikace v odděleném prostoru. Vyhrazený účet Google zajistí lepší zabezpečení."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Nastavení soukromého prostoru"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Vyberte pro svůj prostor účet Google"</b>\n"Použití vyhrazeného účtu vám pomůže zamezit zobrazování synchronizovaných souborů, fotek a e-mailů mimo prostor."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Jak to funguje"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Vytvořte si pro prostor účet Google"</b>\n"Když použijete vyhrazený účet, pomůže to předejít zobrazování synchronizovaných souborů, fotografií a e‑mailů mimo prostor"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Nastavte si zámek"</b>\n"Prostor můžete uzamknout, aby ho ostatní nemohli otevřít."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Nainstalujte aplikace"</b>\n"Soukromý prostor má vlastní Obchod Play, abyste mohli snadno instalovat aplikace."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Když je soukromý prostor uzamčen, aplikace v soukromém prostoru se nezobrazují ve správci oprávnění, na panelu ochrany soukromí ani v dalších nastaveních.\n\nSoukromý prostor nelze obnovit do nového zařízení. Na novém zařízení bude nutné nastavit nový soukromý prostor.\n\nDo soukromého prostoru se může dostat kdokoli, kdo zařízení připojí k počítači nebo do zařízení nainstaluje škodlivé aplikace."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Nainstalujte aplikace"</b>\n"Nainstalujte aplikace, které chcete mít soukromé ve svém prostoru"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Upozornění"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Když prostor uzamknete, aplikace se zastaví"</b>\n"Když prostor uzamknete, aplikace v něm se zastaví a nebudete od nich dostávat oznámení"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Další informace o soukromém prostoru"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Bude to chvíli trvat"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Nastavování soukromého prostoru…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Můžete si nastavit nový zámek pouze pro soukromý prostor, nebo použít stejný zámek, jaký používáte k odemykání zařízení"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Používat zámek obrazovky"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Zvolit nový zámek"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Chviličku…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Chviličku…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Hotovo!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Pokud chcete najít soukromý prostor, navštivte seznam aplikací a posuňte zobrazení dolů"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Hotovo"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Nastavte PIN pro svůj soukromý prostor"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Nastavte heslo pro svůj soukromý prostor"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Nastavte vzor pro svůj soukromý prostor"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Vytvořte si účet Google za účelem zabezpečení dat"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na další obrazovce se můžete přihlásit k účtu, který chcete se soukromým prostorem používat"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Vytvořte si speciální účet, aby se mimo soukromý prostor nezobrazovala vaše data, jako například:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synchronizované fotky, soubory, e-maily, kontakty, události v kalendáři a další data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historie a doporučení stahování aplikací"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historie prohlížení, záložky a uložená hesla"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Navrhovaný obsah související s vaší aktivitou v aplikacích v soukromém prostoru"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Rozumím"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Zamykání"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Skrytí"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Maximální počet otisků prstů, které lze přidat: <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -961,7 +958,7 @@
<string name="wifi_eap_identity" msgid="3629406902174137028">"Identita"</string>
<string name="wifi_eap_anonymous" msgid="8630332141751267000">"Anonymní identita"</string>
<string name="wifi_password" msgid="1458802324849513755">"Heslo"</string>
- <string name="wifi_show_password" msgid="6865993988238157923">"Zobrazovat heslo"</string>
+ <string name="wifi_show_password" msgid="6865993988238157923">"Zobrazit heslo"</string>
<string name="wifi_ap_choose_2G" msgid="1436802195991542016">"Pásmo 2,4 GHz"</string>
<string name="wifi_ap_prefer_5G" msgid="2520628479818369902">"Upřednostňované pásmo 5,0 GHz"</string>
<string name="wifi_ip_settings" msgid="6420498748726599133">"Nastavení IP adresy"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certifikát systému"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Připínání certifikátu"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Podrobnosti o síti"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Tato síť používá starší bezpečnostní protokol nazývaný WEP, který je méně bezpečný"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska podsítě"</string>
<string name="server_name_title" msgid="7257095185810299066">"Název severu"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Typ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adresa MAC sítě Wi-Fi zařízení"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adresa Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Sériové číslo"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Doba provozu"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Doba provozu"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Datum výroby"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum prvního použití"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Počet cyklů"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Klepnutí vpravo dole"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Klepnutím na pravý dolní roh touchpadu zobrazíte další možnosti"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Rychlost kurzoru"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Styl vyplnění ukazatele"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Změnit vyplnění ukazatele na černé"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Změnit vyplnění ukazatele na zelené"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Změnit vyplnění ukazatele na žluté"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Změnit vyplnění ukazatele na růžové"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Změnit vyplnění ukazatele na modré"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Naučte se gesta touchpadu"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, myš, kurzor, posouvání, přejetí, kliknutí pravým tlačítkem, kliknutí, ukazatel"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"kliknutí pravým tlačítkem, klepnutí"</string>
@@ -2029,11 +2033,11 @@
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"Barvy a pohyb"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Barevný kontrast"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Text, tlačítka a ikony při vyšším kontrastu více vyniknou. Vyberte kontrast, který vám nejvíc vyhovuje."</string>
- <string name="color_contrast_note" msgid="7592686603372566198">"Některé aplikace nemusí podporovat všechna nastavení kontrastu barev a textu"</string>
+ <string name="color_contrast_note" msgid="7592686603372566198">"Některé aplikace nemusí podporovat všechna nastavení kontrastu barev a textu."</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"Náhled"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"před 2 dny"</string>
- <string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Sledovat?"</string>
+ <string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Reagovat?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"Hlášení o služební cestě"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"Pokud potřebujete pomoct, obraťte se na mě nebo na Helen. Toto hlášení bude"</string>
<string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Klientské výdaje"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Žádný}=1{Nastaven 1 plán}few{Nastaveny # plány}many{Nastaveno # plánu}other{Nastaveno # plánů}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Nerušit"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Režim priority"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Přijímat pouze oznámení od důležitých lidí a z důležitých aplikací"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Omezení vyrušení"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Zapněte funkci Nerušit"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Přidejte kalendář"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Použít kalendář"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Plán"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Plán"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Ztlumit telefon v určitou dobu"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Nastavit pravidla režimu Nerušit"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Tato aplikace nepodporuje rozšířená nastavení"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Další nastavení"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Další nastavení jsou k dispozici uvnitř aplikace"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Zeslabení"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Použít zeslabení"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Když během krátké doby obdržíte mnoho oznámení, zařízení minimalizuje počet přerušení zvuku a vyskakovacích oken na obrazovce. Na hovory, budíky a prioritní konverzace budou stále upozorněni jako obvykle a všechna doručená oznámení snadno najdete na panelu oznámení."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Použít na pracovní profily"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Použít pro aplikace v pracovním profilu"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Pomocné služby VR"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Vybrané aplikace"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nic"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Vše"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Povolit přepisování aplikací"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikace, které smí vyrušovat"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Vybrat další aplikace"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Na hodinu (tedy do {time}) přepnout do režimu Pouze budíky}few{Na # hodiny (tedy do {time}) přepnout do režimu Pouze budíky}many{Na # hodiny (tedy do {time}) přepnout do režimu Pouze budíky}other{Na # hodin (tedy do {time}) přepnout do režimu Pouze budíky}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Přepnout do režimu Pouze budíky až do <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Přejít do režimu Vždy vyrušit"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Varování"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Zavřít"</string>
<string name="device_feedback" msgid="5351614458411688608">"Odeslat zpětnou vazbu o tomto zařízení"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Levé"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Pravé"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Hlavní díl"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Baterie"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel nastavení"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Vynutit režim počítače"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Na sekundárních displejích vynutí experimentální režim počítače"</string>
@@ -4854,10 +4878,10 @@
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"K použití možnosti 16KB režimu pro vývojáře musí mít zařízení odemknutý bootloader. V tomto režimu nelze zaručit integritu softwaru a veškerá data uložená v telefonu při odemknutém bootloaderu mohou být ohrožena. Při aktivaci 16KB režimu se vymažou všechna uživatelská data a nastavení. Po odemknutí bootloaderu bude aktivace 16KB režimu vyžadovat dva restarty. Po jeho aktivaci pak bude k přepnutí mezi 4KB a 16KB režimem stačit pouze jeden restart. Některé funkce budou v těchto režimech zakázány, takže některé aplikace nemusí fungovat. Pokud budete chtít zařízení vrátit do produkčního režimu, budete systém muset přepnout zpět do 4KB režimu a pak v něm deaktivovat odemknutí OEM / uzamknout bootloader (čímž zařízení resetujete do továrního nastavení). Odemkněte bootloader a zkuste to znovu. Pokyny, jak to provést, najdete na stránce <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Používáte 4KB stránkově agnostický režim"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Používáte 4KB verzi stránkově agnostického režimu. V tomto režimu nelze zaručit integritu softwaru a veškerá data uložená v telefonu při odemknutém bootloaderu mohou být ohrožena. Některé funkce budou v těchto režimech zakázány, takže některé aplikace nemusí fungovat. Pokud chcete znovu aktivovat produkční režim, musíte uzamknout bootloader zařízení. Další informace zobrazíte klepnutím."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Používáte 4KB verzi stránkově agnostického režimu. V tomto režimu nelze zaručit integritu softwaru a veškerá data uložená v telefonu při odemknutém bootloaderu mohou být ohrožena. Některé funkce budou v těchto režimech zakázány, takže některé aplikace nemusí fungovat. Pokud chcete znovu aktivovat produkční režim, musíte uzamknout bootloader zařízení. Tím zařízení znovu resetujete do továrního nastavení zařízení a obnovíte v něm produkční nastavení. Až se systém Android v zařízení úspěšně spustí, vypněte v sekci Pro vývojáře možnost Odemknutí OEM. Pokud se systém Android v zařízení nespustí nebo nebude stabilní, flashujte zařízení na nejnovější tovární obrazy ze stránky <a href=\"https://developers.google.com/android/images\">https://developers .google.com/android/images</a> nebo použijte nástroj <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> a vyberte Wipe Device (Vymazat zařízení), Lock Bootloader (Zamknout bootloader) a Force Flash all partitions (Flashovat všechny oddíly)."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Používáte 4KB verzi stránkově agnostického režimu. V tomto režimu nelze zaručit integritu softwaru a veškerá data uložená v telefonu při odemknutém bootloaderu mohou být ohrožena. Některé funkce budou v těchto režimech zakázány, takže některé aplikace nemusí fungovat. Pokud chcete znovu aktivovat produkční režim, musíte uzamknout bootloader zařízení. Tím zařízení znovu resetujete do továrního nastavení a obnovíte v něm produkční nastavení. Až se systém Android v zařízení úspěšně spustí, vypněte v sekci Pro vývojáře možnost Odemknutí OEM. Pokud se systém Android v zařízení nespustí nebo nebude stabilní, flashujte zařízení na nejnovější tovární obrazy ze stránky <a href=\"https://developers.google.com/android/images\">https://developers .google.com/android/images</a> nebo použijte nástroj <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> a vyberte Wipe Device (Vymazat zařízení), Lock Bootloader (Zamknout bootloader) a Force Flash all partitions (Flashovat všechny oddíly)."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Používáte 16KB stránkově agnostický režim"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Aktuálně používáte 16KB verzi stránkově agnostického režimu. V tomto režimu nelze zaručit integritu softwaru a veškerá data uložená v telefonu při odemknutém bootloaderu mohou být ohrožena. Některé funkce budou v těchto režimech zakázány, takže některé aplikace nemusí fungovat. Pokud chcete znovu aktivovat produkční režim, musíte přepnout zpět na 4KB režim a poté uzamknout bootloader zařízení. Další informace zobrazíte klepnutím."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Aktuálně používáte 16KB verzi stránkově agnostického režimu. V tomto režimu nelze zaručit integritu softwaru a veškerá data uložená v telefonu při odemknutém bootloaderu mohou být ohrožena. Některé funkce budou v těchto režimech zakázány, takže některé aplikace nemusí fungovat. Pokud chcete znovu aktivovat produkční režim, musíte přepnout zpět na 4KB režim a poté uzamknout bootloader zařízení. Tím zařízení znovu resetujete do továrního nastavení zařízení a obnovíte v něm produkční nastavení. Až se systém Android v zařízení úspěšně spustí, vypněte v sekci Pro vývojáře možnost Odemknutí OEM. Pokud se systém Android v zařízení nespustí nebo nebude stabilní, flashujte zařízení na nejnovější tovární obrazy ze stránky <a href=\"https://developers.google.com/android/images\">https://developers .google.com/android/images</a> nebo použijte nástroj <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> a vyberte Wipe Device (Vymazat zařízení), Lock Bootloader (Zamknout bootloader) a Force Flash all partitions (Flashovat všechny oddíly)."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Aktuálně používáte 16KB verzi stránkově agnostického režimu. V tomto režimu nelze zaručit integritu softwaru a veškerá data uložená v telefonu při odemknutém bootloaderu mohou být ohrožena. Některé funkce budou v těchto režimech zakázány, takže některé aplikace nemusí fungovat. Pokud chcete znovu aktivovat produkční režim, musíte přepnout zpět na 4KB režim a poté uzamknout bootloader zařízení. Tím zařízení znovu resetujete do továrního nastavení a obnovíte v něm produkční nastavení. Až se systém Android v zařízení úspěšně spustí, vypněte v sekci Pro vývojáře možnost Odemknutí OEM. Pokud se systém Android v zařízení nespustí nebo nebude stabilní, flashujte zařízení na nejnovější tovární obrazy ze stránky <a href=\"https://developers.google.com/android/images\">https://developers .google.com/android/images</a> nebo použijte nástroj <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> a vyberte Wipe Device (Vymazat zařízení), Lock Bootloader (Zamknout bootloader) a Force Flash all partitions (Flashovat všechny oddíly)."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16KB stránkově agnostický režim"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Další informace"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Nástroj pro zprávy o chybách"</string>
diff --git a/res/values-da/arrays.xml b/res/values-da/arrays.xml
index 0664775..6583dbe 100644
--- a/res/values-da/arrays.xml
+++ b/res/values-da/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index bc9793f..38f753d 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Afbryd forbindelse til enhed?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Par en ny enhed"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Aktivér automatisk igen i morgen"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Par højre øre"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Par venstre øre"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Par det andet høreapparat"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Par venstre apparat"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Indstillinger for høreapparat"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Genvej, høreapparatskompatibilitet"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Forindstillinger"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Forindstilling"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Forindstillingen kunne ikke opdateres"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Lydudgang"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Om lydudgang"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Annuller"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nej tak"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ikke nu"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Acceptér"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mere"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Lås op med dit ansigt"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Husk!"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Lås din telefon op eller godkend køb ved hjælp af dit fingeraftryk.\n\nBemærk! Du kan ikke bruge dit fingeraftryk til at låse op for denne enhed. Få flere oplysninger ved at kontakte administratoren for din organisation."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Annuller"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nej tak"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ikke nu"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Acceptér"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Spring fingeraftryk over?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Konfigurationen af fingeraftryk tager ikke mere end et minut eller to. Hvis du springer dette trin over, kan du tilføje dit fingeraftryk på et senere tidspunkt i indstillingerne."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Hver gang enheden låses"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutter efter timeout for skærmen"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Kun efter genstart af enheden"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Skjul privat område"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Skjul det private område, når det er låst"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Hvis andre ikke må vide, at du har et privat område på din enhed, kan du skjule det på applisten"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Konfigurer"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privat område"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Skjul eller lås private apps i et separat område. Anvend en dedikeret Google-konto for at få ekstra beskyttelse."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Konfigurer dit private område"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Vælg en Google-konto til dit område"</b>\n"En dedikeret konto hjælper med at forhindre synkroniserede filer, billeder og mails i at blive vist uden for dit område."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Sådan fungerer det"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Opret en Google-konto til dit område"</b>\n"Hvis du bruger en dedikeret konto, kan det være med til at forhindre, at synkroniserede filer, billeder og mails vises uden for dit område"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Konfigurer en lås"</b>\n"Lås dit område for at forhindre andre i at åbne det."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installer apps"</b>\n"Dit private område har sin egen Play Butik, så du nemt kan installere apps."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps i dit private område vises ikke i tilladelsesadministrator, privatlivspanelet eller andre indstillinger, når det private område er låst.\n\nDu kan ikke gendanne dit private område på en ny enhed. Hvis du vil bruge det private område på en anden enhed, skal du konfigurere et nyt privat område.\n\nPersoner, der slutter din enhed til en computer eller installerer skadelige apps på din enhed, kan muligvis få adgang til dit private område."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Installer apps"</b>\n"Installer apps, du vil holde private i dit område"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Husk!"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps afbrydes, når du låser dit område"</b>\n"Hvis du låser dit område, afbrydes apps i området, og du modtager ikke notifikationer fra dem"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Få flere oplysninger om privat område"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Det tager et øjeblik"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Konfigurerer et privat område…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Du kan indstille en ny lås til privat område eller bruge den samme lås, som du bruger til at låse din enhed op"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Brug skærmlås"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Vælg en ny lås"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Vent et øjeblik…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Vent et øjeblik…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Det var det hele."</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Du kan finde dit private område ved at gå til din appliste og rulle ned"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Udfør"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Angiv en pinkode til dit private område"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Angiv en adgangskode til dit private område"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Angiv et mønster til dit private område"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Opret en Google-konto for at hjælpe med at beskytte dine data"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"På den næste skærm kan du logge på en konto, du vil bruge med dit private område"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Opret en dedikeret konto for at hjælpe med at undgå, at data vises uden for det private område, f.eks.:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synkroniserede billeder, filer, mails, kontakter, kalenderbegivenheder og andre data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historik for appdownload og anbefalinger"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browserhistorik, bogmærker og gemte adgangskoder"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Foreslået indhold, der er relateret til din aktivitet i apps i det private område"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lås"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Skjul"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Du kan tilføje op til <xliff:g id="COUNT">%d</xliff:g> fingeraftryk"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Systemcertifikat"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fastgørelse af certifikat"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Netværksoplysninger"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Dette netværk anvender en ældre og mindre sikker sikkerhedsprotokol, der kaldes for WEP"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Undernetmaske"</string>
<string name="server_name_title" msgid="7257095185810299066">"Servernavn"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Enhedens MAC-adresse for Wi-Fi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-adresse"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serienummer"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Oppetid"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Oppetid"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Produktionsdato"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Dato for ibrugtagning"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Antal cyklusser"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Tryk nederst til højre"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tryk nederst til højre på touchpladen for at se mere"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Markørens hastighed"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Udfyldningsstil for markør"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Skift udfyldningsstil for markør til sort"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Skift udfyldningsstil for markør til grøn"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Skift udfyldningsstil for markør til gul"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Skift udfyldningsstil for markør til lyserød"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Skift udfyldningsstil for markør til blå"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Se bevægelser på touchpladen"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"touchplade, touch plade, mus, markør, rul, stryg, højreklik, klik, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"højreklik, tryk"</string>
@@ -2031,7 +2034,7 @@
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Farvekontrast"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Højere kontrast gør tekst, knapper og ikoner tydeligere. Vælg den kontrast, du foretrækker."</string>
<string name="color_contrast_note" msgid="7592686603372566198">"Visse apps understøtter ikke alle indstillinger for farve- og tekstkontrast"</string>
- <string name="color_contrast_preview" msgid="6791430227535363883">"Se forhåndsvisning"</string>
+ <string name="color_contrast_preview" msgid="6791430227535363883">"Forhåndsvisning"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 dage siden"</string>
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Vil du følge op?"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ingen}=1{1 tidsplan er angivet}one{# tidsplan er angivet}other{# tidsplaner er angivet}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Forstyr ikke"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Tilstande med prioritet"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Få kun notifikationer fra vigtige personer og apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Begræns antallet af afbrydelser"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Aktivér Forstyr ikke"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Rediger"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Tidsplaner"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Tidsplan"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Aktivér automatisk"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Tilføj en kalender"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Brug din kalender"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Tidsplan"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Angiv en tidsplan"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Tidsplan"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> t. <xliff:g id="MINUTES">%2$d</xliff:g> min."</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Planlæg"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Gør telefonen lydløs på bestemte tidspunkter"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Angiv regler for Forstyr ikke"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Denne app understøtter ikke avancerede indstillinger"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Flere indstillinger"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Der er flere tilgængelige indstillinger inde i appen"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Dæmpning"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Brug Dæmpning"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Når du får mange notifikationer inden for kort tid, minimerer din enhed lydafbrydelser og pop op-vinduer på skærmen. Du får stadig underretninger ved opkald, alarmer og prioriterede samtaler som normalt, og du kan nemt finde alle leverede notifikationer i underretningspanelet."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Anvend på arbejdsprofiler"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Anvend på apps på arbejdsprofilen"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR-hjælpetjenester"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Valgte apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ingen"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Alle"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Tillad, at apps tilsidesætter"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps, der kan afbryde"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Vælg flere apps"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Skift til kun alarmer i én time (indtil {time})}one{Skift til kun alarmer i # time (indtil {time})}other{Skift til kun alarmer i # timer (indtil {time})}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Skift til Kun alarmer frem til <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Skift til Afbryd altid"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Omdøb"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Skift ikon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Skift ikon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Advarsel"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Luk"</string>
<string name="device_feedback" msgid="5351614458411688608">"Send feedback om denne enhed"</string>
@@ -4451,7 +4463,7 @@
<string name="autofill_keywords" msgid="8598763328489346438">"automatisk, udfyld, autofyld, adgangskode"</string>
<string name="credman_keywords" msgid="8305600680836806170">"data, adgangsnøgle, adgangskode"</string>
<string name="credman_autofill_keywords" msgid="701180623776848914">"automatisk, udfyldning, autofyld, data, adgangsnøgle, adgangskode"</string>
- <string name="credman_button_change" msgid="4072629639218503790">"Ændring"</string>
+ <string name="credman_button_change" msgid="4072629639218503790">"Skift"</string>
<string name="credman_button_open" msgid="7519871964170816850">"Åbn"</string>
<string name="credman_app_list_preference_none" msgid="2509646651254971448">"Der er ikke valgt nogen"</string>
<string name="autofill_confirmation_message" msgid="4888767934273494272">"<b>Sørg for, at du har tillid til denne app</b> <br/> <br/> <xliff:g id=app_name example=Google Autofill>%1$s</xliff:g> anvender indholdet af din skærm til at fastslå, hvad der kan udfyldes automatisk."</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Venstre"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Højre"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Etui"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batteri"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Indstillingspanel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Gennemtving skrivebordstilstand"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Gennemtving eksperimentel skrivebordstilstand på sekundære skærme"</string>
diff --git a/res/values-de/arrays.xml b/res/values-de/arrays.xml
index f5245a3..a02baae 100644
--- a/res/values-de/arrays.xml
+++ b/res/values-de/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index dcbc3d5..729faf1 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Geräteverbindung trennen?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Neues Gerät koppeln"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Morgen automatisch wieder aktivieren"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Rechtes Gerät koppeln"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Linkes Gerät koppeln"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Anderes Ohr koppeln"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Linkes Ohr koppeln"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Hörgeräteeinstellungen"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Verknüpfung, Kompatibilität mit Hörgeräten"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Voreinstellungen"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Voreinstellung"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Voreinstellung konnte nicht aktualisiert werden"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audioausgabe"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Informationen zur Audioausgabe"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Abbrechen"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nein, danke"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Nicht jetzt"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ich stimme zu"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mehr"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Per Gesicht entsperren"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Hinweis"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Du kannst deinen Fingerabdruck verwenden, um dein Smartphone zu entsperren oder Käufe zu autorisieren.\n\nHinweis: Dieses Gerät kann nicht mit deinem Fingerabdruck entsperrt werden. Weitere Informationen erhältst du vom Administrator deiner Organisation."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Abbrechen"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nein danke"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Nicht jetzt"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ich stimme zu"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Fingerabdruck überspringen?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Die Einrichtung des Fingerabdrucks dauert nur wenige Minuten. Wenn du sie jetzt überspringst, kannst du sie später über die Einstellungen nachholen."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"So gehts"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Die Funktion „Entsperrung per Fingerabdruck“ erstellt ein eindeutiges Modell deines Fingerabdrucks, mit dem deine Identität bestätigt werden kann. Bei der Einrichtung legst du deinen Finger dazu immer wieder anders auf. Mit diesen Aufnahmen wird dann das Fingerabdruckmodell erstellt."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Die Funktion „Entsperrung per Fingerabdruck“ erstellt ein eindeutiges Modell des Fingerabdrucks deines Kindes, mit dem seine Identität bestätigt werden kann. Bei der Einrichtung legt es seinen Finger dazu immer wieder anders auf. Mit diesen Aufnahmen wird dann das Fingerabdruckmodell erstellt."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Die besten Ergebnisse erzielst du mit einem Displayschutz, der das Zertifikat „Made for Google“ hat. Bei anderen Displayschutzfolien wird dein Fingerabdruck möglicherweise nicht erkannt."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Die besten Ergebnisse erzielst du mit einem Displayschutz, der „Made for Google“-zertifiziert ist. Bei anderen Displayschutzfolien wird dein Fingerabdruck möglicherweise nicht erkannt."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Die besten Ergebnisse erzielst du mit einem Displayschutz, der das Zertifikat „Made for Google“ hat. Bei anderen Displayschutzfolien wird der Fingerabdruck deines Kindes möglicherweise nicht erkannt."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Mit Smartwatch entsperren"</string>
@@ -545,8 +546,8 @@
<string name="privacy_header" msgid="5526002421324257007">"Datenschutz"</string>
<string name="work_profile_category_header" msgid="85707750968948517">"Arbeitsprofil"</string>
<string name="private_space_title" msgid="1752064212078238723">"Vertrauliches Profil"</string>
- <string name="private_space_summary" msgid="2274405892301976238">"Hier kannst du deine privaten Apps verbergen und sperren"</string>
- <string name="private_space_description" msgid="4059594203775816136">"Du kannst für interne Apps einen separates Profil nutzen, das sich ausblenden oder sperren lässt"</string>
+ <string name="private_space_summary" msgid="2274405892301976238">"Hier kannst du Apps vor anderen verbergen und sie für sie sperren"</string>
+ <string name="private_space_description" msgid="4059594203775816136">"Du kannst Apps in einem vertraulichen Profil installieren, sodass sie nur für dich sichtbar sind und nur von dir geöffnet werden können"</string>
<string name="private_space_lock_title" msgid="7230836881433350526">"Sperrmethode für vertrauliches Profil"</string>
<string name="private_space_one_lock_summary" msgid="2106513606571219068">"Du kannst zum Entsperren des vertraulichen Profils dieselbe Methode wie für das Entsperren deines Geräts verwenden oder aber eine andere Sperrmethode einrichten"</string>
<string name="private_space_screen_lock_title" msgid="8679383894967823163">"Displaysperre des Geräts verwenden"</string>
@@ -557,7 +558,7 @@
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Entsperrung per Fingerabdruck für das vertrauliche Profil"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Entsperrung per Gesichtserkennung für das vertrauliche Profil"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Vertrauliches Profil: Entsperrung per Gesicht/Fingerabdruck"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Entsperrung per Fingerabdruck für das vertrauliches Profil einrichten"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Entsperrung per Fingerabdruck für das vertrauliche Profil einrichten"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Du kannst deinen Fingerabdruck verwenden, um dein vertrauliches Profil zu entsperren oder deine Identität zu bestätigen, beispielsweise um dich in Apps anzumelden oder einen Kauf zu autorisieren"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Es kann passieren, dass dein vertrauliches Profil unbeabsichtigt entsperrt wird, z. B. wenn dein Smartphone von jemandem gegen deinen Finger gehalten wird."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Du kannst deinen Fingerabdruck verwenden, um dein vertrauliches Profil zu entsperren oder Käufe zu autorisieren"</string>
@@ -577,9 +578,7 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Jedes Mal, wenn Gerät gesperrt wird"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 Min. nach Ausschalten des Displays"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Nur nach einem Neustart des Geräts"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
- <string name="private_space_hide_page_title" msgid="3364639176511877414">"Vertrauliches Profil ausblenden"</string>
+ <string name="private_space_hide_page_title" msgid="3364639176511877414">"Vertrauliches Profil verbergen"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Vertrauliches Profil ausblenden, wenn gesperrt"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Damit niemand weiß, dass du auf deinem Gerät ein vertrauliches Profil hast, kannst du ihn aus deiner App-Liste ausblenden"</string>
<string name="private_space_access_header" msgid="1077082416567150819">"Auf vertrauliches Profil zugreifen, wenn ausgeblendet"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Einrichten"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Vertrauliches Profil"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Du kannst private Apps in einem separaten Profil verbergen, das sich sperren lässt. Für zusätzliche Sicherheit kannst du dafür ein eigenes Google-Konto verwenden."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Vertrauliches Profil einrichten"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Google-Konto für deinen privaten Bereich wählen"</b>\n"Wenn du dafür ein separates Konto verwendest, kannst du vermeiden, dass synchronisierte Dateien, Fotos und E-Mails außerhalb deines privaten Bereichs angesehen werden"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Funktionsweise"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Google-Konto für dein Profil erstellen"</b>\n"Wenn du ein eigenes Konto verwendest, vermeidest du, dass synchronisierte Dateien, Fotos und E‑Mails außerhalb deines Profils erscheinen"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Sperre einrichten"</b>\n"Du kannst deinen privaten Bereich sperren, damit andere nicht darauf zugreifen können"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Apps installieren"</b>\n"In deinem vertraulichen Profil gibt es einen eigenen Play Store, damit du Apps ganz einfach installieren kannst."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Wenn dein vertrauliches Profil gesperrt ist, werden Apps in deinem vertraulichen Profil unter „Berechtigungsmanager“, „Privatsphäredashboard“ und in anderen Einstellungen nicht angezeigt.\n\nDein vertrauliches Profil kann nicht auf einem neuen Gerät wiederhergestellt werden. Du musst ein weiteres vertrauliches Profil einrichten, wenn du es auf einem anderen Gerät verwenden möchtest.\n\nJeder, der dein Gerät mit einem Computer verbindet oder auf dem Gerät schädliche Apps installiert, kann möglicherweise auf dein vertrauliches Profil zugreifen."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Apps installieren"</b>\n"Du kannst in deinem Profil Apps installieren, die privat bleiben sollen"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Wichtige Hinweise"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps werden beendet, wenn du dein Profil sperrst"</b>\n"Wenn du dein Profil sperrst, werden die Apps darin beendet und du erhältst von ihnen keine Benachrichtigungen"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Informationen zum vertraulichen Profil"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Das kann einen Moment dauern"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Das vertrauliche Profil wird eingerichtet…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Du kannst für das vertrauliche Profil eine neue Sperre festlegen oder dieselbe Sperre nutzen, die du zum Entsperren deines Geräts verwendest"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Displaysperre verwenden"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Neue Sperre auswählen"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Einen Moment…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Einen Moment…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Fertig!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Ruf deine App-Liste auf und scrolle nach unten, um auf dein vertrauliches Profil zuzugreifen"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Fertig"</string>
@@ -637,16 +641,8 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"PIN für vertrauliches Profil einrichten"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Passwort für vertrauliches Profil einrichten"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Muster für vertrauliches Profil einrichten"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Ein Google-Konto zum Schutz deiner Daten erstellen"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Auf dem nächsten Bildschirm kannst du dich in einem Konto anmelden, das du für dein vertrauliches Profil nutzen möchtest."</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Erstelle ein eigenes Konto, um das Risiko zu minimieren, dass Daten außerhalb des vertraulichen Profils erscheinen, wie:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synchronisierte Fotos, Dateien, E-Mails, Kontakte, Kalendertermine und andere Daten"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Verlauf der App-Downloads und Empfehlungen"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browserverlauf, Lesezeichen und gespeicherte Passwörter"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Vorgeschlagene Inhalte in Bezug auf deine Aktivitäten in Apps im vertraulichen Profil"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Ok"</string>
- <string name="private_space_category_lock" msgid="1917657024358778169">"Sperre"</string>
- <string name="private_space_category_hide" msgid="3236587591523126649">"Ausblenden"</string>
+ <string name="private_space_category_lock" msgid="1917657024358778169">"Sperren"</string>
+ <string name="private_space_category_hide" msgid="3236587591523126649">"Verbergen"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Du kannst bis zu <xliff:g id="COUNT">%d</xliff:g> Fingerabdrücke hinzufügen."</string>
<string name="fingerprint_intro_error_max" msgid="4431784409732135610">"Du hast die maximale Anzahl an Fingerabdrücken hinzugefügt"</string>
<string name="fingerprint_intro_error_unknown" msgid="877005321503793963">"Es können keine Fingerabdrücke mehr hinzugefügt werden"</string>
@@ -833,7 +829,7 @@
<string name="bluetooth_empty_list_bluetooth_off" msgid="7326727272747345476">"Bei aktiviertem Bluetooth kann dein Gerät mit Bluetooth-Geräten in der Nähe kommunizieren"</string>
<string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"Bei aktiviertem Bluetooth kann dein Gerät mit Bluetooth-Geräten in der Nähe kommunizieren. Funktionen wie „Quick Share“ und „Mein Gerät finden“ verwenden Bluetooth."</string>
<string name="bluetooth_scanning_on_info_message" msgid="786648535600075223">"Bei aktiviertem Bluetooth kann dein Gerät mit anderen Bluetooth-Geräten in der Nähe kommunizieren.\n\nDamit es optimal funktioniert, können Apps und Dienste immer nach Geräten in der Nähe suchen, auch wenn Bluetooth deaktiviert ist. Dadurch werden beispielsweise standortbasierte Funktionen und Dienste verbessert. Dies lässt sich in den Bluetooth-Sucheinstellungen ändern."</string>
- <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"Bei aktiviertem Bluetooth kann dein Gerät mit Bluetooth-Geräten in der Nähe kommunizieren. Funktionen wie „Quick Share“ und „Mein Gerät finden“ verwenden Bluetooth.\n\nApps und Dienste können weiterhin jederzeit nach Geräten in der Nähe suchen, auch wenn Bluetooth deaktiviert ist. Dies kann beispielsweise dafür verwendet werden, um standortbezogene Funktionen und Dienste zu verbessern. Dieses Verhalten lässt sich in den Einstellungen für die Bluetooth-Suche ändern."</string>
+ <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"Bei aktiviertem Bluetooth kann dein Gerät mit Bluetooth-Geräten in der Nähe kommunizieren. Funktionen wie „Quick Share“ und „Mein Gerät finden“ verwenden Bluetooth.\n\nApps und Dienste können weiterhin jederzeit nach Geräten in der Nähe suchen, auch wenn Bluetooth deaktiviert ist. Dies kann beispielsweise dafür verwendet werden, um standortbezogene Funktionen und Dienste zu verbessern.In den Einstellungen für die Bluetooth-Suche lässt sich dieses Verhalten ändern."</string>
<string name="bluetooth_scan_change" msgid="1744636222637390367">"Ändern"</string>
<string name="device_details_title" msgid="1155622417516195481">"Gerätedetails"</string>
<string name="bluetooth_device_keyboard_settings_preference_title" msgid="3411693160917620519">"Tastatureinstellungen"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Systemzertifikat"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Anpinnen von Zertifikaten"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Netzwerkdetails"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Dieses Netzwerk verwendet ein älteres Sicherheitsprotokoll namens WEP, das weniger sicher ist"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnetzmaske"</string>
<string name="server_name_title" msgid="7257095185810299066">"Servername"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Typ"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"WLAN-MAC-Adresse des Geräts"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-Adresse"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Seriennummer"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Betriebszeit"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Betriebszeit"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Herstellungsdatum"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum der ersten Verwendung"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Anzahl der Ladezyklen"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Unten rechts tippen"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tippe unten rechts auf das Touchpad für weitere Optionen"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Zeigergeschwindigkeit"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Füllfarbe des Mauszeigers"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Zeigerfüllfarbe in Schwarz ändern"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Zeigerfüllfarbe in Grün ändern"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Zeigerfüllfarbe in Gelb ändern"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Zeigerfüllfarbe in Rosa ändern"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Zeigerfüllfarbe in Blau ändern"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Informationen zu Touchpad-Gesten"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"Touchpad, Touch-Pad, Maus, Cursor, scrollen, wischen, rechtsklicken, klicken, Zeiger"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"rechtsklicken, tippen"</string>
@@ -2146,7 +2149,7 @@
<string name="accessibility_shortcut_edit_dialog_title_software_gesture" msgid="8078659880723370597">"Mit zwei Fingern nach oben wischen"</string>
<string name="accessibility_shortcut_edit_dialog_title_software_gesture_talkback" msgid="7422753388389160524">"Mit drei Fingern nach oben wischen"</string>
<string name="accessibility_shortcut_edit_dialog_title_software" msgid="6505512764022389951">"Schaltfläche „Bedienungshilfen“"</string>
- <string name="accessibility_shortcut_edit_dialog_summary_floating_button" msgid="6266489864614886247">"Tippe die unverankerte Schaltfläche an."</string>
+ <string name="accessibility_shortcut_edit_dialog_summary_floating_button" msgid="6266489864614886247">"Tippe auf die unverankerte Schaltfläche."</string>
<string name="accessibility_shortcut_edit_dialog_title_software_by_gesture" msgid="4775049370625630546">"Touch-Geste für Bedienungshilfen"</string>
<string name="accessibility_shortcut_edit_dialog_summary_software" msgid="8315934725362849788">"Tippe unten auf dem Display auf die Schaltfläche „Bedienungshilfen“ <xliff:g id="ACCESSIBILITY_ICON">%s</xliff:g>. Um zwischen den Funktionen umzuschalten, halte diese Schaltfläche gedrückt."</string>
<string name="accessibility_shortcut_edit_dialog_summary_software_gesture" msgid="8292555254353761635">"Wische vom unteren Bildschirmrand mit zwei Fingern nach oben.\n\nWenn du zwischen den Funktionen wechseln möchtest, wische mit zwei Fingern über das Display nach oben und halte."</string>
@@ -2400,7 +2403,7 @@
<string name="accessibility_dialog_button_allow" msgid="8274918676473216697">"Zulassen"</string>
<string name="accessibility_dialog_button_deny" msgid="2037249860078259284">"Ablehnen"</string>
<string name="accessibility_dialog_button_stop" msgid="7584815613743292151">"Aus"</string>
- <string name="accessibility_dialog_button_cancel" msgid="8625997437316659966">"Ein lassen"</string>
+ <string name="accessibility_dialog_button_cancel" msgid="8625997437316659966">"An belassen"</string>
<string name="disable_service_title" msgid="8178020230162342801">"<xliff:g id="SERVICE">%1$s</xliff:g> deaktivieren?"</string>
<string name="accessibility_no_services_installed" msgid="3725569493860028593">"Keine Dienste installiert"</string>
<string name="accessibility_no_service_selected" msgid="1310596127128379897">"Kein Dienst ausgewählt"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Keine}=1{1 Zeitplan festgelegt}other{# Zeitpläne festgelegt}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Bitte nicht stören"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritätsmodi"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Benachrichtigungen nur von wichtigen Personen und Apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Unterbrechungen einschränken"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"„Bitte nicht stören“ aktivieren"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Bearbeiten"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Zeitpläne"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Zeitplan"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Automatisch aktivieren"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Kalender hinzufügen"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Kalender verwenden"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Zeitplan"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Zeitplan festlegen"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Zeitplan"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> Std. <xliff:g id="MINUTES">%2$d</xliff:g> Min."</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Zeitplan"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Smartphone zu bestimmten Zeiten stummschalten"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"„Bitte nicht stören“-Regeln einrichten"</string>
@@ -3364,7 +3368,7 @@
<string name="mode_dark_theme_title_secondary_list" msgid="4761262694149772845">"Dunkles Design aktivieren"</string>
<string name="mode_dark_theme_summary" msgid="8428887193785431898">"Stelle das Betriebssystem und die Apps so ein, dass vor einem dunklen Hintergrund heller Text bevorzugt wird. Das strengt die Augen weniger an und kann auf manchen Geräten die Akkulaufzeit erheblich verlängern."</string>
<string name="mode_display_settings_summary" msgid="5929234706883482380">"{count,plural,offset:2 =0{Keine Änderungen der Anzeige}=1{{effect_1}}=2{{effect_1} und {effect_2}}=3{{effect_1}, {effect_2} und {effect_3}}other{{effect_1}, {effect_2} und # mehr}}"</string>
- <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"Anzeige-Optionen für gefilterte Benachrichtigungen"</string>
+ <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"Anzeigeoptionen für gefilterte Benachrichtigungen"</string>
<string name="zen_mode_restrict_notifications_category" msgid="5870944770935394566">"Wenn „Bitte nicht stören“ aktiviert ist"</string>
<string name="zen_mode_restrict_notifications_mute" msgid="6692072837485018287">"Kein akustisches Signal bei Benachrichtigungen"</string>
<string name="zen_mode_restrict_notifications_mute_summary" msgid="966597459849580949">"Benachrichtigungen werden angezeigt"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Diese App unterstützt erweiterte Einstellungen nicht"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Weitere Einstellungen"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Weitere Einstellungen sind in dieser App verfügbar"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Lautstärke/Vibration verringern"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Verringern von Lautstärke und Vibration bei Benachrichtigungen verwenden"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Wenn du innerhalb eines kurzen Zeitraums viele Nachrichten erhältst, reduziert dein Gerät Töne und Pop‑ups auf dem Display. Töne für Anrufe, Wecker und priorisierte Unterhaltungen werden wie gewohnt abgespielt und alle empfangenen Benachrichtigungen lassen sich in der Benachrichtigungsleiste wiederfinden."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Auf Arbeitsprofile anwenden"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Auf Apps im Arbeitsprofil anwenden"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR-Hilfsdienste"</string>
@@ -3746,7 +3753,7 @@
<string name="zen_mode_alarms_list" msgid="334782233067365405">"Wecker"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"Wecker"</string>
<string name="zen_mode_media" msgid="885017672250984735">"Medientöne"</string>
- <string name="zen_mode_media_summary" msgid="7174081803853351461">"Ton von Videos, Spielen und sonstigen Medien"</string>
+ <string name="zen_mode_media_summary" msgid="7174081803853351461">"Töne von Videos, Spielen und sonstigen Medien"</string>
<string name="zen_mode_media_list" msgid="2006413476596092020">"Medien"</string>
<string name="zen_mode_media_list_first" msgid="7824427062528618442">"Medien"</string>
<string name="zen_mode_system" msgid="7301665021634204942">"Töne bei Berührung"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Ausgewählte Apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Keine"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Alle"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Überschreiben durch Apps zulassen"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps, die unterbrechen dürfen"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Weitere Apps auswählen"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Eine Stunde lang bis {time} zur Option „nur Weckrufe“ wechseln}other{# Stunden lang bis {time} zur Option „nur Weckrufe“ wechseln}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Bis <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> zur Option \"Nur Weckrufe\" wechseln"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Zur Option \"Immer unterbrechen\" wechseln"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Umbenennen"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Symbol ändern"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Symbol ändern"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Warnung"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Schließen"</string>
<string name="device_feedback" msgid="5351614458411688608">"Feedback zu diesem Gerät senden"</string>
@@ -4160,8 +4172,8 @@
<string name="data_saver_on" msgid="7848893946018448793">"An"</string>
<string name="data_saver_off" msgid="5891210864117269045">"Aus"</string>
<string name="data_saver_switch_title" msgid="7111538580123722959">"Datensparmodus verwenden"</string>
- <string name="unrestricted_app_title" msgid="8531936851059106374">"Nutzung von unbegrenzten mobilen Daten"</string>
- <string name="unrestricted_app_summary" msgid="8320813971858627624">"Im Datensparmodus Zugriff auf unbegrenzte mobile Daten erlauben"</string>
+ <string name="unrestricted_app_title" msgid="8531936851059106374">"Unbegrenzte Nutzung von mobilen Daten"</string>
+ <string name="unrestricted_app_summary" msgid="8320813971858627624">"Im Datensparmodus unbegrenzten Zugriff auf mobile Daten erlauben"</string>
<string name="home_app" msgid="6056850504746902747">"Start-App"</string>
<string name="suggestion_additional_fingerprints" msgid="4726777300101156208">"Weiteren Fingerabdruck hinzufügen"</string>
<string name="suggestion_additional_fingerprints_summary" msgid="2825364645039666674">"Mit einem anderen Finger entsperren"</string>
@@ -4459,7 +4471,7 @@
<string name="credman_picker_title" msgid="8442086614222006564">"Bevorzugte Dienste für Passwörter, Passkeys & Autofill"</string>
<string name="credman_confirmation_message_title" msgid="8847900085593880729">"%1$s deaktivieren?"</string>
<string name="credman_confirmation_message" msgid="2357324543658635239">"<b>Diesen Dienst deaktivieren?</b> <br/> <br/> Gespeicherte Daten wie Passwörter, Passkeys, Zahlungsmethoden usw. werden beim Anmelden nicht eingetragen. Wenn du deine gespeicherten Daten verwenden möchtest, nutze einen Passwort-, Passkey- oder Datendienst."</string>
- <string name="account_dashboard_title_with_passkeys" msgid="648242372086733541">"Passwörter, Passkeys und Konten"</string>
+ <string name="account_dashboard_title_with_passkeys" msgid="648242372086733541">"Passwörter, Passkeys & Konten"</string>
<string name="credman_confirmation_message_new_ui" msgid="6126274509951156460">"<b>Alle Dienste deaktivieren?</b> <br/> <br/> Passwörter, Passkeys und andere gespeicherte Informationen werden nicht mehr automatisch ausgefüllt, wenn du dich anmeldest"</string>
<string name="credman_autofill_confirmation_message_new_ui" msgid="6222139222478822267">"<b>Bevorzugten Dienst zu <xliff:g id=app_name example=Provider>%1$s</xliff:g> ändern?</b> <br/> <br/> Neue Passwörter, Passkeys und weitere Informationen werden ab sofort hier gespeichert. <xliff:g id=app_name example=Provider>%1$s</xliff:g> kann anhand dessen, was auf deinem Bildschirm zu sehen ist, bestimmen, was automatisch ausgefüllt werden kann."</string>
<string name="credman_enable_confirmation_message_title" msgid="1037501792652277829">"%1$s verwenden?"</string>
@@ -4468,7 +4480,7 @@
<string name="credman_confirmation_change_provider_positive_button" msgid="7732302992885116967">"Ändern"</string>
<string name="credman_limit_error_msg_title" msgid="1525814645803612135">"Es können nur fünf Dienste aktiviert sein"</string>
<string name="credman_limit_error_msg" msgid="2521803280130310063">"Bevor du einen weiteren Dienst hinzufügen kannst, musst du mindestens einen der aktivierten Dienste deaktivieren"</string>
- <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"Wähle den Dienst aus, in dem Daten Anmeldedaten und Autofill-Vorschläge gespeichert werden sollen („Bevorzugter Dienst“). Wenn auch andere Dienste Vorschläge liefern sollen, kannst du sie unter „Weitere Dienste“ aktivieren."</string>
+ <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"Wähle den Dienst aus, in dem Anmeldedaten und Autofill-Vorschläge gespeichert werden sollen („Bevorzugter Dienst“). Wenn auch andere Dienste Vorschläge liefern sollen, kannst du sie unter „Weitere Dienste“ aktivieren."</string>
<string name="credman_enable_confirmation_message" msgid="8407841892310870169">"%1$s ermittelt anhand der Inhalte auf deinem Bildschirm, welche Informationen automatisch ausgefüllt werden können."</string>
<string name="credman_error_message_title" msgid="4099557206946333568">"Beschränkung für Passwörter, Passkeys und Datendienste"</string>
<string name="credman_error_message" msgid="8334797097200415449">"Es können bis zu 5 Passwörter, Passkeys und Datendienste gleichzeitig aktiviert sein. Wenn du einen weiteren Dienst hinzufügen möchtest, deaktiviere einen anderen."</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Links"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Rechts"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Etui"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Akku"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Einstellungen"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Desktop-Modus erzwingen"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Experiementellen Desktop-Modus auf sekundären Bildschirmen erzwingen"</string>
@@ -5020,7 +5033,7 @@
<string name="enable_2g_summary" msgid="2794534052372565914">"2G ist weniger sicher, bietet aber an manchen Orten eine bessere Verbindung. Für Notrufe ist 2G immer zugelassen."</string>
<string name="enable_2g_summary_disabled_carrier" msgid="8141118453219482762">"Für <xliff:g id="CARRIER_NAME_2G">%1$s</xliff:g> muss 2G verfügbar sein"</string>
<string name="require_cellular_encryption_title" msgid="6087085031703089235">"Nur verschlüsselte Netzwerke zulassen"</string>
- <string name="require_cellular_encryption_summary" msgid="6090569065420631457">"Dies ist sicherer, schränkt aber möglicherweise deine Mobilfunkverbindung an einigen Orten ein. Notrufe sind immer erlaubt."</string>
+ <string name="require_cellular_encryption_summary" msgid="6090569065420631457">"Dies ist sicherer, schränkt aber eventuell die Möglichkeit einer Mobilfunkverbindung an manchen Orten ein. Notrufe sind immer erlaubt."</string>
<string name="app_info_all_services_label" msgid="1487070364839071105">"Alle Dienste"</string>
<string name="show_clip_access_notification" msgid="7782300987639778542">"Zugriff auf Zwischenablage anzeigen"</string>
<string name="show_clip_access_notification_summary" msgid="474090757777203207">"Eine Meldung wird angezeigt, wenn Apps auf Text, Bilder oder andere Inhalte zugreifen, die du kopiert hast"</string>
@@ -5258,7 +5271,7 @@
<string name="audio_sharing_stream_name_title" msgid="8156859441897180940">"Name"</string>
<string name="audio_sharing_stream_password_title" msgid="7026649168165764602">"Passwort"</string>
<string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"Kompatibilität verbessern"</string>
- <string name="audio_sharing_stream_compatibility_description" msgid="8170241188606110963">"Reduziert die Audioqualität, um bestimmten Geräten, z. B. Hörgeräten, zu helfen, eine Verbindung herzustellen"</string>
+ <string name="audio_sharing_stream_compatibility_description" msgid="8170241188606110963">"Reduziert die Audioqualität, damit bestimmte Geräte wie z. B. Hörgeräte besser eine Verbindung herstellen können"</string>
<string name="audio_sharing_stream_compatibility_disabled_description" msgid="2586408353546825682">"Deaktiviert die Audiofreigabe, um die Konfiguration der Kompatibilität zu ermöglichen"</string>
<string name="audio_sharing_nearby_audio_title" msgid="4795438407040677177">"Audiostreams in der Nähe anhören"</string>
<string name="audio_sharing_footer_description" msgid="4786942197840271680">"Die Audiofreigabe unterstützt Auracast™"</string>
diff --git a/res/values-el/arrays.xml b/res/values-el/arrays.xml
index 23d07bd..6e63159 100644
--- a/res/values-el/arrays.xml
+++ b/res/values-el/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 7ae42dc..d0ddc9d 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Αποσύνδεση συσκευής;"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Σύζευξη νέας συσκευής"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Αυτόματη ενεργοποίηση ξανά αύριο"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Σύζευξη δεξιού"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Σύζευξη αριστερού"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Σύζευξη του άλλου αυτιού"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Σύζευξη αριστερού"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Ρυθμίσεις συσκευής ακοής"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Συντόμευση, συμβατότητα με βοηθήματα ακοής"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Προεπιλογές"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Προεπιλογή"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Δεν ήταν δυνατή η ενημέρωση της προεπιλογής"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Έξοδος ήχου"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Σχετικά με την έξοδο ήχου"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Ακύρωση"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Όχι, ευχαριστώ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Όχι τώρα"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Συμφωνώ"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Περισσότερα"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Ξεκλείδωμα με το πρόσωπό σας"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Έχετε υπόψη τα εξής"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Χρησιμοποιήστε το δακτυλικό σας αποτύπωμα, για να ξεκλειδώνετε το τηλέφωνό σας ή να εγκρίνετε αγορές.\n\nΣημείωση: Δεν μπορείτε να χρησιμοποιήσετε το δακτυλικό σας αποτύπωμα, για να ξεκλειδώσετε αυτήν τη συσκευή. Για περισσότερες πληροφορίες, επικοινωνήστε με τον διαχειριστή του οργανισμού σας."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Ακύρωση"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Όχι, ευχαριστώ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Όχι τώρα"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Συμφωνώ"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Παράβλεψη δακτ. αποτυπώματος;"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Απαιτούνται ένα έως δύο λεπτά για τη ρύθμιση δακτυλικού αποτυπώματος. Εάν παραβλέψετε αυτό το βήμα, μπορείτε να προσθέσετε το δακτυλικό αποτύπωμά σας αργότερα στις ρυθμίσεις."</string>
@@ -556,12 +557,12 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Πατήστε για ρύθμιση"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Ξεκλείδωμα με δακτυλικό αποτύπωμα για ιδιωτικό χώρο"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Ξεκλείδωμα με το πρόσωπο για ιδιωτικό χώρο"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Ξεκλείδωμα με πρόσωπο και δακτυλικό αποτύπ. για ιδιωτ. χώρο"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Ξεκλείδ. με πρόσωπο και δακτ. αποτύπ. για ιδιωτ. χώρο"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Ρύθμιση της λειτουργίας Ξεκλείδωμα με δακτυλικό αποτύπωμα για ιδιωτικό χώρο"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Χρησιμοποιήστε το δακτυλικό σας αποτύπωμα για να ξεκλειδώσετε τον ιδιωτικό χώρο σας ή να επαληθεύετε την ταυτότητά σας, για παράδειγμα, όταν συνδέεστε σε εφαρμογές ή εγκρίνετε κάποια αγορά"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Ο ιδιωτικός χώρος σας μπορεί να ξεκλειδωθεί άθελά σας, για παράδειγμα, εάν κάποιος τοποθετήσει το δάχτυλό σας στη συσκευή."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Χρησιμοποιήστε το δακτυλικό σας αποτύπωμα για να ξεκλειδώσετε τον ιδιωτικό χώρο σας ή για να εγκρίνετε αγορές"</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Ρύθμιση της λειτουργίας Ξεκλείδωμα με το πρόσωπο για ιδιωτικό χώρο"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Ρύθμιση λειτ. Ξεκλείδωμα με το πρόσωπο για ιδιωτικό χώρο"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Χρησιμοποιήστε το πρόσωπό σας για να ξεκλειδώσετε τον ιδιωτικό χώρο σας ή για να επαληθεύσετε την ταυτότητά σας, για παράδειγμα κατά τη σύνδεση σε εφαρμογές ή την έγκριση μιας αγοράς"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Ο ιδιωτικός χώρος μπορεί να ξεκλειδωθεί εάν κοιτάξετε το τηλέφωνό σας, ακόμη και άθελά σας. Ο ιδιωτικός χώρος σας μπορεί επίσης να ξεκλειδωθεί από κάποιο άτομο που σας μοιάζει πολύ, όπως για παράδειγμα, τον δίδυμο αδελφό σας, ή σε περίπτωση που κάποιος πλησιάσει τη συσκευή στο πρόσωπό σας."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Το ξεκλείδωμα του ιδιωτικού χώρου σας με τη χρήση του προσώπου σας ενδέχεται να είναι λιγότερο ασφαλές από τη χρήση ενός ισχυρού μοτίβου, ενός PIN ή ενός κωδικού πρόσβασης"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Κάθε φορά που κλειδώνεται η συσκευή"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 λεπτά μετά το χρον. όριο κλεισ. οθόνης"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Μόνο μετά από επανεκκίνηση της συσκευής"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Απόκρυψη ιδιωτικού χώρου"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Απόκρυψη ιδιωτικού χώρου κατά το κλείδωμα"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Για να μην γνωρίζουν άλλοι ότι έχετε κάποιον ιδιωτικό χώρο στη συσκευή σας, μπορείτε να τον κρύψετε ώστε να μην εμφανίζεται στη λίστα εφαρμογών"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Ρύθμιση"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Ιδιωτικός χώρος"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Απόκρυψη ή κλείδωμα ιδιωτικών εφαρμογών σε ξεχωριστό χώρο. Χρησιμοποιήστε έναν αποκλειστικό Λογαριασμό Google για επιπλέον ασφάλεια."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Ρύθμιση του ιδιωτικού χώρου"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Επιλογή Λογαριασμού Google για τον χώρο σας"</b>\n"Η χρήση ενός αποκλειστικού λογαριασμού βοηθά στο να διακοπεί η εμφάνιση συγχρονισμένων αρχείων, φωτογραφιών και μηνυμάτων ηλεκτρονικού ταχυδρομείου εκτός του χώρου σας"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Πώς λειτουργεί"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Δημιουργήστε έναν Λογαριασμό Google για τον χώρο σας"</b>\n"Εάν χρησιμοποιείτε έναν αποκλειστικό λογαριασμό, μπορείτε να αποτρέψετε την εμφάνιση συγχρονισμένων αρχείων, φωτογραφιών και μηνυμάτων ηλεκτρονικού ταχυδρομείου εκτός του χώρου σας"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Ρύθμιση κλειδώματος"</b>\n"Κλειδώστε τον χώρο σας για να μην μπορούν να τον ανοίξουν άλλα άτομα"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Εγκατάσταση εφαρμογών"</b>\n"Ο απόρρητος χώρος διαθέτει το δικό του Play Store για εύκολη εγκατάσταση εφαρμογών."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Οι εφαρμογές στον ιδιωτικό χώρο σας δεν εμφανίζονται στη Διαχείριση αδειών, στον πίνακα ελέγχου απορρήτου και σε άλλες ρυθμίσεις όταν ο ιδιωτικός χώρος είναι κλειδωμένος.\n\nΔεν είναι δυνατή η επαναφορά του ιδιωτικού χώρου σας σε νέα συσκευή. Θα πρέπει να δημιουργήσετε έναν άλλο ιδιωτικό χώρο, αν επιθυμείτε να τον χρησιμοποιήσετε σε μια άλλη συσκευή.\n\nΕάν κάποιος συνδέσει τη συσκευή σας σε έναν υπολογιστή ή εγκαταστήσει κακόβουλες εφαρμογές στη συσκευή σας, μπορεί να αποκτήσει πρόσβαση στον ιδιωτικό χώρο σας."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Εγκαταστήστε εφαρμογές"</b>\n"Εγκαταστήστε εφαρμογές που θέλετε να διατηρήσετε ιδιωτικές στον χώρο σας"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Να έχετε υπόψη τα εξής"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Η λειτουργία των εφαρμογών διακόπτεται όταν κλειδώνετε τον χώρο σας"</b>\n"Όταν κλειδώνετε τον χώρο σας, η λειτουργία των εφαρμογών στον χώρο σας διακόπτεται και παύετε να λαμβάνετε ειδοποιήσεις από αυτές"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Μάθετε περισσότερα για τον ιδιωτικό χώρο"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Η διαδικασία θα διαρκέσει λίγη ώρα"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Ρύθμιση ιδιωτικού χώρου…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Μπορείτε να ορίσετε ένα νέο κλείδωμα μόνο για τον ιδιωτικό χώρο ή να χρησιμοποιήσετε το ίδιο κλείδωμα που χρησιμοποιείτε για το ξεκλείδωμα της συσκευής σας"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Χρήση κλειδώματος οθόνης"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Επιλογή νέου κλειδώματος"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Μια στιγμή…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Μια στιγμή…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Όλα έτοιμα!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Για να βρείτε τον ιδιωτικό χώρο, μεταβείτε στη λίστα εφαρμογών και έπειτα κάντε κύλιση προς τα κάτω"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Τέλος"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Ορισμός PIN ιδιωτικού χώρου"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Ορισμός κωδ. πρόσβασης ιδιωτικού χώρου"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Ορισμός μοτίβου ιδιωτικού χώρου"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Δημιουργήστε έναν Λογαριασμό Google για να διατηρήσετε ιδιωτικά τα δεδομένα σας"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Στην επόμενη οθόνη μπορείτε να συνδεθείτε σε έναν λογαριασμό για χρήση με τον ιδιωτικό χώρο σας"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Δημιουργήστε έναν αποκλειστικό λογαριασμό ώστε τα δεδομένα να μην εμφανίζονται εκτός του ιδιωτικού χώρου, όπως:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Συγχρονισμένες φωτογρ., αρχεία, μηνύμ .ηλ. ταχυδρ., επαφές, συμβ. ημερολ. και άλλα δεδομ."</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Ιστορικό λήψης εφαρμογών και προτάσεις"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Ιστορ. περιήγ., σελιδοδείκτες και αποθηκ. κωδικοί πρόσβασης"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Προτεινόμενο περιεχόμενο σχετικά με τη δραστηριότητά σας σε εφαρμογές του ιδιωτικού χώρου"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Το κατάλαβα"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Κλείδωμα"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Απόκρυψη"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Μπορείτε να προσθέσετε έως <xliff:g id="COUNT">%d</xliff:g> δακτυλικά αποτυπώματα"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Πιστοποιητικό συστήματος"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Καρφίτσωμα πιστοποιητικού"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Λεπτομέρειες δικτύου"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Αυτό το δίκτυο χρησιμοποιεί ένα παλαιότερο πρωτόκολλο ασφαλείας με την ονομασία WEP, το οποίο είναι λιγότερο ασφαλές"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Μάσκα υποδικτύου"</string>
<string name="server_name_title" msgid="7257095185810299066">"Όνομα διακομιστή"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Τύπος"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Διεύθυνση MAC Wi‑Fi συσκευής"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Διεύθυνση Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Σειριακός αριθμός"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Χρόνος από την τελευταία εκκίνηση"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Χρόνος λειτουργίας"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Ημερομηνία κατασκευής"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Ημερομηνία πρώτης χρήσης"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Πλήθος κύκλων"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Πάτημα κάτω δεξιά"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Πατήστε κάτω δεξιά στην επιφάνεια αφής για περισ. επιλογές."</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Ταχύτητα δείκτη"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Στιλ γεμίσματος δείκτη"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Αλλαγή στιλ γεμίσμ. δείκτη σε μαύρο"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Αλλαγή στιλ γεμίσ. δείκ. σε πράσινο"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Αλλαγή στιλ γεμίσ. δείκ. σε κίτρινο"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Αλλαγή στιλ γεμίσματ. δείκτη σε ροζ"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Αλλαγή στιλ γεμίσμ. δείκτη σε μπλε"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Μάθετε κινήσεις επιφάνειας αφής"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"επιφάνειας αφής, επιφάνεια, ποντίκι, δείκτης, κύλιση, σάρωση, δεξί κλικ, κλικ, δείκτης"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"δεξί κλικ, πάτημα"</string>
@@ -2401,7 +2404,7 @@
<string name="accessibility_dialog_button_deny" msgid="2037249860078259284">"Όχι"</string>
<string name="accessibility_dialog_button_stop" msgid="7584815613743292151">"Απενεργοπ."</string>
<string name="accessibility_dialog_button_cancel" msgid="8625997437316659966">"Ενεργό"</string>
- <string name="disable_service_title" msgid="8178020230162342801">"Απενεργοποίηση <xliff:g id="SERVICE">%1$s</xliff:g>;"</string>
+ <string name="disable_service_title" msgid="8178020230162342801">"Απενεργοποίηση του <xliff:g id="SERVICE">%1$s</xliff:g>;"</string>
<string name="accessibility_no_services_installed" msgid="3725569493860028593">"Δεν έχουν εγκατασταθεί υπηρεσίες"</string>
<string name="accessibility_no_service_selected" msgid="1310596127128379897">"Δεν έχει επιλεγεί κάποια υπηρεσία"</string>
<string name="accessibility_service_default_description" msgid="7801435825448138526">"Δεν υπάρχει περιγραφή."</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Κανένα}=1{Ορίστηκε ένα πρόγραμμα.}other{Ορίστηκαν # προγράμματα.}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Μην ενοχλείτε"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Λειτουργίες προτεραιότητας"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Λήψη ειδοποιήσεων μόνο από σημαντικά άτομα και εφαρμογές"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Περιορισμός διακοπών"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Ενεργοποίηση λειτουργίας \"Μην ενοχλείτε\""</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Επεξεργασία"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Προγράμματα"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Πρόγραμμα"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Αυτόματη ενεργοποίηση"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Προσθήκη ημερολογίου"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Χρήση του ημερολογίου σας"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Πρόγραμμα"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Πρόγραμμα"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Σίγαση τηλεφώνου ορισμένες ώρες"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Αυτή η εφαρμογή δεν υποστηρίζει βελτιωμένες ρυθμίσεις"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Περισσότερες ρυθμίσεις"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Περισσότερες ρυθμίσεις είναι διαθέσιμες μέσα σε αυτή την εφαρμογή"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Περίοδος cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Χρήση περιόδου cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Όταν λαμβάνετε πολλές ειδοποιήσεις σε σύντομο χρονικό διάστημα, η συσκευή σας θα ελαχιστοποιήσει τις ηχητικές παρεμβολές και τα αναδυόμενα παράθυρα στην οθόνη. Θα εξακολουθείτε να λαμβάνετε κανονικά ειδοποιήσεις για κλήσεις, ξυπνητήρια και συζητήσεις προτεραιότητας και θα μπορείτε να βρείτε εύκολα όλες τις ειδοποιήσεις που σας παραδίδονται στη Σκίαση ειδοποιήσεων."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Εφαρμογή σε προφίλ εργασίας"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Εφαρμογή σε εφαρμογές με προφίλ εργασίας"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Βοηθητικές υπηρεσίες Εικονικής Πραγματικότητας"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Επιλεγμένες εφαρμογές"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Καμία"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Όλες"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Να επιτρέπεται στις εφαρμογές η παράκαμψη"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Εφαρμογές που μπορούν να διακόπτουν"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Επιλέξτε περισσότερες εφαρμογές"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Αλλαγή σε λειτουργία Μόνο ξυπνητήρια για μία ώρα, έως {time}}other{Αλλαγή σε λειτουργία Μόνο ξυπνητήρια για # ώρες, έως {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Αλλαγή σε ξυπνητήρια μόνο έως τις <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Αλλαγή σε διακοπές πάντα"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Ειδοποίηση"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Κλείσιμο"</string>
<string name="device_feedback" msgid="5351614458411688608">"Αποστολή σχολίων για τη συσκευή"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Αριστερά"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Δεξιά"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Θήκη"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Μπαταρία"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Πλαίσιο ρυθμίσεων"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Αναγκαστική λειτουργία επιτραπέζιου υπολογιστή"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Αναγκαστική πειραματική λειτουργία επιτραπέζιου υπολογιστή σε δευτερεύουσες οθόνες"</string>
@@ -4851,7 +4870,7 @@
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Βρίσκεστε στη λειτουργία που δεν εξαρτάται από το μέγεθος σελίδας και εκτελεί πυρήνα 16 KB και πρόκειται να μεταβείτε στη λειτουργία 4 KB. Δεν είναι δυνατή η εγγύηση της ακεραιότητας του λογισμικού σε αυτή τη λειτουργία. Επίσης, τυχόν δεδομένα τα οποία αποθηκεύονται στο τηλέφωνο ενώ είναι ξεκλειδωμένο το πρόγραμμα φόρτωσης εκκίνησης ενδέχεται να κινδυνεύουν. Αυτή η ενέργεια θα οδηγήσει σε επανεκκίνηση της συσκευής. Ορισμένες δυνατότητες θα απενεργοποιηθούν σε αυτές τις λειτουργίες, επομένως ορισμένες εφαρμογές ενδέχεται να μην λειτουργούν. Για να επιστρέψετε τη συσκευή στη λειτουργία παραγωγής, θα πρέπει να κλειδώσετε το πρόγραμμα φόρτωσης εκκίνησης, γεγονός που οδηγεί στην επαναφορά των εργοστασιακών ρυθμίσεων της συσκευής. Μετά την επιτυχημένη εκκίνηση της συσκευής στο Android, απενεργοποιήστε το OEM ξεκλείδωμα στις Επιλογές για προγραμματιστές."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Απέτυχε η ενημέρωση του πυρήνα ώστε να είναι συμβατός με σελίδες μεγέθους 16 KB."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Εφαρμόζεται η αλλαγή"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Να αλλάξει η μορφή της συσκευής σε ext4; (απαιτείται για τη λειτουργία 16 KB)"</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Αλλαγή της μορφής ext4; (απαιτείται για 16 KB)"</string>
<string name="confirm_format_ext4_text" msgid="7940372488624630214">"Το διαμέρισμα δεδομένων αυτής της συσκευής πρέπει να μετατραπεί σε ext4 πριν από τη χρήση της επιλογής 16 KB για προγραμματιστές. Δεν είναι δυνατή η εγγύηση της ακεραιότητας του λογισμικού σε αυτή τη λειτουργία. Επίσης, τυχόν δεδομένα τα οποία αποθηκεύονται στο τηλέφωνο ενώ είναι ξεκλειδωμένο το πρόγραμμα φόρτωσης εκκίνησης ενδέχεται να κινδυνεύουν. Η ενεργοποίηση της επιλογής 16 KB απαιτεί μία ακόμα επανεκκίνηση μετά από αυτό. Όταν βρίσκεστε σε αυτή τη λειτουργία, μπορείτε να κάνετε εναλλαγή μεταξύ των λειτουργιών 4 KB και 16 KB με μία μόνο επανεκκίνηση. Ορισμένες δυνατότητες θα απενεργοποιηθούν σε αυτές τις λειτουργίες, επομένως ορισμένες εφαρμογές ενδέχεται να μην λειτουργούν. Για να επιστρέψετε τη συσκευή στη λειτουργία παραγωγής, θα πρέπει να μεταβείτε ξανά στη λειτουργία 4 KB και κατόπιν να κλειδώσετε το πρόγραμμα φόρτωσης εκκίνησης, γεγονός που οδηγεί στην επαναφορά των εργοστασιακών ρυθμίσεων της συσκευής. Μετά την επιτυχημένη εκκίνηση της συσκευής στο Android, απενεργοποιήστε το OEM ξεκλείδωμα στις Επιλογές για προγραμματιστές. Θα γίνει εκκαθάριση της συσκευής και το σύστημα αρχείων θα αλλάξει σε ext4 κατόπιν επιβεβαίωσης. Αφού ολοκληρωθεί αυτή η διαδικασία, επιστρέψτε για να ενεργοποιήσετε ξανά τη λειτουργία 16 KB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Διαγραφή όλων των δεδομένων"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Απέτυχε η αλλαγή μορφής και η εκκαθάριση του διαμερίσματος δεδομένων σε ext4."</string>
diff --git a/res/values-en-rAU/arrays.xml b/res/values-en-rAU/arrays.xml
index ab87841..839e9a8 100644
--- a/res/values-en-rAU/arrays.xml
+++ b/res/values-en-rAU/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 49e9662..164486d 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Disconnect device?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Pair new device"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatically turn on again tomorrow"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Pair right ear"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Pair left ear"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Pair your other ear"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Pair left ear"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Hearing device settings"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Shortcut, hearing aid compatibility"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Presets"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Couldn\'t update preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio output"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"About audio output"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancel"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No, thanks"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Not now"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"I agree"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"More"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Unlock with your face"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Bear in mind"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Use your fingerprint to unlock your phone or approve purchases.\n\nNote: You can’t use your fingerprint to unlock this device. For more information, contact your organisation’s admin."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancel"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No, thanks"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Not now"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"I agree"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Skip fingerprint?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Fingerprint setup only takes a minute or two. If you skip this, you can add your fingerprint later in Settings."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Every time device locks"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutes after screen timeout"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Only after device restarts"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"If you use a different lock for your private space, you may need to verify that it\'s you to open apps in your private space."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Hide private space"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Hide private space when it\'s locked"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"To stop other people knowing that you have a private space on your device, you can hide it from your apps list"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Set up"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Private space"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Hide or lock private apps in a separate space. Use a dedicated Google Account for extra security."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Set up your private space"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Choose a Google Account for your space"</b>\n"Using a dedicated account helps to stop synced files, photos and emails from appearing outside your space"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"How it works"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Create a Google Account for your space"</b>\n"If you use a dedicated account, it helps to stop synced files, photos and emails from appearing outside your space"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Set a lock"</b>\n"Lock your space to stop other people from opening it"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Install apps"</b>\n"Your private space has its own Play Store so that you can install apps easily."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps in your private space won\'t appear in Permission manager, privacy dashboard and other settings when your private space is locked.\n\nYour private space can\'t be restored to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Install apps"</b>\n"Install apps that you want to keep private in your space"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Bear in mind"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps stop when you lock your space"</b>\n"When you lock your space, apps in your space are stopped and you won\'t receive notifications from them"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Learn more about private space"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"This will take a few moments"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Setting up private space…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"You can set a new lock just for private space or use the same lock that you use to unlock your device"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Use screen lock"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Choose new lock"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Just a sec…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Just a sec…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"All set!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"To find your private space, go to your apps list then scroll down"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Done"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Set a PIN for your private space"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Set a password for your private space"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Set a pattern for your private space"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Create a Google Account to help keep your data private"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"On the next screen, you can sign in to an account to use with your private space"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Create a dedicated account to help stop data appearing outside private space, such as:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synced photos, files, emails, contacts, calendar events and other data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"App download history and recommendations"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browsing history, bookmarks and saved passwords"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Suggested content related to your activity in private space apps"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Got it"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lock"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Hide"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"You can add up to <xliff:g id="COUNT">%d</xliff:g> fingerprints"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"System certificate"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Certificate pinning"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Network details"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"This network uses an older security protocol called WEP, which is less secure"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Server name"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Device Wi‑Fi MAC address"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth address"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serial number"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Uptime"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Uptime"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Manufacture date"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Date of first use"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Cycle count"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Bottom-right tap"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tap the bottom-right corner of the touchpad for more options"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Pointer speed"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Pointer fill style"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Change pointer fill style to black"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Change pointer fill style to green"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Change pointer fill style to yellow"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Change pointer fill style to pink"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Change pointer fill style to blue"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Learn touchpad gestures"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, scroll, swipe, right-click, click, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"right click, tap"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{None}=1{1 schedule set}other{# schedules set}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Do Not Disturb"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Priority modes"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Only get notified by important people and apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limit interruptions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Turn on Do Not Disturb"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Add a calendar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use your calendar"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Schedule"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Set a schedule"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Schedule"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g>hr, <xliff:g id="MINUTES">%2$d</xliff:g>min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Schedule"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silence phone at certain times"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Set do not disturb rules"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"This app doesn’t support enhanced settings"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"More settings"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"More settings are available inside this app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Use cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"When you get many notifications within a short time span, your device will minimise sound interruptions and pop-ups on the screen. Calls, alarms and priority conversations will still alert as normal, and all delivered notifications are easy to find in the Shade."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Apply to work profiles"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Apply to work profile apps"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR helper services"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Selected apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"None"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"All"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Allow apps to override"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps that can interrupt"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Select more apps"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Change to alarms only for one hour until {time}}other{Change to alarms only for # hours until {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Change to alarms only until <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Change to always interrupt"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Rename"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Change icon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Change icon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Warning"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Close"</string>
<string name="device_feedback" msgid="5351614458411688608">"Send feedback about this device"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Left"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Right"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Case"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Battery"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Settings Panel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Force desktop mode"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Force experimental desktop mode on secondary displays"</string>
diff --git a/res/values-en-rCA/arrays.xml b/res/values-en-rCA/arrays.xml
index 61ce5d2..c6a61b4 100644
--- a/res/values-en-rCA/arrays.xml
+++ b/res/values-en-rCA/arrays.xml
@@ -498,4 +498,15 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <string-array name="zen_mode_icon_options_descriptions">
+ <item msgid="6386593780953863398">"Bedtime"</item>
+ <item msgid="4152450357280759894">"Driving"</item>
+ <item msgid="7096549258219399423">"Immersive"</item>
+ <item msgid="2760716776980432977">"Managed"</item>
+ <item msgid="601734478369121764">"Star"</item>
+ <item msgid="6243809315432780521">"Calendar"</item>
+ <item msgid="4913577903148415331">"Time"</item>
+ <item msgid="3653377604690057780">"Theater"</item>
+ <item msgid="3843711267408385410">"Flower"</item>
+ </string-array>
</resources>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index 45c7dd4..4ede5cb 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -65,7 +65,7 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Disconnect device?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Pair new device"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatically turn on again tomorrow"</string>
+ <string name="bluetooth_screen_auto_on_title" msgid="2203993262483477532">"Automatically turn on tomorrow"</string>
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Pair right ear"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Pair left ear"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Pair your other ear"</string>
@@ -75,7 +75,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Pair left ear"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Hearing device settings"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Shortcut, hearing aid compatibility"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Presets"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Couldn’t update preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio output"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"About audio output"</string>
@@ -312,7 +312,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancel"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No thanks"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Not now"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"I agree"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"More"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Unlock with your face"</string>
@@ -373,7 +373,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Keep in mind"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Use your fingerprint to unlock your phone or approve purchases.\n\nNote: You can’t use your fingerprint to unlock this device. For more information, contact your organization’s admin."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancel"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No thanks"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Not now"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"I agree"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Skip fingerprint?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Fingerprint setup only takes a minute or two. If you skip this, you can add your fingerprint later in Settings."</string>
@@ -577,7 +577,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Every time device locks"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutes after screen timeout"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Only after device restarts"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"If you use a different lock for your private space, you may need to verify it’s you to open apps in your private space."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Hide private space"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Hide private space when it\'s locked"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"To stop other people knowing you have a private space on your device, you can hide it from your apps list"</string>
@@ -608,11 +607,14 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Set up"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Private space"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Hide or lock private apps in a separate space. Use a dedicated Google Account for extra security."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Set up your private space"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Choose a Google Account for your space"</b>\n"Using a dedicated account helps to stop synced files, photos, and emails appearing outside your space"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"How it works"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Create a Google Account for your space"</b>\n"If you use a dedicated account, it helps to stop synced files, photos, and emails appearing outside your space"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Set a lock"</b>\n"Lock your space to stop other people opening it"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Install apps"</b>\n"Your private space has its own Play Store so you can install apps easily."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when your private space is locked.\n\nYour private space can\'t be restored to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Install apps"</b>\n"Install apps that you want to keep private in your space"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Keep in mind"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps stop when you lock your space"</b>\n"When you lock your space, apps in your space are stopped and you won’t receive notifications from them"</string>
+ <string name="private_space_apps_permission_text" msgid="4416201648436201393">"Private spaces are not suitable for apps that need to run in the background or send critical notifications, such as medical apps. This is because notifications and background activity are stopped when your space is locked.\n\nApps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when your private space is locked.\n\nYour private space can\'t be moved to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs harmful apps on your device may be able to access your private space."</string>
+ <string name="private_space_settings_footer_text" msgid="3742468470394835356">"Private spaces are not suitable for apps that need to run in the background or send critical notifications, such as medical apps. This is because notifications and background activity are stopped when your space is locked.\n\nApps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when private space is locked.\n\nYour private space can\'t be restored to a new device. You’ll need to set up another space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space."</string>
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Learn more about private space"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"This will take a few moments"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Setting up private space…"</string>
@@ -622,7 +624,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"You can set a new lock just for private space, or use the same lock you use to unlock your device"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Use screen lock"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Choose new lock"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Just a sec…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Just a sec…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"All set!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"To find your private space, go to your apps list then scroll down"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Done"</string>
@@ -636,14 +638,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Set a PIN for your private space"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Set a password for your private space"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Set a pattern for your private space"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Create a Google Account to help keep your data private"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"On the next screen you can sign in to an account to use with your private space"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Create a dedicated account to help stop data appearing outside private space, such as:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synced photos, files, emails, contacts, calendar events, and other data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"App download history and recommendations"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browsing history, bookmarks, and saved passwords"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Suggested content related to your activity in private space apps"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Got it"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lock"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Hide"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"You can add up to <xliff:g id="COUNT">%d</xliff:g> fingerprints"</string>
@@ -1054,6 +1048,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"System certificate"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Certificate pinning"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Network details"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"This network uses an older security protocol called WEP, which is less secure"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Server name"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1366,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Device Wi‑Fi MAC address"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth address"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serial number"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Up time"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Uptime"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Manufacture date"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Date of first use"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Cycle count"</string>
@@ -1925,6 +1920,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Bottom-right tap"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tap the bottom right corner of the touchpad for more options"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Pointer speed"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Pointer fill style"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Change pointer fill style to black"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Change pointer fill style to green"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Change pointer fill style to yellow"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Change pointer fill style to pink"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Change pointer fill style to blue"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Learn touchpad gestures"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, scroll, swipe, right click, click, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"right click, tap"</string>
@@ -3319,6 +3320,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{None}=1{1 schedule set}other{# schedules set}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Do Not Disturb"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Priority Modes"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Only get notified by important people and apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limit interruptions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Turn on Do Not Disturb"</string>
@@ -3333,6 +3336,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Add a calendar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use your calendar"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Schedule"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Set a schedule"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Schedule"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> hr, <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Schedule"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silence phone at certain times"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Set Do Not Disturb rules"</string>
@@ -3603,9 +3609,9 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"This app doesn’t support enhanced settings"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"More settings"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"More settings are available inside this app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Use Cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"When you get many notifications within a short time span, your device will minimize sound interruptions and pop-ups on the screen. Calls, alarms, and priority conversations will still alert as notmal, and all delivered notifications are easy to find in the Shade."</string>
+ <string name="notification_polite_title" msgid="4737150709382859870">"Adaptive Notifications"</string>
+ <string name="notification_polite_main_control_title" msgid="7267191551379543859">"Use adaptive notifications"</string>
+ <string name="notification_polite_description" msgid="7749280535620291610">"When you get many notifications within a short time, your phone will lower volume and minimize pop-ups on screen for up to two minutes. Calls, alarms, and priority conversations still vibrate, make a sound, or show up on the screen, and all notifications are easy to find when you pull down from the top of the screen."</string>
<string name="notification_polite_work" msgid="8823596456640216391">"Apply to work profiles"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Apply to work profile apps"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR helper services"</string>
@@ -3761,6 +3767,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Selected apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"None"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"All"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Allow apps to override"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps that can interrupt"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Select more apps"</string>
@@ -3797,6 +3805,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Change to alarms only for one hour until {time}}other{Change to alarms only for # hours until {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Change to alarms only until <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Change to always interrupt"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Rename"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Change icon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Change icon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Warning"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Close"</string>
<string name="device_feedback" msgid="5351614458411688608">"Send feedback about this device"</string>
@@ -4780,6 +4791,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Left"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Right"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Case"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Battery"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Settings Panel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Force desktop mode"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Force experimental desktop mode on secondary displays"</string>
diff --git a/res/values-en-rGB/arrays.xml b/res/values-en-rGB/arrays.xml
index ab87841..839e9a8 100644
--- a/res/values-en-rGB/arrays.xml
+++ b/res/values-en-rGB/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 7f00c3a..2c16ef3 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Disconnect device?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Pair new device"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatically turn on again tomorrow"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Pair right ear"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Pair left ear"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Pair your other ear"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Pair left ear"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Hearing device settings"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Shortcut, hearing aid compatibility"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Presets"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Couldn\'t update preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio output"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"About audio output"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancel"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No, thanks"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Not now"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"I agree"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"More"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Unlock with your face"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Bear in mind"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Use your fingerprint to unlock your phone or approve purchases.\n\nNote: You can’t use your fingerprint to unlock this device. For more information, contact your organisation’s admin."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancel"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No, thanks"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Not now"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"I agree"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Skip fingerprint?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Fingerprint setup only takes a minute or two. If you skip this, you can add your fingerprint later in Settings."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Every time device locks"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutes after screen timeout"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Only after device restarts"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"If you use a different lock for your private space, you may need to verify that it\'s you to open apps in your private space."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Hide private space"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Hide private space when it\'s locked"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"To stop other people knowing that you have a private space on your device, you can hide it from your apps list"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Set up"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Private space"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Hide or lock private apps in a separate space. Use a dedicated Google Account for extra security."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Set up your private space"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Choose a Google Account for your space"</b>\n"Using a dedicated account helps to stop synced files, photos and emails from appearing outside your space"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"How it works"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Create a Google Account for your space"</b>\n"If you use a dedicated account, it helps to stop synced files, photos and emails from appearing outside your space"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Set a lock"</b>\n"Lock your space to stop other people from opening it"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Install apps"</b>\n"Your private space has its own Play Store so that you can install apps easily."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps in your private space won\'t appear in Permission manager, privacy dashboard and other settings when your private space is locked.\n\nYour private space can\'t be restored to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Install apps"</b>\n"Install apps that you want to keep private in your space"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Bear in mind"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps stop when you lock your space"</b>\n"When you lock your space, apps in your space are stopped and you won\'t receive notifications from them"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Learn more about private space"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"This will take a few moments"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Setting up private space…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"You can set a new lock just for private space or use the same lock that you use to unlock your device"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Use screen lock"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Choose new lock"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Just a sec…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Just a sec…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"All set!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"To find your private space, go to your apps list then scroll down"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Done"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Set a PIN for your private space"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Set a password for your private space"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Set a pattern for your private space"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Create a Google Account to help keep your data private"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"On the next screen, you can sign in to an account to use with your private space"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Create a dedicated account to help stop data appearing outside private space, such as:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synced photos, files, emails, contacts, calendar events and other data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"App download history and recommendations"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browsing history, bookmarks and saved passwords"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Suggested content related to your activity in private space apps"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Got it"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lock"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Hide"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"You can add up to <xliff:g id="COUNT">%d</xliff:g> fingerprints"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"System certificate"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Certificate pinning"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Network details"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"This network uses an older security protocol called WEP, which is less secure"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Server name"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Device Wi‑Fi MAC address"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth address"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serial number"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Uptime"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Uptime"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Manufacture date"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Date of first use"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Cycle count"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Bottom-right tap"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tap the bottom-right corner of the touchpad for more options"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Pointer speed"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Pointer fill style"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Change pointer fill style to black"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Change pointer fill style to green"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Change pointer fill style to yellow"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Change pointer fill style to pink"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Change pointer fill style to blue"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Learn touchpad gestures"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, scroll, swipe, right-click, click, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"right click, tap"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{None}=1{1 schedule set}other{# schedules set}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Do Not Disturb"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Priority modes"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Only get notified by important people and apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limit interruptions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Turn on Do Not Disturb"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Add a calendar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use your calendar"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Schedule"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Set a schedule"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Schedule"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g>hr, <xliff:g id="MINUTES">%2$d</xliff:g>min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Schedule"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silence phone at certain times"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Set do not disturb rules"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"This app doesn’t support enhanced settings"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"More settings"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"More settings are available inside this app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Use cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"When you get many notifications within a short time span, your device will minimise sound interruptions and pop-ups on the screen. Calls, alarms and priority conversations will still alert as normal, and all delivered notifications are easy to find in the Shade."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Apply to work profiles"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Apply to work profile apps"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR helper services"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Selected apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"None"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"All"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Allow apps to override"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps that can interrupt"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Select more apps"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Change to alarms only for one hour until {time}}other{Change to alarms only for # hours until {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Change to alarms only until <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Change to always interrupt"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Rename"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Change icon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Change icon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Warning"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Close"</string>
<string name="device_feedback" msgid="5351614458411688608">"Send feedback about this device"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Left"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Right"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Case"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Battery"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Settings Panel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Force desktop mode"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Force experimental desktop mode on secondary displays"</string>
diff --git a/res/values-en-rIN/arrays.xml b/res/values-en-rIN/arrays.xml
index ab87841..839e9a8 100644
--- a/res/values-en-rIN/arrays.xml
+++ b/res/values-en-rIN/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 7bd8720..a62d9ee 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Disconnect device?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Pair new device"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatically turn on again tomorrow"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Pair right ear"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Pair left ear"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Pair your other ear"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Pair left ear"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Hearing device settings"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Shortcut, hearing aid compatibility"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Presets"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Couldn\'t update preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio output"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"About audio output"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancel"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No, thanks"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Not now"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"I agree"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"More"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Unlock with your face"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Bear in mind"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Use your fingerprint to unlock your phone or approve purchases.\n\nNote: You can’t use your fingerprint to unlock this device. For more information, contact your organisation’s admin."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancel"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No, thanks"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Not now"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"I agree"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Skip fingerprint?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Fingerprint setup only takes a minute or two. If you skip this, you can add your fingerprint later in Settings."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Every time device locks"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutes after screen timeout"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Only after device restarts"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"If you use a different lock for your private space, you may need to verify that it\'s you to open apps in your private space."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Hide private space"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Hide private space when it\'s locked"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"To stop other people knowing that you have a private space on your device, you can hide it from your apps list"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Set up"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Private space"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Hide or lock private apps in a separate space. Use a dedicated Google Account for extra security."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Set up your private space"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Choose a Google Account for your space"</b>\n"Using a dedicated account helps to stop synced files, photos and emails from appearing outside your space"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"How it works"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Create a Google Account for your space"</b>\n"If you use a dedicated account, it helps to stop synced files, photos and emails from appearing outside your space"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Set a lock"</b>\n"Lock your space to stop other people from opening it"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Install apps"</b>\n"Your private space has its own Play Store so that you can install apps easily."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps in your private space won\'t appear in Permission manager, privacy dashboard and other settings when your private space is locked.\n\nYour private space can\'t be restored to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Install apps"</b>\n"Install apps that you want to keep private in your space"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Bear in mind"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps stop when you lock your space"</b>\n"When you lock your space, apps in your space are stopped and you won\'t receive notifications from them"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Learn more about private space"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"This will take a few moments"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Setting up private space…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"You can set a new lock just for private space or use the same lock that you use to unlock your device"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Use screen lock"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Choose new lock"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Just a sec…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Just a sec…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"All set!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"To find your private space, go to your apps list then scroll down"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Done"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Set a PIN for your private space"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Set a password for your private space"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Set a pattern for your private space"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Create a Google Account to help keep your data private"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"On the next screen, you can sign in to an account to use with your private space"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Create a dedicated account to help stop data appearing outside private space, such as:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synced photos, files, emails, contacts, calendar events and other data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"App download history and recommendations"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browsing history, bookmarks and saved passwords"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Suggested content related to your activity in private space apps"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Got it"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lock"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Hide"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"You can add up to <xliff:g id="COUNT">%d</xliff:g> fingerprints"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"System certificate"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Certificate pinning"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Network details"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"This network uses an older security protocol called WEP, which is less secure"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Server name"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Device Wi‑Fi MAC address"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth address"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serial number"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Uptime"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Uptime"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Manufacture date"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Date of first use"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Cycle count"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Bottom-right tap"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tap the bottom-right corner of the touchpad for more options"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Pointer speed"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Pointer fill style"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Change pointer fill style to black"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Change pointer fill style to green"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Change pointer fill style to yellow"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Change pointer fill style to pink"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Change pointer fill style to blue"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Learn touchpad gestures"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, scroll, swipe, right-click, click, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"right click, tap"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{None}=1{1 schedule set}other{# schedules set}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Do Not Disturb"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Priority modes"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Only get notified by important people and apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limit interruptions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Turn on Do Not Disturb"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Add a calendar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use your calendar"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Schedule"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Set a schedule"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Schedule"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g>hr, <xliff:g id="MINUTES">%2$d</xliff:g>min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Schedule"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silence phone at certain times"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Set do not disturb rules"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"This app doesn’t support enhanced settings"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"More settings"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"More settings are available inside this app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Use cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"When you get many notifications within a short time span, your device will minimise sound interruptions and pop-ups on the screen. Calls, alarms and priority conversations will still alert as normal, and all delivered notifications are easy to find in the Shade."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Apply to work profiles"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Apply to work profile apps"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR helper services"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Selected apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"None"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"All"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Allow apps to override"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps that can interrupt"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Select more apps"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Change to alarms only for one hour until {time}}other{Change to alarms only for # hours until {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Change to alarms only until <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Change to always interrupt"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Rename"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Change icon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Change icon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Warning"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Close"</string>
<string name="device_feedback" msgid="5351614458411688608">"Send feedback about this device"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Left"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Right"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Case"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Battery"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Settings Panel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Force desktop mode"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Force experimental desktop mode on secondary displays"</string>
diff --git a/res/values-en-rXC/arrays.xml b/res/values-en-rXC/arrays.xml
index 2fed1f9..a7d044c 100644
--- a/res/values-en-rXC/arrays.xml
+++ b/res/values-en-rXC/arrays.xml
@@ -498,4 +498,15 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <string-array name="zen_mode_icon_options_descriptions">
+ <item msgid="6386593780953863398">"Bedtime"</item>
+ <item msgid="4152450357280759894">"Driving"</item>
+ <item msgid="7096549258219399423">"Immersive"</item>
+ <item msgid="2760716776980432977">"Managed"</item>
+ <item msgid="601734478369121764">"Star"</item>
+ <item msgid="6243809315432780521">"Calendar"</item>
+ <item msgid="4913577903148415331">"Time"</item>
+ <item msgid="3653377604690057780">"Theater"</item>
+ <item msgid="3843711267408385410">"Flower"</item>
+ </string-array>
</resources>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index f5ca83e..6ac6867 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -65,7 +65,7 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Disconnect device?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Pair new device"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatically turn on again tomorrow"</string>
+ <string name="bluetooth_screen_auto_on_title" msgid="2203993262483477532">"Automatically turn on tomorrow"</string>
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Pair right ear"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Pair left ear"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Pair your other ear"</string>
@@ -75,7 +75,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Pair left ear"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Hearing device settings"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Shortcut, hearing aid compatibility"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Presets"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Couldn’t update preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio output"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"About audio output"</string>
@@ -312,7 +312,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancel"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No thanks"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Not now"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"I agree"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"More"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Unlock with your face"</string>
@@ -373,7 +373,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Keep in mind"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Use your fingerprint to unlock your phone or approve purchases.\n\nNote: You can’t use your fingerprint to unlock this device. For more information, contact your organization’s admin."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancel"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No thanks"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Not now"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"I agree"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Skip fingerprint?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Fingerprint setup only takes a minute or two. If you skip this, you can add your fingerprint later in settings."</string>
@@ -577,7 +577,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Every time device locks"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutes after screen timeout"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Only after device restarts"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"If you use a different lock for your private space, you may need to verify it’s you to open apps in your private space."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Hide private space"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Hide private space when it\'s locked"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"To stop other people knowing you have a private space on your device, you can hide it from your apps list"</string>
@@ -608,11 +607,14 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Set up"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Private space"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Hide or lock private apps in a separate space. Use a dedicated Google Account for extra security."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Set up your private space"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548">""<b>"Choose a Google Account for your space"</b>"\nUsing a dedicated account helps to stop synced files, photos, and emails appearing outside your space"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"How it works"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320">""<b>"Create a Google Account for your space"</b>"\nIf you use a dedicated account, it helps to stop synced files, photos, and emails appearing outside your space"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735">""<b>"Set a lock"</b>"\nLock your space to stop other people opening it"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498">""<b>"Install apps"</b>"\nYour private space has its own Play Store so you can install apps easily."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when your private space is locked.\n\nYour private space can\'t be restored to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830">""<b>"Install apps"</b>"\nInstall apps that you want to keep private in your space"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Keep in mind"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169">""<b>"Apps stop when you lock your space"</b>"\nWhen you lock your space, apps in your space are stopped and you won’t receive notifications from them"</string>
+ <string name="private_space_apps_permission_text" msgid="4416201648436201393">"Private spaces are not suitable for apps that need to run in the background or send critical notifications, such as medical apps. This is because notifications and background activity are stopped when your space is locked.\n\nApps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when your private space is locked.\n\nYour private space can\'t be moved to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs harmful apps on your device may be able to access your private space."</string>
+ <string name="private_space_settings_footer_text" msgid="3742468470394835356">"Private spaces are not suitable for apps that need to run in the background or send critical notifications, such as medical apps. This is because notifications and background activity are stopped when your space is locked.\n\nApps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when private space is locked.\n\nYour private space can\'t be restored to a new device. You’ll need to set up another space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space."</string>
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Learn more about private space"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"This will take a few moments"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Setting up private space…"</string>
@@ -622,7 +624,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"You can set a new lock just for private space, or use the same lock you use to unlock your device"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Use screen lock"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Choose new lock"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Just a sec…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Just a sec…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"All set!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"To find your private space, go to your apps list then scroll down"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Done"</string>
@@ -636,14 +638,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Set a PIN for your private space"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Set a password for your private space"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Set a pattern for your private space"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Create a Google Account to help keep your data private"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"On the next screen you can sign in to an account to use with your private space"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495">""<b>"Create a dedicated account to help stop data appearing outside private space, such as:"</b>""</string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synced photos, files, emails, contacts, calendar events, and other data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"App download history and recommendations"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browsing history, bookmarks, and saved passwords"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Suggested content related to your activity in private space apps"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Got it"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lock"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Hide"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"You can add up to <xliff:g id="COUNT">%d</xliff:g> fingerprints"</string>
@@ -1054,6 +1048,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"System certificate"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Certificate pinning"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Network details"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"This network uses an older security protocol called WEP, which is less secure"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Server name"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1366,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Device Wi‑Fi MAC address"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth address"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serial number"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Up time"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Uptime"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Manufacture date"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Date of first use"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Cycle count"</string>
@@ -1925,6 +1920,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Bottom-right tap"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tap the bottom right corner of the touchpad for more options"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Pointer speed"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Pointer fill style"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Change pointer fill style to black"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Change pointer fill style to green"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Change pointer fill style to yellow"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Change pointer fill style to pink"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Change pointer fill style to blue"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Learn touchpad gestures"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, scroll, swipe, right click, click, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"right click, tap"</string>
@@ -3319,6 +3320,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{None}=1{1 schedule set}other{# schedules set}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Do Not Disturb"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Priority Modes"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Only get notified by important people and apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limit interruptions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Turn on Do Not Disturb"</string>
@@ -3333,6 +3336,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Add a calendar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use your calendar"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Schedule"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Set a schedule"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Schedule"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> hr, <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Schedule"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silence phone at certain times"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Set Do Not Disturb rules"</string>
@@ -3603,9 +3609,9 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"This app doesn’t support enhanced settings"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"More settings"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"More settings are available inside this app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Use Cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"When you get many notifications within a short time span, your device will minimize sound interruptions and pop-ups on the screen. Calls, alarms, and priority conversations will still alert as notmal, and all delivered notifications are easy to find in the Shade."</string>
+ <string name="notification_polite_title" msgid="4737150709382859870">"Adaptive Notifications"</string>
+ <string name="notification_polite_main_control_title" msgid="7267191551379543859">"Use adaptive notifications"</string>
+ <string name="notification_polite_description" msgid="7749280535620291610">"When you get many notifications within a short time, your phone will lower volume and minimize pop-ups on screen for up to two minutes. Calls, alarms, and priority conversations still vibrate, make a sound, or show up on the screen, and all notifications are easy to find when you pull down from the top of the screen."</string>
<string name="notification_polite_work" msgid="8823596456640216391">"Apply to work profiles"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Apply to work profile apps"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR helper services"</string>
@@ -3761,6 +3767,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Selected apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"None"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"All"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Allow apps to override"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps that can interrupt"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Select more apps"</string>
@@ -3797,6 +3805,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Change to alarms only for one hour until {time}}other{Change to alarms only for # hours until {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Change to alarms only until <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Change to always interrupt"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Rename"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Change icon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Change icon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Warning"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Close"</string>
<string name="device_feedback" msgid="5351614458411688608">"Send feedback about this device"</string>
@@ -4780,6 +4791,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Left"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Right"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Case"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Battery"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Settings Panel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Force desktop mode"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Force experimental desktop mode on secondary displays"</string>
diff --git a/res/values-es-rUS/arrays.xml b/res/values-es-rUS/arrays.xml
index d22996d..538ba6a 100644
--- a/res/values-es-rUS/arrays.xml
+++ b/res/values-es-rUS/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 0fc94a7..cde49e5 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"¿Desconectar dispositivo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Vincular dispositivo nuevo"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Volver a activar automáticamente mañana"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Vincular aud. der."</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Vincular aud. izq."</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Vincula el otro audífono"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Vincular aud. izq."</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Configuración de dispositivos auditivos"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Acceso directo, compatibilidad con audífonos"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Ajustes predeterminados"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Ajuste predeterminado"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"No se pudo actualizar el ajuste predeterminado"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Salida de audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Info. sobre salida de audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancelar"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No, gracias"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ahora no"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Acepto"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Más"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Usa tu rostro para desbloquear"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Para tener en cuenta"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Usa tu huella dactilar para desbloquear el teléfono o aprobar compras.\n\nNota: No puedes usar tu huella dactilar para desbloquear este dispositivo. Para obtener más información, comunícate con el administrador de la organización."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancelar"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No, gracias"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ahora no"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Acepto"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"¿Omitir huella dactilar?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"La configuración de la huella dactilar solo toma unos minutos. Si omites este paso, puedes agregarla más tarde en la app Configuración."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Cada vez que el dispositivo se bloquea"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min luego del tiempo de espera"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Solo después de reiniciar el dispositivo"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Si usas un bloqueo para tu espacio privado, es posible que debas verificar tu identidad para abrir las apps que estén allí."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ocultar espacio privado"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Oculta el espacio privado cuando está bloqueado"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Oculta el espacio privado de tu lista de apps en el dispositivo para que otras personas no puedan verlo"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurar"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espacio privado"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Oculta o bloquea las apps privadas en un espacio separado. Usa una Cuenta de Google exclusiva para más seguridad."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Cómo configurar tu espacio privado"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Elige una Cuenta de Google para tu espacio"</b>\n"Si usas una cuenta exclusiva, podrás evitar que los archivos, las fotos y los correos electrónicos sincronizados aparezcan fuera de tu espacio."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Cómo funciona"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crea una Cuenta de Google para tu espacio"</b>\n"Usa una cuenta exclusiva para evitar que aparezcan archivos sincronizados, fotos y correos electrónicos fuera de tu espacio"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Configura un bloqueo"</b>\n"Bloquea tu espacio privado para que nadie más pueda abrirlo."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instala apps"</b>\n"Tu espacio privado tiene su propia Play Store para que puedas instalar apps fácilmente."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Las apps de tu espacio privado no se mostrarán en el Administrador de permisos, el panel de privacidad ni en ningún otro parámetro de configuración cuando tu espacio privado esté bloqueado.\n\nTu espacio privado no puede restablecerse en un dispositivo nuevo. Deberás configurar uno nuevo si quieres usar la función en otro dispositivo.\n\nCualquier persona que conecte tu dispositivo a una computadora o le instale apps maliciosas podría acceder a tu espacio privado."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instala apps"</b>\n"Instala apps que quieres mantener privadas en tu espacio"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Importante"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Las apps se detienen cuando bloqueas tu espacio"</b>\n"Cuando bloquees tu espacio, las apps en él se detendrán, y no recibirás notificaciones de ellas"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Más información sobre el espacio privado"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"El proceso tardará unos minutos"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configurando espacio privado…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Puedes establecer un nuevo bloqueo solo para el espacio privado, o bien puedes usar el mismo que usas para desbloquear el dispositivo"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Usar bloqueo de pantalla"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Elegir nuevo bloqueo"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Un segundo…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Un segundo…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Todo listo"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Para encontrar el espacio privado, ve a tu lista de apps y desplázate hacia abajo"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Listo"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Establece un PIN para tu espacio privado"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Define contraseña para espacio privado"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Establece patrón para espacio privado"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crea una Cuenta de Google para mantener tus datos privados"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Puedes acceder a una cuenta en la siguiente pantalla para usar con tu espacio privado"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crea una cuenta específica para impedir que aparezcan datos fuera de tu espacio privado, como:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotos, archivos, correos, contactos, eventos de calendario y otros datos sincronizados"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historial de descarga de apps y recomendaciones"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historial de navegación, favoritos y contraseñas guardadas"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Contenido sugerido relacionado con tu actividad en apps del espacio privado"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Entendido"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloqueo"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ocultar"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Puedes agregar hasta <xliff:g id="COUNT">%d</xliff:g> huellas dactilares"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificado del sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fijación de certificados"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalles de la red"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Esta red usa un protocolo de seguridad antiguo llamado WEP que es menos seguro"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Máscara de subred"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nombre del servidor"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipo"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Dirección MAC de Wi-Fi del dispositivo"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Dirección de Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Número de serie"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tiempo de actividad"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Tiempo de actividad"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Fecha de fabricación"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Fecha de primer uso"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Conteo de ciclos"</string>
@@ -1603,7 +1601,7 @@
<string name="about_settings_summary" msgid="4831942939227432513">"Ver información legal, estado, versión de software del tablet"</string>
<string name="legal_information" msgid="7509900979811934843">"Información legal"</string>
<string name="manual" msgid="3651593989906084868">"Manual"</string>
- <string name="regulatory_labels" msgid="5960251403367154270">"Etiquetas reglamentarias"</string>
+ <string name="regulatory_labels" msgid="5960251403367154270">"Etiquetas sobre reglamentaciones"</string>
<string name="safety_and_regulatory_info" msgid="8285048080439298528">"Manual sobre reglamentación y seguridad"</string>
<string name="copyright_title" msgid="83245306827757857">"Derechos de autor"</string>
<string name="license_title" msgid="8745742085916617540">"Licencia"</string>
@@ -1630,7 +1628,7 @@
<string name="lockpassword_choose_your_pin_message" msgid="7230665212172041837">"Por motivos de seguridad, establece un PIN"</string>
<string name="lockpassword_choose_your_pin_header_for_fingerprint" msgid="2783879743691792556">"Configura el PIN para usar la huella"</string>
<string name="lockpassword_confirm_your_password_header" msgid="6132312814563023990">"Vuelve a ingresar tu contraseña"</string>
- <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Vuelve a ingresar contraseña de trabajo"</string>
+ <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Reingresa tu contraseña de trabajo"</string>
<string name="lockpassword_confirm_your_work_password_header" msgid="4647071231702288305">"Ingresa tu contraseña de trabajo"</string>
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"Confirma el patrón"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"Ingresa tu patrón de trabajo"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Toque en la parte inferior derecha"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Más opciones en la esquina inferior derecha del panel táctil"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocidad del puntero"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Estilo de relleno del puntero"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Cambia el estilo de relleno a negro"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Cambia el estilo de relleno a verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Cambia estilo de relleno a amarillo"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Cambia el estilo de relleno a rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Cambia el estilo de relleno a azul"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Aprende los gestos del panel táctil"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"panel táctil, panel, táctil,mouse, cursor, desplazar, deslizar, hacer clic con el botón derecho, clic, puntero"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"hacer clic con el botón derecho, presionar"</string>
@@ -2145,7 +2149,7 @@
<string name="accessibility_shortcut_edit_dialog_title_software_gesture" msgid="8078659880723370597">"Deslizar dos dedos hacia arriba"</string>
<string name="accessibility_shortcut_edit_dialog_title_software_gesture_talkback" msgid="7422753388389160524">"Deslizar tres dedos hacia arriba"</string>
<string name="accessibility_shortcut_edit_dialog_title_software" msgid="6505512764022389951">"Botón de accesibilidad"</string>
- <string name="accessibility_shortcut_edit_dialog_summary_floating_button" msgid="6266489864614886247">"Presiona el botón flotante."</string>
+ <string name="accessibility_shortcut_edit_dialog_summary_floating_button" msgid="6266489864614886247">"Presiona el botón flotante"</string>
<string name="accessibility_shortcut_edit_dialog_title_software_by_gesture" msgid="4775049370625630546">"Gesto de accesibilidad"</string>
<string name="accessibility_shortcut_edit_dialog_summary_software" msgid="8315934725362849788">"Presiona el botón de accesibilidad <xliff:g id="ACCESSIBILITY_ICON">%s</xliff:g> ubicado en la parte inferior de la pantalla. Para cambiar entre funciones, mantén presionado el botón de accesibilidad."</string>
<string name="accessibility_shortcut_edit_dialog_summary_software_gesture" msgid="8292555254353761635">"Desliza dos dedos hacia arriba desde la parte inferior de la pantalla.\n\nPara cambiar de función, desliza dos dedos hacia arriba y mantén presionada la pantalla."</string>
@@ -2154,7 +2158,7 @@
<string name="accessibility_shortcut_edit_dialog_summary_software_floating" msgid="4459254227203203324"><annotation id="link">"Más opciones"</annotation></string>
<string name="footer_learn_more_content_description" msgid="8843798273152131341">"Más información sobre <xliff:g id="SERVICE">%1$s</xliff:g>"</string>
<string name="accessibility_shortcut_edit_dialog_title_quick_settings" msgid="140959604014177304">"Configuración rápida"</string>
- <string name="accessibility_shortcut_edit_dialog_summary_quick_settings" msgid="739883998754165940">"{count,plural, =1{Desliza hacia abajo desde la parte superior de la pantalla.}other{Desliza hacia abajo con # dedos desde la parte superior de la pantalla.}}"</string>
+ <string name="accessibility_shortcut_edit_dialog_summary_quick_settings" msgid="739883998754165940">"{count,plural, =1{Desliza hacia abajo desde la parte superior de la pantalla}other{Desliza hacia abajo con # dedos desde la parte superior de la pantalla}}"</string>
<string name="accessibility_shortcut_edit_dialog_summary_quick_settings_suw" msgid="4216628328191609785">"{count,plural, =1{Desliza hacia abajo desde la parte superior de la pantalla. Este acceso directo estará disponible cuando termines de configurar el dispositivo.}other{Desliza hacia abajo con # dedos desde la parte superior de la pantalla. Este acceso directo estará disponible cuando termines de configurar el dispositivo.}}"</string>
<string name="accessibility_feature_shortcut_setting_summary_quick_settings" msgid="7006526933552889373">"Configuración rápida"</string>
<string name="accessibility_shortcut_edit_dialog_title_hardware" msgid="844089763968552142">"Teclas de volumen"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ninguno}=1{Se estableció 1 programa}other{Se establecieron # programas}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"No interrumpir"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modos de prioridad"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Solo recibe notificaciones de las personas y apps que más te interesan"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitar las interrupciones"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Activar No interrumpir"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Agrega un calendario"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Usa tu calendario"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programa"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Programa"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silenciar en ciertos momentos"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Definir reglas de No interrumpir"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Esta app no admite opciones de configuración mejoradas"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Más parámetros de configuración"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Puedes encontrar más parámetros de configuración disponibles dentro de esta app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Período de inactividad"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Usar período de inactividad"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Cuando recibas muchas notificaciones en un intervalo de tiempo corto, el dispositivo minimizará las interrupciones de sonido y las ventanas emergentes en la pantalla. Las llamadas, alarmas y conversaciones prioritarias seguirán enviando alertas de forma habitual. Además, podrás ver fácilmente todas las notificaciones enviadas en el panel de notificaciones."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplicar a perfiles de trabajo"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplicar a apps del perfil de trabajo"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Servicio de ayuda de RV"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Apps seleccionadas"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ninguna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Todo"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permitir que las apps anulen No interrumpir"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps que pueden interrumpir"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Seleccionar más apps"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Cambiar a solo alarmas durante una hora hasta la hora {time}}other{Cambiar a solo alarmas durante # horas hasta la hora {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Cambiar a solo alarmas hasta la(s) <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Cambiar a interrumpir siempre"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Advertencia"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Cerrar"</string>
<string name="device_feedback" msgid="5351614458411688608">"Enviar comentarios sobre el dispositivo"</string>
@@ -4463,7 +4486,7 @@
<string name="credman_confirmation_change_provider_positive_button" msgid="7732302992885116967">"Cambiar"</string>
<string name="credman_limit_error_msg_title" msgid="1525814645803612135">"Solo puedes tener 5 servicios activos"</string>
<string name="credman_limit_error_msg" msgid="2521803280130310063">"Desactiva al menos 1 servicio para agregar otro."</string>
- <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"Elige el servicio que prefieras para guardar los datos de acceso y las sugerencias de Autocompletar. Activa servicios adicionales si quieres que también te proporcionen sugerencias."</string>
+ <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"Elige el servicio que prefieras para guardar los datos de acceso y las sugerencias de autocompletar. Activa servicios adicionales si quieres que también te proporcionen sugerencias."</string>
<string name="credman_enable_confirmation_message" msgid="8407841892310870169">"%1$s usa el contenido de tu pantalla para determinar qué se puede autocompletar."</string>
<string name="credman_error_message_title" msgid="4099557206946333568">"Límite de servicios de contraseñas, llaves de acceso y datos"</string>
<string name="credman_error_message" msgid="8334797097200415449">"Puedes tener hasta 5 servicios de contraseñas, llaves de acceso y datos activos al mismo tiempo. Desactiva un servicio para agregar otros."</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Izquierdo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Derecho"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Funda"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batería"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel de Configuración"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forzar modo de escritorio"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Fuerza el modo de escritorio experimental en pantallas secundarias."</string>
@@ -4909,7 +4933,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Permitir módem de prueba"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Permite que este dispositivo ejecute un servicio de módem de prueba para realizar una prueba de instrumentación. No habilites esta opción durante el uso normal del teléfono"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Inhabilitar protecciones cuando compartes pantalla"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Desactiva las protecciones del sistema para apps con contenido sensible para las próximas sesiones en las que se comparta la pantalla"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Desactiva las protecciones del sistema para apps con contenido sensible en las próximas sesiones donde se comparta la pantalla"</string>
<string name="media_controls_title" msgid="403271085636252597">"Contenido multimedia"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Fijar reproductor multimedia"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Para reanudar rápidamente la reproducción, el reproductor multimedia permanece abierto en Configuración rápida"</string>
diff --git a/res/values-es/arrays.xml b/res/values-es/arrays.xml
index d236131..e5ae5f6 100644
--- a/res/values-es/arrays.xml
+++ b/res/values-es/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index e6e0b79..e5bb72a 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"¿Desconectar dispositivo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Emparejar nuevo dispositivo"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Volver a activar automáticamente mañana"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Emparejar derecho"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Emparejar izquierdo"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Empareja el otro audífono"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Emparejar izquierdo"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Ajustes de audífonos"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Acceso directo, compatibilidad con audífonos"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Preajustes"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preajuste"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"No se ha podido actualizar el preajuste"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Salida de audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Acerca de la salida de audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancelar"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No, gracias"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ahora no"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Acepto"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Más"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Desbloquea con tu cara"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Importante"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Utiliza tu huella digital para desbloquear el teléfono o aprobar compras.\n\nNota: No puedes utilizar tu huella digital para desbloquear este dispositivo. Si quieres consultar más información, ponte en contacto con el administrador de tu organización."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancelar"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No, gracias"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ahora no"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Acepto"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"¿Saltar la configuración de huella digital?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Solo tardarás un par de minutos en configurar la huella digital. Si te saltas este paso, puedes añadir tu huella digital en otro momento desde los ajustes."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Cada vez que el dispositivo se bloquea"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min tras tiempo de espera de pantalla"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Solo tras el reinicio del dispositivo"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ocultar espacio privado"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ocultar el espacio privado cuando está bloqueado"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Para evitar que se sepa que tienes un espacio privado en tu dispositivo, puedes ocultarlo desde tu lista de aplicaciones"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurar"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espacio privado"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Oculta o bloquea las aplicaciones privadas en un espacio separado. Usa una cuenta de Google exclusiva para aumentar la seguridad."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configura tu espacio privado"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Elige una cuenta de Google para tu espacio"</b>\n"Usar una cuenta exclusiva ayuda a evitar que los archivos, las fotos y los correos sincronizados aparezcan fuera de tu espacio."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Cómo funciona"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crea una cuenta de Google para tu espacio"</b>\n"Si usas una cuenta específica, podrás evitar que los archivos, fotos y correos sincronizados aparezcan fuera de tu espacio"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Define un bloqueo"</b>\n"Bloquea tu espacio para evitar que otras personas lo abran."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instala aplicaciones"</b>\n"Tu espacio privado tiene su propia Play Store para que puedas instalar aplicaciones fácilmente."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Las aplicaciones del espacio privado no se mostrarán en el Gestor de permisos, el panel de privacidad ni en otros ajustes si el espacio privado está bloqueado.\n\nTu espacio privado no se puede restaurar en otro dispositivo. Debes configurar otro espacio privado si quieres usarlo en otro dispositivo.\n\nCualquier persona que conecte tu dispositivo a un ordenador o instale aplicaciones maliciosas en tu dispositivo podría acceder a tu espacio privado."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instala aplicaciones"</b>\n"Instala en tu espacio las aplicaciones que quieras mantener en privado"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Importante"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Las aplicaciones se detienen cuando bloqueas tu espacio"</b>\n"Al bloquear tu espacio, las aplicaciones de tu espacio privado se detienen y no recibirás sus notificaciones"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Más información sobre el espacio privado"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Tardará un momento"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configurando espacio privado…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Puedes definir un bloqueo nuevo solo para el espacio privado o usar el mismo con el que desbloqueas el dispositivo"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Usar bloqueo de pantalla"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Elegir nuevo bloqueo"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Un segundo…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Un segundo…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"¡Todo listo!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Para acceder a tu espacio privado, ve a la lista de aplicaciones y desliza hacia abajo"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Hecho"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Configura un PIN para el espacio privado"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Config. contraseña para espacio privado"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Configura un patrón para espacio privado"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crea una cuenta de Google para proteger la privacidad de tus datos"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"En la siguiente pantalla, podrás iniciar sesión en una cuenta para usarla con tu espacio privado"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crea una cuenta específica para evitar que aparezcan datos fuera del espacio privado, como:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotos, archivos, correos, contactos, eventos del calendario y otros datos sincronizados"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historial de descarga de aplicaciones y recomendaciones"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historial de navegación, marcadores y contraseñas guardadas"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Contenido sugerido relacionado con tu actividad en las aplicaciones del espacio privado"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Entendido"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloquear"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ocultar"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Puedes añadir hasta <xliff:g id="COUNT">%d</xliff:g> huellas digitales"</string>
@@ -665,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Elige un bloqueo de pantalla"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Elige un nuevo bloqueo de pantalla"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Bloqueo de aplicaciones de trabajo"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Nuevo bloqueo de trabajo"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Elige un nuevo método de bloqueo para el trabajo"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Para mayor seguridad, establece un bloqueo de pantalla alternativo"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Selecciona un método de bloqueo de pantalla alternativo"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Si olvidas tu bloqueo de pantalla, tu administrador de TI no lo puede restablecer."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificado de sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fijación de certificados"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalles de red"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Esta red usa un protocolo de seguridad antiguo denominado WEP, que es menos seguro"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Máscara de subred"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nombre del servidor"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipo"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Dirección MAC de la red Wi‑Fi del dispositivo"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Dirección de Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Número de serie"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tiempo de actividad"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Tiempo de funcionamiento"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Fecha de fabricación"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Fecha del primer uso"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Número de ciclos"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Toque inferior derecho"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Toca la esquina inferior derecha del panel táctil para ver más"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocidad del puntero"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Estilo de relleno del puntero"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Cambiar relleno del puntero a negro"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Cambiar relleno del puntero a verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Cambiar relleno a amarillo"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Cambiar relleno del puntero a rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Cambiar relleno del puntero a azul"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Consultar gestos del panel táctil"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"panel táctil, ratón, cursor, desplazar, deslizar, hacer clic con el botón derecho, clic, puntero"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"hacer clic con el botón derecho, tocar"</string>
@@ -2031,7 +2034,7 @@
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Contraste de color"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Un mayor contraste hace que el texto, los botones y los iconos destaquen más. Elige el contraste que más te guste."</string>
<string name="color_contrast_note" msgid="7592686603372566198">"Puede que algunas aplicaciones no admitan todos los ajustes de contraste de color y texto"</string>
- <string name="color_contrast_preview" msgid="6791430227535363883">"Previsualizar"</string>
+ <string name="color_contrast_preview" msgid="6791430227535363883">"Vista previa"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"Hace 2 días"</string>
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"¿Seguir?"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ninguna}=1{1 programación creada}other{# programaciones creadas}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"No molestar"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modos prioritarios"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Recibe notificaciones solo de personas y aplicaciones importantes"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitar interrupciones"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Activar No molestar"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Editar"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Programaciones"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Programación"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Activar automáticamente"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Añade un calendario"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Usa el calendario"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programación"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Crea una programación"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Programar"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> h <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Programación"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silenciar teléfono en ciertos momentos"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Definir reglas de No molestar"</string>
@@ -3518,7 +3522,7 @@
<string name="lock_screen_notifs_redact_work" msgid="3833920196569208430">"Notificaciones sensibles del perfil de trabajo"</string>
<string name="lock_screen_notifs_redact_work_summary" msgid="3238238380405430156">"Mostrar contenido sensible del perfil de trabajo en la pantalla de bloqueo"</string>
<string name="lock_screen_notifications_summary_show" msgid="6540443483088311328">"Mostrar todo el contenido de las notificaciones"</string>
- <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"Mostrar contenido sensible solo al desbloquear"</string>
+ <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"Mostrar contenido sensible solo si desbloqueado"</string>
<string name="lock_screen_notifications_summary_disable" msgid="3388290397947365744">"No mostrar ninguna notificación"</string>
<string name="lock_screen_notifications_interstitial_message" msgid="6326229471276829730">"¿Qué quieres que se muestre en tu pantalla de bloqueo?"</string>
<string name="lock_screen_notifications_interstitial_title" msgid="1360388192096354315">"Pantalla de bloqueo"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Esta aplicación no admite la configuración avanzada"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Más ajustes"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Hay más ajustes disponibles en la aplicación"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Enfriamiento"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Usar enfriamiento"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Cuando recibas muchas notificaciones en poco tiempo, tu dispositivo minimizará las interrupciones sonoras y las ventanas emergentes de la pantalla. Las alertas de llamadas, alarmas y conversaciones prioritarias seguirán como de costumbre, y todas las notificaciones recibidas se encuentran fácilmente en el panel de notificaciones."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplicar a perfiles de trabajo"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplicar a las aplicaciones del perfil de trabajo"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Servicios de ayuda de RV"</string>
@@ -3707,7 +3714,7 @@
<string name="zen_mode_custom_behavior_title" msgid="92525364576358085">"Comportamiento del modo No molestar"</string>
<string name="zen_mode_custom_behavior_summary_default" msgid="3259312823717839148">"Usar ajustes predeterminados"</string>
<string name="zen_mode_custom_behavior_summary" msgid="5390522750884328843">"Crear ajustes para esta programación"</string>
- <string name="zen_mode_custom_behavior_category_title" msgid="7815612569425733764">"En la programación \"<xliff:g id="SCHEDULE_NAME">%1$s</xliff:g>\""</string>
+ <string name="zen_mode_custom_behavior_category_title" msgid="7815612569425733764">"Para \"<xliff:g id="SCHEDULE_NAME">%1$s</xliff:g>\""</string>
<string name="summary_divider_text" msgid="8836285171484563986">", "</string>
<string name="summary_range_symbol_combination" msgid="8447490077794415525">"<xliff:g id="START">%1$s</xliff:g>-<xliff:g id="END">%2$s</xliff:g>"</string>
<string name="zen_mode_conversations_title" msgid="5491912973456026379">"Conversaciones"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Aplicaciones seleccionadas"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ninguna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Todas"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permitir que las aplicaciones anulen el modo No molestar"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplicaciones que pueden interrumpirte"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Seleccionar más aplicaciones"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Cambiar a Solo alarmas durante una hora hasta las {time}}other{Cambiar a Solo alarmas durante # horas hasta las {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Cambiar a Solo alarmas hasta las <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Cambiar a interrumpir siempre"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Cambiar nombre"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Cambiar icono"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Cambiar icono"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Advertencia"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Cerrar"</string>
<string name="device_feedback" msgid="5351614458411688608">"Enviar comentarios sobre el dispositivo"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Izquierdo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Derecho"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Funda"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batería"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel de ajustes"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forzar modo Escritorio"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Fuerza el modo Escritorio experimental en pantallas secundarias"</string>
diff --git a/res/values-et/arrays.xml b/res/values-et/arrays.xml
index 687895d..6c73791 100644
--- a/res/values-et/arrays.xml
+++ b/res/values-et/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index 01ba8b6..38eb534 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Kas katkestada seadme ühendus?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Uue seadme sidumine"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Lülita automaatselt homme uuesti sisse"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Seo parempoolne"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Seo vasakpoolne"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Teise kõrva sidumine"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Seo vasakpoolne"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Kuuldeseade seaded"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Otsetee, ühilduvus kuuldeaparaatidega"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Eelseadistused"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Eelseadistus"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Eelseadistust ei saanud värskendada"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Heliväljund"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Teave heliväljundi kohta"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Tühista"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Tänan, ei"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Mitte praegu"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Nõustun"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Rohkem"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Avage oma näoga"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Pidage meeles"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Kasutage telefoni avamiseks või ostude kinnitamiseks oma sõrmejälge.\n\nMärkus: te ei saa kasutada oma sõrmejälge selle seadme avamiseks. Lisateabe saamiseks võtke ühendust oma organisatsiooni administraatoriga."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Tühista"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Tänan, ei"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Mitte praegu"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Nõustun"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Kas jätta sõrmejälg vahele?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Sõrmejälje seadistamiseks kulub vaid paar minutit. Kui selle vahele jätate, saab sõrmejälje hiljem lisada jaotises Seaded."</string>
@@ -559,11 +560,11 @@
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Näo ja sõrmejäljega avamine privaatse ruumi jaoks"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Seadistage sõrmejäljega avamine privaatse ruumi jaoks"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Kasutage oma privaatse ruumi avamiseks või oma isiku kinnitamiseks (nt rakendustesse sisselogimisel või ostude kinnitamisel) oma sõrmejälge."</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Teie privaatse ruumi saab avada, kui te seda teha ei kavatse (nt kui keegi hoiab telefoni teie sõrme vastas)."</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Teie privaatse ruumi saab avada, isegi kui te seda teha ei kavatsenud, nt kui keegi hoiab telefoni teie sõrme vastas."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Kasutage oma privaatse ruumi avamiseks või ostude kinnitamiseks oma sõrmejälge"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Seadistage näoga avamine privaatse ruumi jaoks"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Kasutage oma privaatse ruumi avamiseks või oma isiku kinnitamiseks (nt rakendustesse sisselogimisel või ostude kinnitamisel) oma nägu."</string>
- <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Telefoni vaatamisel võib privaatne ruum avaneda ka siis, kui te seda ei soovi. Teiega sarnane inimene, näiteks teie identne vend või õde, saab samuti teie privaatse ruumi avada. Tahvelarvuti saab avada ka nii, et keegi hoiab seadet teie näo ees."</string>
+ <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Telefoni vaatamisel võib privaatne ruum avaneda ka siis, kui te seda ei soovi. Teiega sarnane inimene, näiteks teie identne vend või õde, saab samuti teie privaatse ruumi avada. Selle saab avada ka nii, et keegi hoiab seadet teie näo ees."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Privaatse ruumi avamiseks näo kasutamine võib olla vähem turvaline kui tugev muster, PIN-kood või parool"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Privaatse ruumi avamiseks peavad teie silmad avatud olema. Parima tulemuse saavutamiseks võtke päikeseprillid ära."</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"Kasutage privaatse ruumi avamiseks oma nägu.\n\nPidage meeles järgmist.\nKorraga saab olla seadistatud ainult üks nägu. Uue näo lisamiseks kustutage praegune nägu.\n\nTelefoni vaatamisel võib see soovimatult avaneda.\n\nKeegi teine võib teie privaatse ruumi avada, kui seadet hoitakse teie näo ees.\n\nVõib juhtuda, et teiega sarnane inimene, näiteks identne vend/õde, saab teie privaatse ruumi avada."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Iga kord, kui seade lukustatakse"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutit pärast ekraani ajalõppu"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Ainult pärast seadme taaskäivitamist"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Kui kasutate oma privaatse ruumi jaoks teist lukku, peate võib-olla oma privaatses ruumis rakenduste avamiseks oma isiku kinnitama."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Privaatse ruumi peitmine"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Privaatse ruumi peitmine, kui see on lukustatud"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Privaatse ruumi saate oma rakenduste loendis peita, et teised ei teaks selle olemasolust teie seadmes"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Seadistamine"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privaatne ruum"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Peitke või lukustage privaatsed rakendused eraldi ruumis. Lisaturvalisuse jaoks kasutage spetsiaalselt Google\'i kontot."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Privaatse ruumi seadistamine"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Ruumi jaoks Google\'i konto valimine"</b>\n"Spetsiaalse konto kasutamine aitab vältida sünkroonitud failide, fotode ja meilide kuvamist väljaspool teie ruumi."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Kuidas see toimib?"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Looge oma ruumi jaoks Google\'i konto"</b>\n"Eraldi Google\'i konto kasutamine aitab vältida sünkroonitud failide, fotode ja meilide kuvamist väljaspool teie ruumi"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Luku seadistamine"</b>\n"Lukustage oma ruum, et teised ei saaks seda avada."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Rakenduste installimine"</b>\n"Teie privaatsel ruumil on oma Play pood, et saaksite hõlpsalt rakendusi installida."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Kui teie privaatne ruum on lukustatud, ei kuvata teie privaatses ruumis olevaid rakendusi lubade halduris, privaatsuse juhtpaneelil ega muudes seadetes.\n\nTeie privaatset ruumi ei saa uude seadmesse taastada. Kui soovite seda mõnes teises seadmes kasutada, peate seadistama teise privaatse ruumi.\n\nKõik, kes ühendavad teie seadme arvutiga või installivad teie seadmesse pahatahtlikke rakendusi, võivad pääseda juurde teie privaatsele ruumile."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Installige rakendused"</b>\n"Installige rakendused, mille soovite oma ruumis privaatsena hoida"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Pidage meeles"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Ruumi lukustamisel peatatakse rakendused"</b>\n"Kui lukustate oma ruumi, peatatakse teie ruumis olevad rakendused ja te ei saa neilt märguandeid"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Lisateave privaatsete ruumide kohta"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"See võtab mõne hetke"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Privaatse ruumi seadistamine …"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Saate seadistada uue luku vaid privaatse ruumi jaoks või kasutada sama lukku, mida kasutate seadme avamiseks"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Kasuta ekraanilukku"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Uue luku valimine"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Oodake pisut …"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Oodake pisut …"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Valmis!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Privaatse ruumi leidmiseks avage oma rakenduste loend ja kerige seejärel alla"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Valmis"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Määrake privaatse ruumi jaoks PIN-kood"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Määrake oma privaatse ruumi jaoks parool"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Määrake oma privaatse ruumi jaoks muster"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Looge Google\'i konto, et oma andmed privaatsena hoida"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Järgmisel ekraanikuval saate sisse logida kontole, mida kasutada oma privaatse ruumiga"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Looge spetsiaalne konto, et aidata peatada andmete kuvamine väljaspool privaatset ruumi, näiteks:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sünkroonitud fotod, failid, meilid, kontaktid, kalendrisündmused ja muud andmed"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Rakenduse allalaadimiste ajalugu ja soovitused"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Sirvimisajalugu, järjehoidjad ja salvestatud paroolid"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Privaatse ruumi rakendustes teie tegevusega seotud soovitatud sisu"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Selge"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lukusta"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Peida"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Saate lisada kuni <xliff:g id="COUNT">%d</xliff:g> sõrmejälge"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Süsteemi sertifikaat"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Sertifikaadi kinnitamine"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Võrgu üksikasjad"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"See võrk kasutab vanemat turvaprotokolli WEP, mis on vähem turvaline"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Alamvõrgu mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Serveri nimi"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tüüp"</string>
@@ -1339,7 +1337,7 @@
<string name="module_version" msgid="1787518340082046658">"Google Play süsteemivärskendus"</string>
<string name="battery_info" msgid="7873528123969546728">"Akuteave"</string>
<string name="device_info_not_available" msgid="4804474466616712326">"Pole saadaval"</string>
- <string name="storage_settings" msgid="7472188817781592677">"Mäluruum"</string>
+ <string name="storage_settings" msgid="7472188817781592677">"Salvestusruum"</string>
<string name="storage_settings_for_app" msgid="229425418984637483">"Salvestusruum ja vahemälu"</string>
<string name="storage_settings_title" msgid="486118156723194815">"Mäluruumi seaded"</string>
<string name="status_eid" msgid="3588471107671992684">"EID"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Seadme WiFi MAC-aadress"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetoothi aadress"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Seerianumber"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Talitlusaeg"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Tööaeg"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Tootmiskuupäev"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Esmakordse kasutamise kuupäev"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Tsüklite arv"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Parema alaosa puudutamine"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Lisavalikute nägemiseks puudutage puuteplaadi paremat alaosa"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Kursori kiirus"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Kursori sisu stiil"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Kursori sisu muutmine mustaks"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Kursori sisu muutmine roheliseks"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Kursori sisu muutmine kollaseks"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Kursori sisu muutmine roosaks"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Kursori sisu muutmine siniseks"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Õppige puuteplaadi liigutusi"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"puuteplaat, hiir, kursor, kerimine, pühkimine, sõrmega tõmbamine, paremklõps, klõpsamine"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"paremklõps, puudutamine"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Puudub}=1{1 ajakava on määratud}other{# ajakava on määratud}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Mitte segada"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioriteetsed režiimid"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Ainult oluliste inimeste ja rakendustega seotud märguanded"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Katkestuste piiramine"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Valiku Mitte segada sisselülitamine"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Lisage kalender"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Kasutage oma kalendrit"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Ajastamine"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Ajastamine"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Telefoni vaigistamine teatud ajal"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Režiimi Mitte segada reeglite määramine"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"See rakendus ei toeta täiustatud seadeid"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Rohkem seadeid"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Selle rakenduse sees on saadaval rohkem seadeid"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Lõdvestus"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Lõdvestuse kasutamine"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kui saate lühikese aja jooksul palju märguandeid, minimeerib teie seade helikatkestusi ja ekraanil kuvatavaid hüpikaknaid. Kõned, alarmid ja prioriteetsed vestlused hoiatavad endiselt tavapäraselt ning kõik edastatud märguanded on varjus hõlpsasti leitavad."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Tööprofiilidele rakendamine"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Rakendage tööprofiili rakendustele"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR-abilise teenused"</string>
@@ -3665,7 +3680,7 @@
<string name="notification_badge_title" msgid="6854537463548411313">"Luba märguandetäpp"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"Kuva märguandetäpp"</string>
<string name="app_notification_override_dnd_title" msgid="3769539356442226691">"Funktsiooni Mitte segada alistamine"</string>
- <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"Nendel märguannetel lubatakse teid jätkuvalt katkestada, kui funktsioon Mitte segada on sisse lülitatud"</string>
+ <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"Need märguanded esitatakse ka siis, kui funktsioon Mitte segada on sisse lülitatud"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"Lukustuskuva"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"Valmis"</string>
<string name="notification_show_lights_title" msgid="5564315979007438583">"Vilkuv tuli"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Valitud rakendused"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Puudub"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Kõik"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Luba rakendustel alistada"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Rakendused, mis saavad katkestada"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Valige rohkem rakendusi"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Muudetakse valikule Ainult äratused 1 tunniks kuni {time}}other{Muudetakse valikule Ainult äratused # tunniks kuni {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Muudetakse valikule Ainult alarmid kuni kella <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Muudetakse valikule Katkesta alati"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Hoiatus"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Sule"</string>
<string name="device_feedback" msgid="5351614458411688608">"Seadme kohta tagasiside saatmine"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Vasak"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Parem"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Ümbris"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Aku"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Seadete paneel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Jõusta töölauarežiim"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Katselise töölauarežiimi jõustamine teisestel ekraanidel"</string>
@@ -4841,23 +4865,23 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"Käivitamine lehe suurusega 16 kB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Seadme käivitamine 16 kB lehte toetava tuumaga"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Lülitumine 4 kB režiimilt 16 kB režiimile"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Olete lehest sõltumatus režiimis, mis kasutab 4 kB tuuma, ja soovite lülituda 16 kB režiimile. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Pärast kinnitamist seade taaskäivitatakse. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Selleks et viia seade uuesti tavarežiimile, peate lülituma tagasi 4 kB režiimile ja lukustama käivituslaaduri. See lähtestab seadme tehaseseadetele. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Olete lehest sõltumatus režiimis, mis kasutab 4 kB tuuma, ja soovite lülituda 16 kB režiimile. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Pärast kinnitamist seade taaskäivitatakse. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Seadme lähtestamiseks ja tavarežiimi naasmiseks lülituge uuesti 4 kB režiimile ja lukustage käivituslaadur. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Lülitumine 16 kB režiimilt 4 kB režiimile"</string>
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Olete lehest sõltumatus režiimis, mis kasutab 16 kB tuuma, ja soovite lülituda 4 kB režiimile. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Pärast kinnitamist seade taaskäivitatakse. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Selleks, et viia seade uuesti tavarežiimile, peate lukustama käivituslaaduri. See lähtestab seadme tehaseseadetele. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Ei õnnestunud tuuma 16 kB lehtedega ühilduvale tuumale värskendada."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Muudatuse rakendamine"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"Kas vormindada seade ümber ext4-le? (vajalik 16 kB režiimi jaoks)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Arendaja valiku 16 kB kasutamiseks peab seadme andmete sektsioon olema konverditud failisüsteemiks ext4. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Pärast valiku 16 kB aktiveerimist tuleb seade veel korra taaskäivitada. Selles režiimis saate 4 kB ja 16 kB režiimide vahel vahetada ühe taaskäivitamisega. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Selleks, et viia seade uuesti tavarežiimile, peate lülituma tagasi 4 kB režiimile ja lukustama käivituslaaduri. See lähtestab seadme tehaseseadetele. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine. Pärast kinnitamist seade tühjendatakse ja failisüsteemiks seatakse ext4. Kui need toimingud on lõpetatud, lubage taas režiim 16 kB."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Arendaja valiku 16 kB kasutamiseks peab seadme andmete sektsioon olema konverditud failisüsteemiks ext4. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Pärast valiku 16 kB aktiveerimist tuleb seade veel korra taaskäivitada. Selles režiimis saate 4 kB ja 16 kB režiimide vahel vahetada ühe taaskäivitamisega. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada Seadme tehaseseadetele lähtestamiseks ja tavarežiimi naasmiseks lülituge uuesti 4K režiimile ja avage seadme käivituslaadur. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine. Pärast kinnitamist seade tühjendatakse ja failisüsteemiks seatakse ext4. Kui need toimingud on lõpetatud, lubage taas režiim 16 kB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Kustuta kõik andmed"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Andmete sektsiooni ümbervormindamine failisüsteemiks ext4 ja seadme tühjendamine ebaõnnestus."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"16 kB režiimi jaoks on vaja käivituslaadur avada"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Arendaja valiku 16 kB kasutamiseks peab seadme käivituslaadur olema avatud. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Režiimi 16 kB aktiveerimisel tühjendatakse seade kõigist kasutaja andmetest ja seadetest. Kui käivituslaadur on avatud, on valiku 16 kB aktiveerimiseks vaja seade kaks korda taaskäivitada. Selles režiimis saate 4 kB ja 16 kB režiimide vahel vahetada ühe taaskäivitamisega. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Selleks, et viia seade uuesti tavarežiimile, peate lülituma tagasi 4 kB režiimile ja lukustama OEM-i/käivituslaaduri. See lähtestab seadme tehaseseadetele. Avage käivituslaadur ja proovige uuesti. Juhiseid selle kohta vaadake aadressilt <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Lehest sõltumatu 4 kB režiimi kasutamine"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Olete lehest sõltumatus 4 kB režiimis. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Tavarežiimile tagasi lülitumiseks peate avama seadme käivituslaaduri. Puudutage lisateabe vaatamiseks."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Olete lehest sõltumatus 4 kB režiimis. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Tavarežiimile tagasi lülitumiseks peate avama seadme käivituslaaduri. See lähtestab seadme tehaseseadetele. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine. Kui seadmel ei õnnestu Androidi käivitada või see on ebastabiilne, installige kogu operatsioonisüsteem ja püsivara uuesti, kasutades tehaseoleku süsteemikujutisi aadressilt <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ja valige „Tühjenda seade“, „Lukusta käivituslaadur“ ja „Installi kõik sektsioonid uuesti“."</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Olete lehest sõltumatus 4 kB režiimis. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Tavarežiimi naasmiseks peate avama seadme käivituslaaduri. Puudutage lisateabe vaatamiseks."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Olete lehest sõltumatus 4 kB režiimis. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Tavarežiimi naasmiseks peate avama seadme käivituslaaduri. See lähtestab seadme tehaseseadetele. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine. Kui seadmel ei õnnestu Androidi käivitada või see on ebastabiilne, installige kogu operatsioonisüsteem ja püsivara uuesti, kasutades tehaseoleku süsteemikujutisi aadressilt <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> või kasutage tööriista aadressil <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ja valige „Tühjenda seade“, „Lukusta käivituslaadur“ ja „Installi kõik sektsioonid uuesti“."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Lehest sõltumatu 16 kB režiimi kasutamine"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Olete lehest sõltumatus 16 kB režiimis. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Selleks et viia seade uuesti tavarežiimile, peate lülituma tagasi 4K režiimile ja seejärel avama seadme käivituslaaduri. Puudutage lisateabe vaatamiseks."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Olete lehest sõltumatus 16 kB režiimis. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Selleks et viia seade uuesti tavarežiimile, peate lülituma tagasi 4K režiimile ja seejärel avama seadme käivituslaaduri. See lähtestab seadme tehaseseadetele. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine. Kui seadmel ei õnnestu Androidi käivitada või see on ebastabiilne, installige kogu operatsioonisüsteem ja püsivara uuesti, kasutades tehaseoleku süsteemikujutisi aadressilt <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> või kasutage aadressi <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ja valige „Tühjenda seade“, „Lukusta käivituslaadur“ ja „Installi kõik sektsioonid uuesti“."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Olete lehest sõltumatus 16 kB režiimis. Selles režiimis ei saa garanteerida tarkvara terviklust ja andmed, mis salvestatakse telefoni, kui käivituslaadur on avatud, võivad olla ohus. Mõned funktsioonid on nendes režiimides keelatud, mistõttu ei pruugi kõik rakendused töötada. Seadme tehaseseadetele lähtestamiseks ja tavarežiimi naasmiseks lülituge uuesti 4K režiimile ja avage seadme käivituslaadur. Pärast seda, kui seade on Androidi käivitanud, keelake arendaja valikutes OEM-tootjaluku avamine. Kui seadmel ei õnnestu Androidi käivitada või see on ebastabiilne, installige kogu operatsioonisüsteem ja püsivara uuesti, kasutades tehaseoleku süsteemikujutisi aadressilt <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>, või kasutage tööriista aadressilt <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ja valige „Tühjenda seade“, „Lukusta käivituslaadur“ ja „Installi kõik sektsioonid uuesti“."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Lehest sõltumatu 16 kB režiim"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Lisateave"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Veaaruannete töötleja"</string>
@@ -4908,7 +4932,7 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"Lubage rakendustel, mida tohib kuvada teiste rakenduste peal, katta Seadete ekraanikuvasid"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"Luba matkitud modem"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Lubab sellel seadmel käitada matkitud modemi teenust instrumentide testimiseks. Ärge lubage seda telefoni tavapärase kasutuse ajal."</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Ekraani jagamise kaitsemeetmete keelamine"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Keela ekraani jagamise kaitsemeetmed"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Lülitab eelseisvate ekraani jagamise seansside jaoks välja tundliku rakenduse sisu süsteemikaitsed"</string>
<string name="media_controls_title" msgid="403271085636252597">"Meedia"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Meediapleieri kinnitamine"</string>
diff --git a/res/values-eu/arrays.xml b/res/values-eu/arrays.xml
index 221e2cd..e95d175 100644
--- a/res/values-eu/arrays.xml
+++ b/res/values-eu/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index 96c40ba..f752ed6 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Gailua deskonektatu nahi duzu?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Parekatu beste gailu batekin"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetootha"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Aktibatu automatikoki berriro bihar"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Parekatu eskuineko audifonoa"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Parekatu ezkerreko audifonoa"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Parekatu beste audifonoa"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Parekatu ezkerreko audifonoa"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Entzumen-gailuen ezarpenak"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Lasterbidea eta audifonoekiko bateragarritasuna"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Aurrezarpenak"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Aurrezarpena"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Ezin izan da eguneratu aurrezarpena"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio-irteera"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Audio-irteerari buruz"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Utzi"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ez, eskerrik asko"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Orain ez"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ados"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Gehiago"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Desblokeatu aurpegiarekin"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Gogoan izan"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Erabili hatz-marka telefonoa desblokeatzeko eta erosketak onartzeko.\n\nOharra: ezin duzu erabili hatz-marka gailu hau desblokeatzeko. Informazio gehiago lortzeko, jarri zure erakundearen administratzailearekin harremanetan."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Utzi"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ez, eskerrik asko"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Orain ez"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ados"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Hatz-markaren urratsa saltatu?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Minutu bat edo bi baino ez dituzu beharko hatz-marka konfiguratzeko. Urrats hau saltatuz gero, geroago ere gehi dezakezu hatz-marka ezarpenetan."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Nola funtzionatzen du?"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Hatz-marka bidez desblokeatzeko eginbideak zure hatz-markaren eredu esklusibo bat sortzen du zeu zarela egiaztatzeko. Konfigurazio-prozesuan hatz-markaren eredu hori sortzeko, hatz-markaren irudiak aterako dituzu, hainbat posiziotan."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Hatz-marka bidez desblokeatzeko eginbideak haurraren hartz-markaren eredu esklusibo bat sortzen du hura dela egiaztatzeko. Konfigurazio-prozesuan hatz-markaren eredu hori sortzeko, hatz-markaren argazkiak aterako ditu haurrak, hainbat posiziotan."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Emaitza onenak lortzeko, erabili Made for Google ziurtagiria duen pantaila babesteko osagarri bat. Besterik erabiliz gero, baliteke hatz-markak ez funtzionatzea."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Emaitza onenak lortzeko, erabili Made for Google ziurtagiria duen pantaila babesteko osagarria. Besterik erabiliz gero, baliteke hatz-markak ez funtzionatzea."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Emaitza onenak lortzeko, erabili Made for Google ziurtagiria duen pantaila babesteko osagarri bat. Besterik erabiliz gero, baliteke haurraren hatz-markak ez funtzionatzea."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Erloju bidez desblokeatzea"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Gailua blokeatzen den aldiro"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Pantailaren denbora-muga gainditu eta 5 minutura"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Gailua berrabiarazi ondoren soilik"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ezkutatu eremu pribatua"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ezkutatu eremu pribatua hura blokeatzean"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Inork jakin ez dezan gailuan eremu pribatu bat daukazula, aplikazio-zerrendatik ezkuta dezakezu"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Konfiguratu"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Eremu pribatua"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Ezkutatu edo blokeatu aplikazio pribatuak eremu bereiz batean. Erabili beste Google-ko kontu bat segurtasuna areagotzeko."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Konfiguratu eremu pribatua"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Aukeratu Google-ko kontu bat zure eremurako"</b>\n"Beste kontu bat erabiltzeak sinkronizatutako fitxategi, argazki eta mezu elektronikoak eremutik kanpo agertzea ekiditen du"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Nola funtzionatzen du?"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Sortu Google-ko kontu bat eremuan erabiltzeko"</b>\n"Eremuan erabiltzeko kontu esklusibo bat badaukazu, sinkronizatutako fitxategiak, argazkiak eta mezu elektronikoak eremutik kanpo agertzea ekidingo duzu"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Ezarri blokeo bat"</b>\n"Blokeatu eremua beste pertsonek ireki ez dezaten"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instalatu aplikazioak"</b>\n"Eremu pribatuak Play Store propioa dauka, aplikazioak erraz instala ditzazun"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Eremu pribatua blokeatuta badago, hango aplikazioak ez dira agertuko baimenen kudeatzailean, pribatutasun-panelean eta beste ezarpenetan.\n\nEremu pribatua ezin da leheneratu beste gailu batean. Eremu pribatua beste gailu batean erabili nahi baduzu, beste bat konfiguratu beharko duzu.\n\nBaliteke zure gailua ordenagailu batekin konektatzen duten edo gailuan asmo txarreko aplikazioak instalatzen dituzten guztiek zure eremu pribatua atzitu ahal izatea."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instalatu aplikazioak"</b>\n"Instalatu zure eremuan eduki nahi dituzun aplikazio pribatuak"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Gogoratu"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikazioak gelditu egiten dira eremua blokeatzen duzunean"</b>\n"Eremua blokeatzen duzunean, bertan dauzkazun aplikazioak gelditu egiten dira, eta haien jakinarazpenak jasotzeari uzten diozu"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Lortu eremu pribatuari buruzko informazio gehiago"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Une bat beharko da"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Eremu pribatua konfiguratzen…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Beste blokeo bat ezar dezakezu, eremu pribaturako soilik balioko duena, edo gailua desblokeatzeko erabiltzen duzun metodo bera erabili"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Erabili pantailaren blokeoa"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Aldatu blokeatzeko modua"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Itxaron unetxo batean…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Itxaron unetxo batean…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Dena prest!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Eremu pribatua aurkitzeko, joan aplikazio-zerrendara eta egin behera"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Eginda"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Ezarri PIN bat eremu pribaturako"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Ezarri pasahitz bat eremu pribaturako"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Ezarri eredu bat eremu pribaturako"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Sortu Google-ko kontu bat datuak pribatu mantentzeko"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Hurrengo pantailan, eremu pribatuarekin erabili nahi duzun kontuan saioa hasi ahalko duzu"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Sortu beste kontu bat datuak ez daitezen agertu eremu pribatutik kanpo; adibidez, hauek:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinkronizatutako argazkiak, fitxategiak, mezu elektronikoak, kontaktuak, egutegiko gertaerak eta beste datuak"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Aplikazioen deskargen historia eta gomendioak"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Arakatze-historia, laster-markak eta gordetako pasahitzak"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Eremu pribatuko aplikazioetako jarduerekin lotuta iradokitako edukia"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Ados"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Blokeatu"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ezkutatu"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"<xliff:g id="COUNT">%d</xliff:g> hartz-marka gehi ditzakezu gehienez"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sistemaren ziurtagiria"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Ziurtagiriak ainguratzea"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Sarearen xehetasunak"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Sareak hain segurua ez den segurtasun-protokolo zaharrago bat erabiltzen du: WEP"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Azpisare-maskara"</string>
<string name="server_name_title" msgid="7257095185810299066">"Zerbitzariaren izena"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Mota"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Gailuaren wifi-sarearen MAC helbidea"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth bidez konektatzeko helbidea"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serie-zenbakia"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Berrabiarazi ondoren abian izandako denbora"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Jardun-denbora"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Fabrikatze-data"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Lehen erabileraren data"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Ziklo kopurua"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Beheko eskuinaldeko sakatzea"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Aukera gehiago ikusteko, sakatu ukipen-panelaren beheko eskuinaldeko izkina"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Erakuslearen abiadura"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Erakusle-betetzearen estiloa"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Aldatu erakusle-betetzearen estiloa beltzera"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Aldatu erakusle-betetzearen estiloa berdera"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Aldatu erakusle-betetzearen estiloa horira"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Aldatu erakusle-betetzearen estiloa arrosara"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Aldatu erakusle-betetzearen estiloa urdinera"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Lortu ukipen-panelean erabiltzeko keinuei buruzko informazioa"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ukipen-panela, ukipena, panela, sagua, kurtsorea, gora egin, behera egin, hatza pasatu, eskuineko botoiarekin klik egin, klik, klikatu, erakuslea"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"eskuineko botoiarekin klik egin, sakatu"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Bat ere ez}=1{1 programazio ezarri da}other{# programazio ezarri dira}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ez molestatzeko modua"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Lehentasunezko moduak"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Jaso jende eta aplikazio garrantzitsuen jakinarazpenak soilik"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Mugatu etenaldiak"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Aktibatu ez molestatzeko modua"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Editatu"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Programazioak"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Programazioa"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Aktibatu automatikoki"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Gehitu egutegi bat"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Erabili zure egutegia"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programazioa"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Ezarri programazio bat"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Programazioa"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> h eta <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Programazioa"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Isilarazi telefonoa ordu jakinetan"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Ezarri ez molestatzeko moduaren arauak"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Aplikazio honek ez ditu onartzen ezarpen hobetuak"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Ezarpen gehiago"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Aplikazioaren barruan dituzu ezarpen gehiago"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Jakinarazpenak arintzea"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Erabili jakinarazpenak arintzeko aukera"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Epe labur batean jakinarazpen ugari jasotzen badituzu, soinuak eta pantailako leiho gainerakorrak murriztuko ditu gailuak. Deiak, alarmak eta lehentasunezko elkarrizketak beti bezala jakinaraziko zaizkizu, eta jasotako jakinarazpen guztiak erraz aurkituko dituzu jakinarazpenen panelean."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplikatu laneko profiletan"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplikatu laneko profileko aplikazioetan"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Errealitate birtualeko laguntza-zerbitzuak"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Hautatutako aplikazioak"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Bat ere ez"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Guztiak"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Eman \"Ez molestatu\" ez aplikatzeko baimena aplikazioei"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Eten zaitzaketen aplikazioak"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Hautatu aplikazio gehiago"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Aldatu alarmak soilik modura ordubetez {time} arte}other{Aldatu alarmak soilik modura # orduz {time} arte}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Aldatu \"Alarmak soilik\" modura <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> arte"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Aldatu \"Eten beti\" modura"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Aldatu izena"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Aldatu ikonoa"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Aldatu ikonoa"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Abisua"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Itxi"</string>
<string name="device_feedback" msgid="5351614458411688608">"Bidali gailu honi buruzko oharrak"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Ezkerrekoa"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Eskuinekoa"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Kutxa"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Ezarpenen panela"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Behartu ordenagailuetarako modua erabiltzera"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Behartu ordenagailuetarako modu esperimentala erabiltzera bigarren mailako pantailetan"</string>
@@ -4846,9 +4859,9 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"Abiarazi 16 kB-ko orri-tamainarekin"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Abiarazi gailua 16 kB-ko orrien kernel bateragarriarekin"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Aldatu 4 kB-ko modutik 16 kB-ko modura"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Orri guztiekin bateragarria den moduan zaude, 4 kB-ko kernel bat exekutatzen, eta 16 kB-ko modura aldatzera zoaz. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Gailua berrabiaraziko da. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Gailua jatorrizko modura itzultzeko, aldatu berriro 4 kB-ko modura eta blokeatu sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Orri-tamaina guztiekin bateragarria den moduan zaude, 4 kB-ko kernel bat exekutatzen, eta 16 kB-ko modura aldatzera zoaz. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Gailua berrabiaraziko da. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Gailua jatorrizko modura itzultzeko, aldatu berriro 4 kB-ko modura eta blokeatu sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Aldatu 16 kB-ko modutik 4 kB-ko modura"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Orri guztiekin bateragarria den moduan zaude, 16 kB-ko kernel bat exekutatzen, eta 4 kB-ko modura aldatzera zoaz. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Gailua berrabiaraziko da. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Gailua jatorrizko modura itzultzeko, blokeatu sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean."</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Orri-tamaina guztiekin bateragarria den moduan zaude, 16 kB-ko kernel bat exekutatzen, eta 4 kB-ko modura aldatzera zoaz. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Gailua berrabiaraziko da. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Gailua jatorrizko modura itzultzeko, blokeatu sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Ezin izan da bertsio-berritu kernel-a 16 kB-ko orriekin bateragarria izan dadin."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Aldaketa aplikatzen"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"Gailua ext4-ra formateatu nahi duzu? Hori beharrezkoa da 16 kB-ko modurako."</string>
@@ -4857,13 +4870,13 @@
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Ezin izan da formateatu eta xahutu datu-partizioa ext4-ra."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Sistema eragilearen abiarazlea desblokeatu behar da 16 kB-ko modua erabiltzeko"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"16 kB-ko garatzaileentzako aukera erabili baino lehen, gailuaren sistema eragilearen abiarazlea desblokeatu behar da. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. 16 kB-ko modua aktibatzean, erabiltzaile-datu eta -ezarpen guztiak xahutuko dira. Sistema eragilearen abiarazlea desblokeatu ondoren, gailua 2 aldiz berrabiarazi beharko da 16 kB-ko moduaren aukera aktibatzeko. Modu horretan zaudenean, 4 kB-ko eta 16 kB-ko moduen artean aldatu ahal izango duzu behin soilik berrabiarazita. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Gailua jatorrizko modura itzultzeko, aldatu berriro 4 kB-ko modura eta blokeatu gailuaren sistema eragilearen abiarazlea edo OEMa. Gailuaren jatorrizko datuak berrezarriko dira. Desblokeatu sistema eragilearen abiarazlea eta saiatu berriro. Hori egiteko argibideak jasotzeko, joan <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a> helbidera."</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Orri guztiekin bateragarria den 4 kB-ko modua erabiltzen"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Orri guztiekin bateragarria den moduko 4 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, blokeatu gailuaren sistema eragilearen abiarazlea. Informazio gehiago irakurtzeko, sakatu hau."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Orri guztiekin bateragarria den moduko 4 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, blokeatu gailuaren sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira, eta jatorrizko ezarpenetara leheneratuko. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean. Gailuak Android abiarazi ezin badu edo ezegonkorra bada, instala itzazu fabrikako firmwarearen azken irudiak (<a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> helbidetik) gailuan. Bestela, erabili <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> eta hautatu \"Wipe Device\" (xahutu gailua), \"Lock Bootloader\" (blokeatu sistema eragilearen abiarazlea) eta \"Force Flash all partitions\" (behartu partizio guztiak berriro instalatzera)."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Orri guztiekin bateragarria den 16 kB-ko modua erabiltzen"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Orri guztiekin bateragarria den moduko 16 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, aldatu berriro 4 kB-ko modura eta blokeatu gailuaren sistema eragilearen abiarazlea. Informazio gehiago irakurtzeko, sakatu hau."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Orri guztiekin bateragarria den moduko 16 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, aldatu berriro 4 kB-ko modura eta blokeatu gailuaren sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira, eta jatorrizko ezarpenetara leheneratuko. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean. Gailuak Android abiarazi ezin badu edo ezegonkorra bada, instala itzazu fabrikako firmwarearen azken irudiak (<a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> helbidetik) gailuan. Bestela, erabili <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> eta hautatu \"Wipe Device\" (xahutu gailua), \"Lock Bootloader\" (blokeatu sistema eragilearen abiarazlea) eta \"Force Flash all partitions\" (behartu partizio guztiak berriro instalatzera)."</string>
- <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Orri guztiekin bateragarria den 16 kB-ko modua"</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Orri-tamaina guztiekin bateragarria den 4 kB-ko modua erabiltzen"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Orri-tamaina guztiekin bateragarria den moduko 4 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, blokeatu gailuaren sistema eragilearen abiarazlea. Informazio gehiago irakurtzeko, sakatu hau."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Orri-tamaina guztiekin bateragarria den moduko 4 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, blokeatu gailuaren sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira, eta jatorrizko ezarpenetara leheneratuko. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean. Gailuak Android abiarazi ezin badu edo ezegonkorra bada, instala itzazu fabrikako firmwarearen azken irudiak (<a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> helbidetik) gailuan. Bestela, erabili <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> eta hautatu \"Wipe Device\" (xahutu gailua), \"Lock Bootloader\" (blokeatu sistema eragilearen abiarazlea) eta \"Force Flash all partitions\" (behartu partizio guztiak berriro instalatzera)."</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Orri-tamaina guztiekin bateragarria den 16 kB-ko modua erabiltzen"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Orri-tamaina guztiekin bateragarria den moduko 16 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, aldatu berriro 4 kB-ko modura eta blokeatu gailuaren sistema eragilearen abiarazlea. Informazio gehiago irakurtzeko, sakatu hau."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Orri-tamaina guztiekin bateragarria den moduko 16 kB-ko moduan zaude. Modu horretan ezin da bermatu softwarearen osotasuna, eta baliteke telefonoan gordetako datuak arriskuan egotea sistema eragilearen abiarazlea desblokeatuta dagoen bitartean. Modu horietan, eginbide batzuk desgaituko dira; beraz, baliteke aplikazio batzuek ez funtzionatzea. Jatorrizko modura itzultzeko, aldatu berriro 4 kB-ko modura eta blokeatu gailuaren sistema eragilearen abiarazlea. Gailuaren jatorrizko datuak berrezarriko dira, eta jatorrizko ezarpenetara leheneratuko. Gailuak Android behar bezala abiarazten duenean, desgaitu OEMa desblokeatzeko aukera Garatzaileentzako aukerak atalean. Gailuak Android abiarazi ezin badu edo ezegonkorra bada, instala itzazu fabrikako firmwarearen azken irudiak (<a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> helbidetik) gailuan. Bestela, erabili <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> eta hautatu \"Wipe Device\" (xahutu gailua), \"Lock Bootloader\" (blokeatu sistema eragilearen abiarazlea) eta \"Force Flash all partitions\" (behartu partizio guztiak berriro instalatzera)."</string>
+ <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Orri-tamaina guztiekin bateragarria den 16 kB-ko modua"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Irakurri informazio gehiago"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Akatsen txostenen kudeatzailea"</string>
<string name="bug_report_handler_picker_footer_text" msgid="4935758328366585673">"Gailuko Akatsen txostenaren lasterbidea zein aplikaziok kontrolatzen duen zehazten du."</string>
diff --git a/res/values-fa/arrays.xml b/res/values-fa/arrays.xml
index cea3bff..901e930 100644
--- a/res/values-fa/arrays.xml
+++ b/res/values-fa/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index a288869..a4f60d4 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ارتباط دستگاه قطع شود؟"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"جفت کردن دستگاه جدید"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"بلوتوث"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"فردا دوباره بهطور خودکار روشن شود"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"جفت کردن گوش راست"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"جفت کردن گوش چپ"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"جفت کردن گوش دیگر"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"جفت کردن گوش چپ"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"تنظیمات دستگاه سمعک"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"میانبر، سازگاری با سمعک"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"پیشتنظیمها"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"پیشتنظیم"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"پیشتنظیم بهروزرسانی نشد"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"خروجی صوتی"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"درباره خروجی صوتی"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"لغو"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"نه متشكرم"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"اکنون نه"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"موافقم"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"بیشتر"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"با چهرهتان قفل را باز کنید"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"بهخاطر داشته باشید"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"از اثر انگشتتان برای باز کردن قفل تلفن یا تأیید خریدها استفاده کنید.\n\nتوجه: نمیتوانید از اثر انگشتتان برای باز کردن قفل این دستگاه استفاده کنید. برای اطلاعات بیشتر، با سرپرست سیستم سازمانتان تماس بگیرید."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"لغو"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"نه متشکرم"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"اکنون نه"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"موافقم"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"از تنظیم اثر انگشت رد میشوید؟"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"تنظیم اثر انگشت تنها یک یا دو دقیقه طول میکشد. اگر از این تنظیم رد شوید، میتوانید اثر انگشتتان را بعداً در تنظیمات اضافه کنید."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"هربار که دستگاه قفل میشود"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"۵ دقیقه پساز خاموش شدن صفحه"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"فقط بعداز بازراهاندازی دستگاه"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"اگر از قفل دیگری برای فضای خصوصی استفاده میکنید، شاید لازم باشد برای باز کردن برنامهها در فضای خصوصی، هویتتان را بهتأیید برسانید."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"پنهان کردن فضای خصوصی"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"پنهان کردن فضای خصوصی هنگام قفل بودن آن"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"برای اینکه دیگران متوجه نشوند فضای خصوصی در دستگاهتان روشن است، میتوانید آن را از فهرست برنامهها پنهان کنید"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"راهاندازی"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"فضای خصوصی"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"برنامههای خصوصی را در فضای جداگانهای پنهان یا قفل کنید. برای امنیت بیشتر، از یک «حساب Google» اختصاصی استفاده کنید."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"راهاندازی فضای خصوصی"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548">""<b>"انتخاب «حساب Google» برای فضایتان"</b>\n" استفاده از حساب اختصاصی کمک میکند فایلها، عکسها، و ایمیلهای همگامسازیشده در خارج از فضایتان نمایش داده نشود."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"روش کار"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320">""<b>"ایجاد «حساب Google» برای فضا"</b>\n"اگر از حساب اختصاصی استفاده کنید، این کار کمک میکند فایلها، عکسها، و ایمیلهای همگامسازیشده در خارج از فضای شما نشان داده نشود"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"تنظیم قفل"</b>\n"فضایتان را قفل کنید تا دیگران نتوانند آن را باز نکنند"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498">""<b>"نصب برنامهها"</b>\n"فضای خصوصیتان دارای «فروشگاه Play» مخصوص به خود است تا بتوانید برنامهها را بهراحتی نصب کنید."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"درصورت قفل بودن فضای خصوصی، برنامههای فضای خصوصی در مدیر اجازهها، داشبورد حریم خصوصی، و دیگر تنظیمات نشان داده نخواهد شد.\n\nنمیتوانید فضای خصوصیتان را در دستگاه دیگری بازیابی کنید. اگر میخواهید از فضای خصوصی در دستگاه دیگری استفاده کنید، باید فضای خصوصی دیگری راهاندازی کنید.\n\nهر کسی که دستگاه شما را به رایانه متصل کند یا برنامههای مخرب در دستگاهتان نصب کند ممکن است بتواند به فضای خصوصی شما دسترسی داشته باشد."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"نصب برنامه"</b>\n"برنامههایی را که میخواهید در فضایتان بهصورت خصوصی حفظ شود نصب کنید"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"بهخاطر داشته باشید"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"برنامهها هنگام قفل کردن فضا متوقف میشوند"</b>\n"وقتی فضای خود را قفل میکنید، برنامههای موجود در فضا متوقف میشوند و اعلانی از آنها دریافت نخواهید کرد"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"درباره فضای خصوصی بیشتر بدانید"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"این کار چند لحظه طول میکشد"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"درحال راهاندازی فضای خصوصی…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"میتوانید قفل جدیدی را فقط برای فضای خصوصی تنظیم کنید یا از همان قفلی که برای باز کردن قفل دستگاهتان استفاده میشود استفاده کنید"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"استفاده از قفل صفحه"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"انتخاب قفل جدید"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"چند لحظه صبر کنید…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"چند لحظه صبر کنید…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"همه چیز آماده است!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"برای پیدا کردن فضای خصوصی، به فهرست برنامهها بروید و بهپایین پیمایش کنید"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"تمام"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"تنظیم پین برای فضای خصوصی"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"تنظیم گذرواژه برای فضای خصوصی"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"تنظیم الگو برای فضای خصوصی"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"برای کمک به خصوصی نگه داشتن دادههایتان، «حساب Google» ایجاد کنید"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"در صفحه بعدی میتوانید وارد حساب شوید تا با آن از فضای خصوصی خود استفاده کنید"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"برای کمک به جلوگیری از نمایش دادهها در خارج از فضای خصوصی، حساب اختصاصی ایجاد کنید، برای مثال:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"عکسها، فایلها، ایمیلها، مخاطبین، رویدادهای تقویم، و دادههای دیگر همگامسازی شده است"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"تاریخچه بارگیری برنامه و توصیهها"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"سابقه مرور، نشانکها و گذرواژههای ذخیرهشده"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"محتوای پیشنهادی مرتبط با فعالیتتان در برنامههای فضای خصوصی"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"متوجهام"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"قفل کردن"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"پنهان کردن"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"میتوانید حداکثر <xliff:g id="COUNT">%d</xliff:g> اثرانگشت اضافه کنید"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"گواهینامه سیستم"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"سنجاق کردن گواهینامه"</string>
<string name="wifi_details_title" msgid="222735438574597493">"جزئیات شبکه"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"این شبکه از پروتکل امنیتی قدیمیتری بهنام WEP استفاده میکند که امنیت کمتری دارد"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"پوشش زیرشبکه"</string>
<string name="server_name_title" msgid="7257095185810299066">"نام سرور"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"نوع"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"نشانی Wi‑Fi MAC دستگاه"</string>
<string name="status_bt_address" msgid="6919660304578476547">"آدرس بلوتوث"</string>
<string name="status_serial_number" msgid="9060064164331466789">"شمارهٔ سریال"</string>
- <string name="status_up_time" msgid="1274778533719495438">"زمان فعالیت"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"زمان فعال بودن دستگاه"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"تاریخ تولید"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"تاریخ اولین استفاده"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"تعداد چرخهها"</string>
@@ -1635,7 +1633,7 @@
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"تأیید الگو"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"الگوی نمایه کاری را وارد کنید"</string>
<string name="lockpassword_confirm_your_pin_header" msgid="2241722970567131308">"پین را دوباره وارد کنید"</string>
- <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"دوباره وارد کردن پین کاری"</string>
+ <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"پین کاری را دوباره وارد کنید"</string>
<string name="lockpassword_confirm_your_work_pin_header" msgid="4229765521391960255">"پین نمایه کاری را وارد کنید"</string>
<string name="lockpassword_confirm_passwords_dont_match" msgid="2100071354970605232">"گذرواژهها مطابقت ندارند"</string>
<string name="lockpassword_confirm_pins_dont_match" msgid="1103699575489401030">"پین ها با یکدیگر مطابقت ندارند"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ضربه به راست پایین"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"برای گزینههای بیشتر، روی پایین گوشه چپ صفحه لمسی ضربه بزنید"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"سرعت اشارهگر"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"سبک رنگ نشانگر"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"تغییر سبک رنگ نشانگر به سیاه"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"تغییر سبک رنگ نشانگر به سبز"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"تغییر سبک رنگ نشانگر به زرد"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"تغییر سبک رنگ نشانگر به صورتی"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"تغییر سبک رنگ نشانگر به آبی"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"آشنایی با اشارههای صفحه لمسی"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"پد لمسی، پدلمسی، موشواره، مکاننما، پیمایش، تند کشیدن، کلیک راست، کلیک، اشارهگر"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"کلیک راست، ضربه زدن"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{هیچکدام}=1{۱ زمانبندی تنظیم شد}one{# زمانبندی تنظیم شده است}other{# زمانبندی تنظیم شده است}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"مزاحم نشوید"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"حالتهای اولویتدار"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"فقط از افراد و برنامههای مهم اعلان دریافت کنید"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"محدود کردن وقفهها"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"روشن کردن «مزاحم نشوید»"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"افزودن تقویم"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"استفاده از تقویم"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"زمانبندی"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"تنظیم زمانبندی"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"زمانبندی"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> ساعت، <xliff:g id="MINUTES">%2$d</xliff:g> دقیقه"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"زمانبندی"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"بیصدا کردن تلفن در زمانهای خاصی"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"تنظیم قانونهای «مزاحم نشوید»"</string>
@@ -3473,7 +3482,7 @@
<string name="notification_history_view_settings" msgid="5269317798670449002">"مشاهده تنظیمات اعلان"</string>
<string name="notification_history_open_notification" msgid="2655071846911258371">"باز کردن اعلان"</string>
<string name="snooze_options_title" msgid="2109795569568344617">"مجاز کردن تعویق اعلان"</string>
- <string name="notification_badging_title" msgid="5469616894819568917">"نقطههای اعلان در نماد برنامه"</string>
+ <string name="notification_badging_title" msgid="5469616894819568917">"نقطه اعلان روی نماد برنامهها"</string>
<string name="notification_bubbles_title" msgid="5681506665322329301">"حبابکها"</string>
<string name="bubbles_app_toggle_title" msgid="5319021259954576150">"حبابکها"</string>
<string name="bubbles_conversation_toggle_title" msgid="5225039214083311316">"نمایش مکالمه بهصورت حباب"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"این برنامه از تنظیمات پیشرفته پشتیبانی نمیکند"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"تنظیمات بیشتر"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"تنظیمات بیشتر داخل این برنامه دردسترس است"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"استراحت"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"استفاده از «استراحت»"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"وقتی اعلانهای زیادی را در بازه زمانی کوتاهی دریافت کنید، دستگاهتان وقفههای صوتی و بالاپرهای روی صفحه را بهحداقل میرساند. تماسها، زنگهای ساعت، و مکالمههای اولویتدار همچنان طبق معمول هشدار میدهند، و همه اعلانهای ارسالشده در «کشو اعلانات» قابلمشاهده هستند."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"اعمال کردن بر نمایههای کاری"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"برای برنامههای نمایه کاری اعمال میشود"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"خدمات یاور VR"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"برنامههای انتخابشده"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"هیچکدام"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"همه"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"مجاز کردن برنامهها برای لغو"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"برنامههایی که میتوانند وقفه ایجاد کنند"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"انتخاب برنامههای بیشتر"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{تغییر به «فقط زنگ هشدار» بهمدت یک ساعت تا {time}}one{تغییر به «فقط زنگ هشدار» بهمدت # ساعت تا {time}}other{تغییر به «فقط زنگ هشدار» بهمدت # ساعت تا {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"تغییر به «فقط هشدارها» تا <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"تغییر در «همیشه وقفه»"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"تغییر نام"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"تغییر نماد"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"تغییر نماد"</string>
<string name="warning_button_text" msgid="1274234338874005639">"هشدار"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"بستن"</string>
<string name="device_feedback" msgid="5351614458411688608">"ارسال بازخورد درباره این دستگاه"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"چپ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"راست"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"جلد محاف"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"باتری"</string>
<string name="settings_panel_title" msgid="346363079938069215">"پانل تنظیمات"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"اجرای اجباری حالت دسکتاپ"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"اجرای اجباری حالت دسکتاپ آزمایشی در نمایشگرهای ثانوی"</string>
@@ -4841,24 +4859,24 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"راهاندازی با اندازه صفحه ۱۶ ک.ب"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"راهاندازی با هسته دارای پشتیبانی صفحه ۱۶ ک.ب"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"رفتن از حالت ۴ کیلوبایتی به حالت ۱۶ کیلوبایتی"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"در حالت مستقل از صفحه هستید که هسته ۴ کیلوبایتی اجرا میکند و میخواهید به حالت ۱۶ کیلوبایتی بروید. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. با این کار دستگاه بازراهاندازی میشود. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای برگرداندن دستگاه به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و bootloader را قفل کنید که با این کار، دستگاه بازنشانی کارخانهای میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"در حالت مستقل از صفحه هستید که از هسته ۴ کیلوبایتی استفاده میکند و میخواهید به حالت ۱۶ کیلوبایتی بروید. در این حالت تمامیت نرمافزار را نمیتوان تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. با این کار دستگاه بازراهاندازی میشود. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای برگرداندن دستگاه به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و bootloader را قفل کنید که با این کار، دستگاه بازنشانی کارخانهای میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"رفتن از حالت ۱۶ کیلوبایتی به حالت ۴ کیلوبایتی"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"در حالت مستقل با صفحه هستید که هسته ۱۶ کیلوبایتی اجرا میکند و میخواهید به حالت ۴ کیلوبایتی جابهجا شوید. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. با این کار دستگاه بازراهاندازی میشود. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای برگرداندن دستگاه به حالت تولید، bootloader را قفل کنید که با این کار، دستگاه بازنشانی کارخانهای میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید."</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"در حالت مستقل از صفحه هستید که از هسته ۱۶ کیلوبایتی استفاده میکند و میخواهید به حالت ۴ کیلوبایتی بروید. در این حالت تمامیت نرمافزار را نمیتوان تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. با این کار دستگاه بازراهاندازی میشود. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای برگرداندن دستگاه به حالت تولید، bootloader را قفل کنید که با این کار، دستگاه بازنشانی کارخانهای میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"ارتقا هسته به هسته سازگار با صفحه ۱۶ کیلوبایتی انجام نشد."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"اعمال تغییرات"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"دستگاه مجدداً به ext4 قالببندی شود؟ (الزامی برای حالت ۱۶ کیلوبایتی)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"پیشاز استفاده از گزینه توسعهدهنده ۱۶ کیلوبایتی، پارتیشن دادههای این دستگاه باید به ext4 تبدیل شود. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. فعال کردن گزینه ۱۶ کیلوبایتی به بازراهاندازی دیگری بعداز این بازراهاندازی نیاز خواهد داشت. بعداز رفتن به این حالت، میتوانید با یک بار بازراهاندازی بین حالتهای ۴ کیلوبایتی و ۱۶ کیلوبایتی جابجا شوید. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای برگرداندن دستگاه به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و سپس bootloader را قفل کنید که با این کار، دستگاه بازنشانی کارخانهای میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید. دادههای دستگاه محو میشود و سیستم فایل به ext4 تغییر میکند. بعداز تکمیل کار، لطفاً به اینجا برگردید تا دوباره حالت ۱۶ کیلوبایتی را فعال کنید."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"پیشاز استفاده از گزینه توسعهدهنده ۱۶ کیلوبایتی، پارتیشن دادههای این دستگاه باید به ext4 تبدیل شود. در این حالت تمامیت نرمافزار را نمیتوان تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. فعال کردن گزینه ۱۶ کیلوبایتی به بازراهاندازی دیگری بعداز این بازراهاندازی نیاز خواهد داشت. بعداز رفتن به این حالت، میتوانید با یک بار بازراهاندازی بین حالتهای ۴ کیلوبایتی و ۱۶ کیلوبایتی جابجا شوید. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای برگرداندن دستگاه به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و سپس bootloader را قفل کنید که با این کار، دستگاه بازنشانی کارخانهای میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید. دادههای دستگاه محو میشود و سیستم فایل به ext4 تغییر میکند. بعداز تکمیل کار، لطفاً به اینجا برگردید تا دوباره حالت ۱۶ کیلوبایتی را فعال کنید."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"پاک کردن تمام دادهها"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"محو کردن داده و قالببندی مجدد پارتیشن داده به ext4 انجام نشد."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"باز کردن قفل bootloader برای حالت ۱۶ کیلوبایتی الزامی است"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"پیشاز استفاده از گزینه توسعهدهنده ۱۶ کیلوبایتی، قفل bootloader باید در این دستگاه باز شود. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. با فعال کردن حالت ۱۶ کیلوبایتی، همه تنظیمات و دادههای کاربر محو خواهند شد. بعداز باز کردن قفل bootloader، گزینه ۱۶ کیلوبایتی به انجام دو بازراهاندازی نیاز دارد. بعداز رفتن به این حالت، میتوانید با یک بار بازراهاندازی بین حالتهای ۴ کیلوبایتی و ۱۶ کیلوبایتی جابجا شوید. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای برگرداندن دستگاه به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و سپس سازنده اصلی محصول/ bootloader دستگاه را قفل کنید (که با این کار، دستگاه بازنشانی کارخانهای میشود). لطفاً قفل bootloader را باز و دوباره امتحان کنید. میتوانید دستورالعملهای نحوه انجام این کار را از اینجا دریافت کنید: <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"درحال استفاده از حالت مستقل با صفحه ۴ کیلوبایتی"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"در حالت ۴ کیلوبایتی حالت مستقل با صفحه هستید. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید bootloader دستگاه را قفل کنید. برای مطالعه بیشتر، ضربه بزنید."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"در حالت ۴ کیلوبایتی حالت مستقل با صفحه هستید. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید bootloader دستگاه را قفل کنید. با این کار، دستگاه دوباره بازنشانی کارخانهای میشود و به تنظیمات تولید بازگردانده میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید. اگر دستگاه نتوانست باموفقیت با سیستمعامل Android راهاندازی شود یا ناپایدار بود، دستگاه را با جدیدترین تصویر تنظیمات کارخانه از <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> دوباره فلاش کنید و «محو کردن دادههای دستگاه»، «قفل کردن bootloader»، و «فلاش کردن اجباری همه پارتیشنها» را انتخاب کنید."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"درحال استفاده از حالت مستقل با صفحه ۱۶ کیلوبایتی"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"در حالت ۱۶ کیلوبایتی حالت مستقل با صفحه هستید. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و سپس bootloader دستگاه را قفل کنید. برای مطالعه بیشتر، ضربه بزنید."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"در حالت ۱۶ کیلوبایتی حالت مستقل با صفحه هستید. نمیتوان تمامیت نرمافزار را در این حالت تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و سپس bootloader دستگاه را قفل کنید. با این کار، دستگاه دوباره بازنشانی کارخانهای میشود و به تنظیمات تولید بازگردانده میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید. اگر دستگاه نتوانست باموفقیت با سیستمعامل Android راهاندازی شود یا ناپایدار بود، دستگاه را با جدیدترین تصویر تنظیمات کارخانه از <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> دوباره فلاش کنید و «محو کردن دادههای دستگاه»، «قفل کردن bootloader»، و «فلاش کردن اجباری همه پارتیشنها» را انتخاب کنید."</string>
- <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"حالت مستقل با صفحه ۱۶ کیلوبایتی"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"در حالت ۴ کیلوبایتی حالت مستقل از صفحه هستید. در این حالت، تمامیت نرمافزار را نمیتوان تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید bootloader دستگاه را قفل کنید. برای مطالعه بیشتر، ضربه بزنید."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"در حالت ۴ کیلوبایتی حالت مستقل از صفحه هستید. در این حالت تمامیت نرمافزار را نمیتوان تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید bootloader دستگاه را قفل کنید. با این کار، دستگاه دوباره بازنشانی کارخانهای میشود و به تنظیمات تولید بازگردانده میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید. اگر دستگاه نتوانست باموفقیت با سیستمعامل Android راهاندازی شود یا ناپایدار بود، دستگاه را با جدیدترین تصویر تنظیمات کارخانه از <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> دوباره فلاش کنید و «محو کردن دادههای دستگاه»، «قفل کردن bootloader»، و «فلاش کردن اجباری همه پارتیشنها» را انتخاب کنید."</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"درحال استفاده از حالت مستقل از صفحه ۱۶ کیلوبایتی"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"در حالت ۱۶ کیلوبایتی حالت مستقل از صفحه هستید. در این حالت تمامیت نرمافزار را نمیتوان تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و سپس bootloader دستگاه را قفل کنید. برای مطالعه بیشتر، ضربه بزنید."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"در حالت ۱۶ کیلوبایتی حالت مستقل از صفحه هستید. در این حالت تمامیت نرمافزار را نمیتوان تضمین کرد و هرگونه دادهای که درمدت باز بودن قفل bootloader در تلفن ذخیره میشود میتواند در معرض خطر باشد. برخیاز ویژگیها در این حالتها غیرفعال میشوند بنابراین ممکن است بعضیاز برنامهها کار نکنند. برای ورود دوباره به حالت تولید، باید به حالت ۴ کیلوبایتی برگردید و سپس bootloader دستگاه را قفل کنید. با این کار، دستگاه دوباره بازنشانی کارخانهای میشود و به تنظیمات تولید بازگردانده میشود. پساز آنکه دستگاه باموفقیت با سیستمعامل Android راهاندازی شد، «باز کردن قفل سازنده اصلی محصول» را در «گزینههای توسعهدهندگان» غیرفعال کنید. اگر دستگاه نتوانست باموفقیت با سیستمعامل Android راهاندازی شود یا ناپایدار بود، دستگاه را با جدیدترین تصویر تنظیمات کارخانه از <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> دوباره فلاش کنید و «محو کردن دادههای دستگاه»، «قفل کردن bootloader»، و «فلاش کردن اجباری همه پارتیشنها» را انتخاب کنید."</string>
+ <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"حالت مستقل از صفحه ۱۶ کیلوبایتی"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"بیشتر بخوانید"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"کنترلکننده گزارش اشکال"</string>
<string name="bug_report_handler_picker_footer_text" msgid="4935758328366585673">"تعیین میکند کدام برنامه میانبر «گزارش اشکال» را در دستگاه کنترل کند."</string>
diff --git a/res/values-fi/arrays.xml b/res/values-fi/arrays.xml
index 3e9acde..9a526e8 100644
--- a/res/values-fi/arrays.xml
+++ b/res/values-fi/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index d6d9215..4649a71 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Katkaistaanko laitteen yhteys?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Muodosta uusi laitepari"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Laita automaattisesti päälle taas huomenna"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Liitä oikea korva"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Liitä vasen korva"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Liitä toinen korva"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Liitä vasen korva"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Kuulolaiteasetukset"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Pikanäppäin, kuulolaiteyhteensopivuus"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Esiasetukset"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Esiasetus"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Esiasetusta ei voitu muuttaa"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audion toistotapa"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Tietoa audion toistotavasta"</string>
@@ -300,7 +301,7 @@
<string name="security_settings_face_preference_summary_none" msgid="523320857738436024">"Edellyttää käyttöönottoa"</string>
<string name="security_settings_face_preference_title" msgid="2126625155005348417">"Kasvojentunnistusavaus"</string>
<string name="security_settings_face_profile_preference_title" msgid="7519527436266375005">"Kasvojentunnistusavaus työkäyttöön"</string>
- <string name="security_settings_face_enroll_education_title" msgid="6448806884597691208">"Kasvojentunnistusavauksen käyttöönotto"</string>
+ <string name="security_settings_face_enroll_education_title" msgid="6448806884597691208">"Kasvojen&shy;tunnistus&shy;avauksen käyttöönotto"</string>
<string name="security_settings_face_enroll_education_title_accessibility" msgid="3701874093226957891">"Ota kasvojentunnistusavaus käyttöön"</string>
<string name="security_settings_face_enroll_education_title_unlock_disabled" msgid="8810954233979716906">"Todennus kasvojen avulla"</string>
<string name="security_settings_face_enroll_education_message" msgid="4308030157487176799"></string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Peru"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ei kiitos"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ei nyt"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Hyväksyn"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Lisää"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Lukituksen avaaminen kasvoilla"</string>
@@ -340,7 +341,7 @@
<string name="security_settings_face_enroll_should_re_enroll_subtitle" msgid="7055780282999744813">"Ota kasvojentunnistusavaus käyttöön taas"</string>
<string name="security_settings_face_enroll_must_re_enroll_title" msgid="4421818770682557621">"Ota kasvojentunnistusavaus käyttöön taas"</string>
<string name="security_settings_face_enroll_must_re_enroll_subtitle" msgid="3584740139535177961">"Paranna tietosuojaa ja suorituskykyä"</string>
- <string name="security_settings_face_enroll_improve_face_alert_title" msgid="6194184776580066012">"Ota kasvojentunnistusavaus käyttöön"</string>
+ <string name="security_settings_face_enroll_improve_face_alert_title" msgid="6194184776580066012">"Ota kasvojen&shy;tunnistus&shy;avaus käyttöön"</string>
<string name="security_settings_face_enroll_improve_face_alert_body" msgid="2670118180411127323">"Poista nykyinen kasvomalli, jotta voit ottaa käyttöön kasvojentunnistusavauksen uudelleen.\n\nKasvomalli poistetaan pysyvästi ja turvallisesti.\n\nPoistamisen jälkeen tarvitset PIN-koodia, kuviota tai salasanaa puhelimen lukituksen avaamiseen tai sovelluksissa todentamiseen."</string>
<string name="security_settings_face_enroll_improve_face_alert_body_fingerprint" msgid="2469599074650327489">"Poista nykyinen kasvomalli, jotta voit ottaa käyttöön kasvojentunnistusavauksen uudelleen.\n\nKasvomalli poistetaan pysyvästi ja turvallisesti.\n\nPoistamisen jälkeen tarvitset sormenjälkeä, PIN-koodia, kuviota tai salasanaa puhelimen lukituksen avaamiseen tai sovelluksissa todentamiseen."</string>
<string name="security_settings_face_settings_use_face_category" msgid="1638314154119800188">"Kasvojentunnistus"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Muistettavaa"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Avaa puhelin tai hyväksy ostoksia sormenjäljellä.\n\nHuom. Tämän laitteen lukitusta ei voi avata sormenjäljellä. Saat lisätietoja organisaatiosi järjestelmänvalvojalta."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Peru"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ei kiitos"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ei nyt"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Hyväksyn"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Ohitetaanko sormenjälki?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Sormenjälkitunnistuksen käyttöönotossa menee vain minuutti tai pari. Jos ohitat sen nyt, voit lisätä sormenjälkesi myöhemmin asetuksista."</string>
@@ -558,10 +559,10 @@
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Kasvojentunnistusavaus yksityiselle tilalle"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Kasvojentunnistus- ja sormenjälkiavaus yksityisessä tilassa"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Sormenjälkiavauksen käyttöönotto yksityiselle tilalle"</string>
- <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Avaa yksityinen tila tai todenna henkilöllisyytesi käyttämällä sormenjälkeä tai esim. kirjautuessasi sovelluksiin tai hyväksyessäsi ostoksen"</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Käytä sormenjälkeä yksityisen tilan lukituksen avaamiseen tai henkilöllisyyden todentamiseen esim. kirjautuessasi sovelluksiin tai hyväksyessäsi ostoksen."</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Yksityisen tilan lukitus voidaan avata haluamattasi, jos joku esimerkiksi pitää sormeasi puhelinta vasten."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Käytä sormenjälkeä yksityisen tilan lukituksen avaamiseen tai ostosten hyväksymiseen"</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Kasvojentunnistusavauksen käyttöönotto yksityiselle tilalle"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Kasvojentunnistusavauksen käyttöönotto yksityiselle tilalle"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Käytä kasvojasi yksityisen tilan lukituksen avaamiseen tai henkilöllisyyden todentamiseen esim. kirjautuessasi sovelluksiin tai hyväksyessäsi ostoksen."</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Puhelimen katsominen voi avata yksityisen tilan lukituksen haluamattasi. Joku muu voi myös avata yksityisen tilan lukituksen, jos hän näyttää sinulta (esim. identtinen kaksonen) tai pitää laitetta kasvojesi edessä."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Yksityisen tilan lukituksen avaaminen kasvoilla ei ehkä ole yhtä turvallista kuin vahvan kuvion, PIN-koodin tai salasanan käyttäminen"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Aina kun laite lukittuu"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minuuttia näytön aikakatkaisun jälkeen"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Vain laitteen käynnistymisen jälkeen"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Piilota yksityinen tila"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Piilota yksityinen tila, kun se lukittu"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Piilota yksityinen tila laitteellasi piilottamalla se sovelluslistalta"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Ota käyttöön"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Yksityinen tila"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Piilota tai lukitse yksityiset sovellukset erilliseen tilaan. Saat lisäsuojaa käyttämällä Google-tiliä."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Ota yksityinen tila käyttöön"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Valitse tilallesi Google-tili"</b>\n"Tilin käyttö auttaa estämään synkronoitujen tiedostojen, kuvien ja sähköpostien näkymisen tilan ulkopuolella"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Näin se toimii"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Valitse tilallesi Google-tili"</b>\n"Tilin käyttö auttaa estämään synkronoitujen tiedostojen, kuvien ja sähköpostien näkymisen tilan ulkopuolella"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Aseta lukko"</b>\n"Lukitse tilasi, jotta muut eivät voi avata sitä"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Asenna sovelluksia"</b>\n"Yksityisessä tilassasi on oma Play Kauppa, josta voit helposti asentaa sovelluksia."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Yksityisen tilan sovellukset eivät näy lupienhallinnassa, yksityisyydenhallintapaneelissa tai muissa asetuksissa, kun yksityinen tila on lukittuna.\n\nYksityistä tilaa ei voi palauttaa toisella laitteella. Sinun täytyy ottaa käyttöön uusi yksityinen tila, jos haluat käyttää sitä toisella laitteella.\n\nKuka tahansa, joka yhdistää laitteesi tietokoneeseen tai asentaa laitteelle haitallisia sovelluksia, voi saada pääsyn yksityiseen tilaan."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Asenna sovelluksia"</b>\n"Asenna sovelluksia, jotka haluat pitää yksityisessä tilassa"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Muistettavaa"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Sovellukset pysäytetään, kun lukitset tilan"</b>\n"Kun lukitset tilan, siinä olevat sovellukset pysäytetään etkä saa niiltä ilmoituksia"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Lue lisää yksityisestä tilasta"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Tässä menee hetki"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Yksityistä tilaa otetaan käyttöön…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Voit valita uuden lukituksen pelkästään yksityiselle tilalle tai käyttää laitteen lukitustapaa"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Käytä näytön lukitusta"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Valitse uusi lukitus"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Hetki vain…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Hetki vain…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Valmista tuli!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Löydät yksityisen tilan siirtymällä sovelluslistaan ja vierittämällä alas"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Valmis"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Määritä PIN-koodi yksityiselle tilallesi"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Määritä salasana yksityiselle tilallesi"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Määritä kuvio yksityiselle tilallesi"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Luo Google-tili, jotta voit pitää datasi yksityisenä"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Seuraavalla näytöllä voit kirjautua sisään tilille, jota voit käyttää yksityisessä tilassa"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Luo oma tili, jotta voit lopettaa datan näkymisen yksityisen tilan ulkopuolella, esimerkiksi:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synkronoidut kuvat, tiedostot, sähköpostit, yhteystiedot, kalenteritapahtumat ja muu data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Sovellusten lataushistoria ja suositukset"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Selaushistoria, kirjanmerkit ja tallennetut salasanat"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Toimintaasi perustuva ehdotettu sisältö yksityisen tilan sovelluksissa"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lukitus"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Piilotus"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Voit lisätä korkeintaan <xliff:g id="COUNT">%d</xliff:g> sormenjälkeä"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Järjestelmän varmenne"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Varmenteen kiinnitys"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Verkon tiedot"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Tämä verkko käyttää vanhempaa WEP-tietoturvaprotokollaa, joka on vähemmän turvallinen"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Aliverkon peite"</string>
<string name="server_name_title" msgid="7257095185810299066">"Palvelimen nimi"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tyyppi"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Laitteen Wi-Fi-yhteyden MAC-osoite"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-osoite"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Sarjanumero"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Käynnissäoloaika"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Valmiusaika"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Valmistuspäivä"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Ensimmäinen käyttöpäivä"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Syklien määrä"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Napauta oikeaa alareunaa"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Lisäasetukset: napauta kosketuslevyn oikeaa alareunaa"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Osoittimen nopeus"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Osoittimen täytön tyyli"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Musta osoittimen täytön tyyli"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Vihreä osoittimen täytön tyyli"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Keltainen osoittimen täytön tyyli"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Pinkki osoittimen täytön tyyli"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Sininen osoittimen täytön tyyli"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Opettele kosketuslevyn eleitä"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ohjauslevy, ohjaus levy, hiiri, kohdistin, vieritä, pyyhkäise, klikkaa kakkospainikkeella, klikkaa, osoitin"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"klikkaa kakkospainikkeella, napauta"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ei yhtään}=1{1 aikataulu luotu}other{# aikataulua luotu}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Älä häiritse"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioriteettitilat"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Salli ilmoitukset vain tärkeiltä ihmisiltä ja sovelluksilta"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Keskeytysten rajoittaminen"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Laita Älä häiritse ‑tila päälle"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Muokkaa"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Aikataulut"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Aikataulu"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Ota käyttöön automaattisesti"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Kalenterin lisääminen"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Käytä kalenteria"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Aikataulu"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Aikataulu"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Hiljennä puhelin tiettyinä aikoina"</string>
@@ -3590,7 +3597,7 @@
<string name="nls_feature_settings_title" msgid="8208164329853194414">"Asetusten muuttaminen"</string>
<string name="nls_feature_settings_summary" msgid="3770028705648985689">"Se voi laittaa Älä häiritse ‑tilan päälle tai pois päältä ja muuttaa siihen liittyviä asetuksia."</string>
<string name="notification_listener_disable_warning_summary" msgid="8373396293802088961">"Jos <xliff:g id="NOTIFICATION_LISTENER_NAME">%1$s</xliff:g> ei saa käyttää ilmoituksia, myös Älä häiritse ‑tilan käyttö voidaan estää."</string>
- <string name="notification_listener_disable_warning_confirm" msgid="841492108402184976">"Poista käytöstä"</string>
+ <string name="notification_listener_disable_warning_confirm" msgid="841492108402184976">"Laita pois päältä"</string>
<string name="notification_listener_disable_warning_cancel" msgid="8802784105045594324">"Peru"</string>
<string name="notif_type_ongoing" msgid="135675014223627555">"Reaaliaikainen"</string>
<string name="notif_type_ongoing_summary" msgid="2348867528527573574">"Käytössä olevien sovellusten jatkuva viestintä, navigointi ja puhelut"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Tämä sovellus ei tue tehostettuja asetuksia"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Lisää asetuksia"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Lisää asetuksia on saatavilla sovelluksen sisällä"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Vaimennus"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Käytä vaimennusta"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kun saat monia ilmoituksia lyhyen ajan sisällä, laite minimoi äänet ja näytöllä näkyvät ponnahdusikkunat. Ilmoitukset puheluista, hälytyksistä ja tärkeistä keskusteluista tulevat normaalisti, ja kaikki ilmoitukset löytyvät helposti ilmoitusalueelta."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Käytä työprofiileissa"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Käytä työprofiilin sovelluksissa"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR-avustinpalvelut"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Valitut sovellukset"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ei mitään"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Kaikki"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Salli ohittaminen sovelluksille"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Sovellukset, jotka saavat keskeyttää"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Valitse lisää sovelluksia"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Muuta hälytyksiä tunnilla tähän asti: {time}}other{Muuta hälytyksiä # tunnilla tähän asti: {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Ota vain herätykset käyttöön kello <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> asti."</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Salli keskeytykset aina."</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Varoitus"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Sulje"</string>
<string name="device_feedback" msgid="5351614458411688608">"Lähetä palautetta tästä laitteesta"</string>
@@ -4075,7 +4093,7 @@
<string name="admin_profile_owner_user_message" msgid="4929926887231544950">"Järjestelmänvalvoja voi hallita tähän käyttäjäprofiiliin liittyviä sovelluksia ja tietoja, mukaan lukien asetuksia, käyttöoikeuksia, yrityskäyttöä, verkkotoimintaa ja laitteen sijaintitietoja."</string>
<string name="admin_device_owner_message" msgid="5503131744126520590">"Järjestelmänvalvoja voi valvoa ja hallita laitteeseen liittyviä sovelluksia ja tietoja, mukaan lukien asetuksia, käyttöoikeuksia, yrityskäyttöä, verkkotoimintaa ja laitteen sijaintitietoja."</string>
<string name="admin_financed_message" msgid="1156197630834947884">"Järjestelmänvalvoja voi saada pääsyn tähän laitteeseen liittyvään dataan, ylläpitää sovelluksia ja muuttaa laitteen asetuksia."</string>
- <string name="condition_turn_off" msgid="402707350778441939">"Poista käytöstä"</string>
+ <string name="condition_turn_off" msgid="402707350778441939">"Laita pois päältä"</string>
<string name="condition_turn_on" msgid="3911077299444314791">"Laita päälle"</string>
<string name="condition_expand_show" msgid="1501084007540953213">"Näytä"</string>
<string name="condition_expand_hide" msgid="8347564076209121058">"Piilota"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Vasen"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Oikea"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Kotelo"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Akku"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Asetuspaneeli"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Pakota työpöytätila"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Pakota kokeellinen työpöytätila toissijaisille näytöille"</string>
@@ -4913,8 +4932,8 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"Anna sovellusten, jotka voivat näkyä muiden sovellusten päällä, peittää Asetukset-sovelluksen näytöt"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"Salli esimerkkimodeemi"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Salli sovelluksen suorittaa esimerkkimodeemipalvelu instrumentointitestiä varten. Älä ota tätä käyttöön puhelimen normaalissa käytössä"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Poista näytön jakamisen suojat"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Laita arkaluontoisen sisällön järjestelmän suojaukset pois päältä tulevaa näytön jakamisistuntoa varten"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Poista näytön jakamisen suojaukset"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Laita arkaluontoisen sisällön järjestelmäsuojaukset pois päältä tulevaa näytönjakoistuntoa varten"</string>
<string name="media_controls_title" msgid="403271085636252597">"Media"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Kiinnitä mediasoitin"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Mediasoitin pysyy auki pika-asetuksissa, jotta toistoa voi jatkaa nopeasti"</string>
diff --git a/res/values-fr-rCA/arrays.xml b/res/values-fr-rCA/arrays.xml
index e34b5fb..2b431d8 100644
--- a/res/values-fr-rCA/arrays.xml
+++ b/res/values-fr-rCA/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index ffca2ca..761bf7a 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Déconnecter l\'appareil?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Associer un autre appareil"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Activer le Bluetooth automatiquement demain"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Asso. oreille droite"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Asso. oreille gauche"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Associer l\'autre oreille"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Assoc. oreille gauche"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Paramètres de l\'appareil auditif"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Raccourci, compatibilité avec les prothèses auditives"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Préréglages"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Préréglage"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Impossible de mettre à jour le préréglage"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Sortie audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"À propos de la sortie audio"</string>
@@ -295,7 +296,7 @@
<string name="security_status_title" msgid="6958004275337618656">"État de la sécurité"</string>
<string name="security_dashboard_summary" msgid="7571035662779425918">"Verrouillage d\'écran, Localiser mon appareil, sécurité des applications"</string>
<string name="safety_center_title" msgid="7732397372178774777">"Sécurité et confidentialité"</string>
- <string name="safety_center_summary" msgid="3554867379951053869">"Sécurité applications, verrouillage appareil, autorisations"</string>
+ <string name="safety_center_summary" msgid="3554867379951053869">"Sécurité applis, verrouillage appareil, autorisations"</string>
<string name="security_settings_face_preference_summary" msgid="6675126437396914838">"Visage ajouté"</string>
<string name="security_settings_face_preference_summary_none" msgid="523320857738436024">"Configuration requise"</string>
<string name="security_settings_face_preference_title" msgid="2126625155005348417">"Déverr. par reconn. faciale"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Annuler"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Non, merci"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Plus tard"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"J\'accepte"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Plus"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Déverrouiller avec votre visage"</string>
@@ -344,7 +345,7 @@
<string name="security_settings_face_enroll_improve_face_alert_body" msgid="2670118180411127323">"Supprimez votre modèle facial actuel pour reconfigurer le déverrouillage par reconnaissance faciale.\n\nCelui-ci sera supprimé de façon permanente et sécurisée.\n\nPour déverrouiller votre téléphone ou pour vous authentifier dans les applis, vous aurez besoin de ce qui suit : NIP, schéma ou mot de passe."</string>
<string name="security_settings_face_enroll_improve_face_alert_body_fingerprint" msgid="2469599074650327489">"Supprimez votre modèle facial actuel pour reconfigurer le déverrouillage facial.\n\nCelui-ci sera supprimé de façon permanente et sécurisée.\n\nPour déverrouiller votre téléphone ou vous authentifier dans les applis, vous aurez besoin de ce qui suit : empreinte digitale, NIP, schéma ou mot de passe."</string>
<string name="security_settings_face_settings_use_face_category" msgid="1638314154119800188">"Utiliser pour"</string>
- <string name="security_settings_face_settings_preferences_category" msgid="7628929873407280453">"Lorsque vous utilisez Déverrouillage par reconnaissance faciale"</string>
+ <string name="security_settings_face_settings_preferences_category" msgid="7628929873407280453">"Lorsque vous utilisez la reconnaissance faciale"</string>
<string name="security_settings_face_settings_require_attention" msgid="4395309855914391104">"Exiger des yeux ouverts"</string>
<string name="security_settings_face_settings_require_attention_details" msgid="2546230511769544074">"Pour déverrouiller le téléphone, vos yeux doivent être ouverts"</string>
<string name="security_settings_face_settings_require_confirmation" msgid="6603039421004198334">"Toujours demander une confirmation"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Souvenez-vous"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Utilisez votre empreinte digitale pour déverrouiller votre téléphone ou autoriser des achats.\n\nRemarque : Vous ne pouvez pas utiliser vos empreintes digitales pour déverrouiller cet appareil. Pour obtenir plus d\'information, communiquez avec l\'administrateur de votre organisation."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Annuler"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Non merci"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Plus tard"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"J\'accepte"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Ignorer la configuration?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"La configuration de l\'empreinte digitale ne prend qu\'une minute ou deux. Si vous ignorez cette étape, vous pourrez ajouter votre empreinte digitale plus tard dans les paramètres."</string>
@@ -554,18 +555,18 @@
<string name="private_space_fingerprint_title" msgid="5989254643211889931">"Déverrouillage par empreinte digitale"</string>
<string name="private_space_face_title" msgid="3290402865367663079">"Déverrouill. par reconnaissance faciale"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Toucher pour configurer"</string>
- <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Déverrouillage par empreinte digitale pour l\'Espace privé"</string>
- <string name="private_space_face_unlock_title" msgid="462248384776453613">"Déverrouillage par reconnaissance faciale pour Espace privé"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Déverrouill. reconnaiss. faciale/empreinte dig. espace privé"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Configurer le Déverrouillage par empreinte digitale pour l\'espace privé"</string>
+ <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Déverrouillage de l\'espace privé par empreinte digitale"</string>
+ <string name="private_space_face_unlock_title" msgid="462248384776453613">"Déverrouillage de l\'espace privé par reconnaissance faciale"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Déverr. de l\'espace privé par reconn. faciale/empreinte dig."</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Configurer le Déverr. par empreinte digitale pour l\'espace privé"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Utilisez votre empreinte digitale pour déverrouiller votre espace privé ou confirmer qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat."</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Votre espace privé peut être déverrouillé même lorsque vous n\'en avez pas l\'intention, par exemple si quelqu\'un tient le téléphone contre votre doigt."</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Vous pouvez déverrouiller votre espace privé même lorsque vous n\'en avez pas l\'intention, par exemple si quelqu\'un tient le téléphone contre votre doigt."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Utilisez votre empreinte digitale pour déverrouiller votre espace privé ou approuver un achat"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Configurer le Déverrouillage par reconnaissance faciale pour l\'espace privé"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Utilisez votre visage pour déverrouiller votre espace privé ou confirmer qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Le fait de regarder le téléphone peut déverrouiller l\'espace privé, même de manière involontaire. Votre espace privé peut être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique, ou si quelqu\'un tient l\'appareil devant votre visage."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"L\'utilisation de votre visage pour déverrouiller votre espace privé peut être moins sûre qu\'un schéma, un NIP ou un mot de passe robuste"</string>
- <string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Pour déverrouiller l\'espace privé, vos yeux doivent être ouverts. Pour obtenir des résultats optimaux, retirez les lunettes de soleil."</string>
+ <string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Pour déverrouiller l\'espace privé, vous devez avoir les yeux ouverts. Pour obtenir des résultats optimaux, retirez les lunettes de soleil."</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"Utilisez votre visage pour déverrouiller votre espace privé.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller le téléphone en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre espace privé en tenant l\'appareil devant votre visage.\n\nVotre espace privé pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Toujours exiger la confirmation pour utiliser le Déverrouillage par reconnaissance faciale"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Méthodes de déverrouillage"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Chaque fois que l\'appareil se verrouille"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min. après la mise veille de l\'écran"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Seul. après le redémarrage de l\'appareil"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Si vous utilisez un autre type de verrouillage pour votre espace privé, vous devrez peut-être confirmer votre identité pour ouvrir les applis dans ce dernier."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Masquer l\'espace privé"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Masquer l\'espace privé lorsqu\'il est verrouillé"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Pour empêcher les autres personnes de savoir que vous avez un Espace privé sur votre appareil, vous pouvez le masquer à partir de votre liste d\'applications"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configuration"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espace privé"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Masquez ou verrouillez les applications privées dans un espace à part. Utilisez un compte Google dédié pour plus de sécurité."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configurez votre Espace privé"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Choisissez un compte Google pour votre espace"</b>\n"L\'utilisation d\'un compte dédié permet d\'éviter que des fichiers synchronisés, des photos et des courriels se retrouvent en dehors de votre espace"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Fonctionnement"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Créer un compte Google pour votre espace"</b>\n"Si vous utilisez un compte dédié, cela permet d\'éviter que des fichiers, des photos et des courriels synchronisés se retrouvent en dehors de votre espace"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Configurez un verrouillage"</b>\n"Verrouillez votre espace pour empêcher d\'autres personnes d\'y accéder"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installez des applications"</b>\n"Votre Espace privé dispose de sa propre boutique Play Store, ce qui vous permet d\'installer des applications en toute simplicité."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Les applis de votre espace privé ne figureront pas dans le gestionnaire des autorisations, dans le Tableau de bord de confidentialité, ni dans d\'autres paramètres lorsque l\'espace privé est verrouillé.\n\nVotre espace privé ne peut pas être restauré sur un nouvel appareil. Vous devrez créer un autre espace privé si vous souhaitez l\'utiliser sur un autre appareil.\n\nToute personne qui connecte votre appareil à un ordinateur ou installe des applis malveillantes sur votre appareil peut être en mesure d\'accéder à votre espace privé."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Installer les applis"</b>\n"Installez les applis que vous voulez garder privées dans votre espace"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Garder à l\'esprit"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Les applis s\'arrêtent lorsque vous verrouillez votre espace"</b>\n"Lorsque vous verrouillez votre espace, les applis qui s\'y trouvent sont arrêtées, et vous ne recevez aucune notification de leur part"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"En savoir plus sur l\'Espace privé"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"L\'opération prendra quelques instants"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configuration de l\'Espace privé en cours…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Vous pouvez définir un nouveau verrou réservé à l\'Espace privé ou utiliser le même verrou utilisé pour déverrouiller votre appareil."</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Utiliser le Verrouillage de l\'écran"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Sélectionner un nouveau verrouillage"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Un instant…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Un instant…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tout est prêt!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Pour accéder à votre Espace privé, accédez à votre liste d\'applications, puis faites défiler vers le bas"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Terminé"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Créer un NIP pour l\'Espace privé"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Créer un mot de passe pour Espace privé"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Créer un schéma pour l\'Espace privé"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Créez un compte Google pour préserver la confidentialité de vos données"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Sur l\'écran suivant, vous pouvez vous connecter à un compte à utiliser avec votre Espace privé"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Créez un compte dédié pour éviter que des données n\'apparaissent en dehors de l\'Espace privé, comme :"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Photos, fichiers, courriels, contacts, événements d\'agenda et autres données synchronisées"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historique des téléchargements d\'applis et recommandations"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historique de navigation, favoris et mots de passe enregis."</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Contenu suggéré relativement à votre activité dans les applications de l\'Espace privé"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Verrouiller"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Masquer"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Vous pouvez ajouter jusqu\'à <xliff:g id="COUNT">%d</xliff:g> empreintes digitales"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificat du système"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Épinglage du certificat"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Renseignements sur le réseau"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ce réseau utilise un protocole de sécurité plus ancien appelé WEP, qui est moins sécuritaire"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Masque de sous-réseau"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nom du serveur"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adresse MAC Wi‑Fi de l\'appareil"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adresse Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Numéro de série"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Durée d\'activité"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Temps d\'activité"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Date de fabrication"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Date de la première utilisation"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Nombre de cycles"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Toucher en bas à droite"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Touch. coin inférieur droit (pavé tactile) pour plus d\'options"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Vitesse du pointeur"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Style de remplissage du pointeur"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Changez le style du pointeur à noir"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Changez le style du pointeur à vert"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Changez style du pointeur à jaune"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Changez le style du pointeur à rose"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Changez le style du pointeur à bleu"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Apprendre les gestes du pavé tactile"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"pavé tactile, souris, curseur, faire défiler, balayer, faire un clic droit, cliquer, pointeur"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"faire un clic droit, toucher"</string>
@@ -2034,7 +2038,7 @@
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Hélène, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"Il y a 2 jours"</string>
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Faire un suivi?"</string>
- <string name="color_contrast_preview_email_title" msgid="198712116139754823">"Rapport sur le voyage d\'aff."</string>
+ <string name="color_contrast_preview_email_title" msgid="198712116139754823">"Rapport sur le voyage d\'affaires"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"Pour obtenir de l\'assistance supplémentaire, veuillez communiquer avec moi ou avec Hélène. Ce rapport sera"</string>
<string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Dépenses du client"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"À propos du contraste"</string>
@@ -2698,7 +2702,7 @@
<string name="adaptive_connectivity_main_switch_title" msgid="261045483524512420">"Utiliser la Connectivité adaptative"</string>
<string name="cellular_security_title" msgid="5562899485544677941">"Sécurité des réseaux mobiles"</string>
<string name="cellular_security_summary" msgid="1893770670709928113">"Commandes du type de réseau, du chiffrement et des notifications"</string>
- <string name="cellular_security_top_intro" msgid="6749166804080092892">"Ces paramètres permettent de protéger vos appels, vos messages et vos données contre les réseaux obsolètes ou non chiffrés qui pourraient vous exposer au vol de données ou à la surveillance"</string>
+ <string name="cellular_security_top_intro" msgid="6749166804080092892">"Ces paramètres permettent de protéger vos appels, vos messages et vos données contre les réseaux obsolètes ou non chiffrés qui pourraient vous exposer au vol ou à la surveillance de données"</string>
<string name="cellular_security_settings_title" msgid="7779141923670352595">"Sécurité des réseaux mobiles"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"Notifications"</string>
<string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"Notifications du réseau"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Aucun}=1{1 horaire programmé}one{# horaire programmé}other{# horaires programmés}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ne pas déranger"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modes prioritaires"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Recevez uniquement les notifications des personnes et des applications importantes"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limiter les interruptions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Activer le mode Ne pas déranger"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Ajoutez un agenda"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Utiliser votre agenda"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programme"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Horaire"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Tél. en silence à certains moments"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Créer des règles pour le mode Ne pas déranger"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Cette application ne prend pas en charge les paramètres améliorés"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Plus de paramètres"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Plus de paramètres sont accessibles dans cette application"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Période de stabilisation"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Utiliser une période de stabilisation"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Lorsque vous recevez de nombreuses notifications sur une courte période, votre appareil minimise les interruptions sonores et les fenêtres contextuelles sur l\'écran. Les appels, les alarmes et les conversations prioritaires continueront d\'émettre des alertes comme à l\'habitude, et toutes les notifications émises seront faciles à trouver dans le volet."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Appliquer aux profils professionnels"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"L\'appliquer aux applis du profil professionnel"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Services d\'assistance pour la réalité virtuelle"</string>
@@ -3737,7 +3752,7 @@
<string name="zen_mode_none_calls" msgid="2047166006414016327">"Aucun"</string>
<string name="zen_mode_none_messages" msgid="1386626352943268342">"Aucun"</string>
<string name="zen_mode_alarms" msgid="5989343060100771099">"Alarmes"</string>
- <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Des minuteries, des alarmes, des systèmes de sécurité et d\'autres applications"</string>
+ <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Des minuteries, des alarmes, des systèmes de sécurité et d\'autres applis"</string>
<string name="zen_mode_alarms_list" msgid="334782233067365405">"alarmes"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"Alarmes"</string>
<string name="zen_mode_media" msgid="885017672250984735">"Sons des éléments multimédias"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Applis sélectionnées"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Aucune"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Tout"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Autoriser les applications à ignorer le mode Ne pas déranger"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Applications qui peuvent provoquer des interruptions"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Sélectionner plus d\'applications"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Ne recevoir que les alarmes pendant une heure jusqu\'à {time}}one{Ne recevoir que les alarmes pendant # heure jusqu\'à {time}}other{Ne recevoir que les alarmes pendant # heures jusqu\'à {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Ne recevoir que les alarmes jusqu\'à <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Activer le mode Toujours interrompre"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Mise en garde"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Fermer"</string>
<string name="device_feedback" msgid="5351614458411688608">"Commentaires sur cet appareil"</string>
@@ -4163,7 +4186,7 @@
<string name="battery_saver_on_summary" msgid="4605146593966255848">"Activée"</string>
<string name="battery_saver_off_scheduled_summary" msgid="2193875981740829819">"S\'active lorsque la pile atteint <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
<string name="battery_saver_off_summary" msgid="4411561435493109261">"Désactivé"</string>
- <string name="app_battery_usage_title" msgid="346558380609793334">"Utilisation de la pile par les applications"</string>
+ <string name="app_battery_usage_title" msgid="346558380609793334">"Utilisation de la pile par les applis"</string>
<string name="app_battery_usage_summary" msgid="6349965904306339539">"Régler l\'utilisation de la pile pour les applis"</string>
<string name="battery_tips_card_action_button" msgid="4897793527424711648">"Paramètres d\'affichage"</string>
<string name="battery_tips_card_action_button_check" msgid="1535140204105479318">"Vérifier"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Gauche"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Droite"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Étui"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Pile"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panneau Paramètres"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forcer le mode bureau"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forcer le mode bureau expérimental sur les écrans secondaires"</string>
@@ -4909,7 +4933,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Autoriser le service de modem simulé"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Autoriser cet appareil à exécuter le service de modem simulé pour les tests d\'instrumentation; ne pas activer pendant l\'utilisation normale du téléphone"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Désactiver les protections du Partage d\'écran"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Désactiver les protections système des applications confidentielles pour les sessions de Partage d\'écran à venir"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Désactiver les protections système des applis confidentielles pour les sessions de Partage d\'écran à venir"</string>
<string name="media_controls_title" msgid="403271085636252597">"Commandes multimédias"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Épingler le lecteur multimédia"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Pour que vous puissiez reprendre rapidement la lecture, le lecteur multimédia reste ouvert dans Paramètres rapides"</string>
diff --git a/res/values-fr/arrays.xml b/res/values-fr/arrays.xml
index 3f2dabb..cbf5b40 100644
--- a/res/values-fr/arrays.xml
+++ b/res/values-fr/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 923ab9c..3082c1b 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Déconnecter l\'appareil ?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Associer un appareil"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Réactiver automatiquement demain"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Associer le droit"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Associer le gauche"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Associer l\'autre appareil"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Associer le gauche"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Paramètres de l\'appareil auditif"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Raccourci, compatibilité avec les appareils auditifs"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Préréglages"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Préréglages"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Impossible de mettre à jour les préréglages"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Sortie audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"À propos de la sortie audio"</string>
@@ -179,7 +180,7 @@
<string name="desc_app_locale_disclaimer" msgid="5295933110644789052">"La langue peut différer de celles disponibles dans l\'appli. Certaines applis ne sont pas compatibles avec ce paramètre."</string>
<string name="desc_app_locale_selection_supported" msgid="6744909281573556379">"Définissez la langue pour chaque appli."</string>
<string name="desc_introduction_of_language_picker" msgid="1038423471887102449">"Votre système, vos applis et vos sites Web utilisent la première langue compatible de vos langues préférées."</string>
- <string name="desc_notice_of_language_picker" msgid="3449290526457925447">"Pour sélectionner une langue pour chaque appli, accédez aux paramètres de langue des applis."</string>
+ <string name="desc_notice_of_language_picker" msgid="3449290526457925447">"Pour sélectionner une langue pour chaque appli, accédez aux paramètres de langue de cette appli."</string>
<string name="desc_locale_helper_footer_general" msgid="6112153921151780303">"En savoir plus sur les langues des applis"</string>
<string name="title_change_system_locale" msgid="8589844586256566951">"Sélectionner %s comme langue du système ?"</string>
<string name="title_system_locale_addition" msgid="8218683660751479466">"Ajouter %s aux langues préférées ?"</string>
@@ -301,7 +302,7 @@
<string name="security_settings_face_preference_title" msgid="2126625155005348417">"Déverrouillage par reconnaissance faciale"</string>
<string name="security_settings_face_profile_preference_title" msgid="7519527436266375005">"Déverrouillage facial pour le travail"</string>
<string name="security_settings_face_enroll_education_title" msgid="6448806884597691208">"Configurer la reconnaissance faciale"</string>
- <string name="security_settings_face_enroll_education_title_accessibility" msgid="3701874093226957891">"Configurer le déverr. par reconnaissance faciale"</string>
+ <string name="security_settings_face_enroll_education_title_accessibility" msgid="3701874093226957891">"Configurer le déverrouillage par reco. faciale"</string>
<string name="security_settings_face_enroll_education_title_unlock_disabled" msgid="8810954233979716906">"Vous authentifier avec votre visage"</string>
<string name="security_settings_face_enroll_education_message" msgid="4308030157487176799"></string>
<string name="security_settings_face_enroll_education_start" msgid="8830924400907195590">"Démarrer"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Annuler"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Non, merci"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Plus tard"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"J\'accepte"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Plus"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Déverrouiller par reconnaissance faciale"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"À noter"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Utilisez votre empreinte digitale pour déverrouiller votre téléphone ou approuver des achats.\n\nRemarque : Vous ne pouvez pas utiliser votre empreinte digitale pour déverrouiller cet appareil. Pour en savoir plus, contactez l\'administrateur de votre entreprise."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Annuler"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Non, merci"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Plus tard"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"J\'accepte"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Passer cette étape ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"La configuration de l\'empreinte digitale ne prend qu\'une minute ou deux. Si vous passez cette étape, vous pourrez ajouter votre empreinte digitale plus tard dans les paramètres."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Comment ça marche"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Le déverrouillage par empreinte digitale crée un modèle unique de votre empreinte pour confirmer votre identité. Celui-ci est généré lors de la configuration en scannant votre doigt dans différentes positions."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Le déverrouillage par empreinte digitale crée un modèle unique de l\'empreinte de votre enfant pour valider son identité. Ce modèle est généré lors de la configuration en scannant son doigt dans différentes positions."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Pour des résultats optimaux, utilisez une protection d\'écran certifiée Made for Google. D\'autres protections pourraient empêcher votre empreinte de fonctionner."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Pour de meilleurs résultats, utilisez une protection d\'écran certifiée Made for Google. Avec d\'autres protections d\'écran, il se peut que votre empreinte digitale ne soit pas reconnue."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Pour de meilleurs résultats, utilisez une protection d\'écran certifiée Made for Google. L\'empreinte digitale de votre enfant peut ne pas être reconnue avec d\'autres protections d\'écran."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Déverrouillage par une montre"</string>
@@ -556,12 +557,12 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Appuyez pour configurer"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Déverrouillage de l\'espace privé par empreinte digitale"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Déverrouillage de l\'espace privé par reconnaissance faciale"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Déverr. par reconnaissance faciale/digitale de l\'esp. privé"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Configurer le déverrouillage par empreinte digitale pour l\'espace privé"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Déverrouillage de l\'espace privé par reco. faciale/digitale"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Configurer le déverr. de l\'espace privé par empreinte digitale"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Utilisez votre empreinte digitale pour déverrouiller votre espace privé ou confirmer votre identité, par exemple pour vous connecter à des applis ou approuver un achat"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Vous pouvez déverrouiller votre espace privé sans le vouloir, par exemple si quelqu\'un approche votre téléphone de votre doigt."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Utilisez votre empreinte digitale pour déverrouiller votre espace privé ou approuver des achats"</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Configurer le déverrouillage par reconnaissance faciale pour l\'espace privé"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Configurer le déverrouillage de l\'espace privé par reco. faciale"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Utilisez la reconnaissance faciale pour déverrouiller votre espace privé ou confirmer votre identité, par exemple pour vous connecter à des applis ou approuver un achat"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Vous pouvez déverrouiller votre espace privé sans le vouloir, simplement en regardant le téléphone. Votre espace privé peut aussi être déverrouillé par quelqu\'un qui vous ressemble beaucoup, par exemple un frère ou une sœur ayant les mêmes traits que vous, ou par quelqu\'un qui tient l\'appareil devant votre visage."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Déverrouiller votre espace privé avec votre visage peut être plus risqué qu\'avec un schéma, un code PIN ou un mot de passe"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"À chaque verrouillage de l\'appareil"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutes après le délai de mise en veille de l\'écran"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Uniquement après le redémarrage de l\'appareil"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Si vous utilisez une méthode de verrouillage différente pour votre espace privé, vous devrez peut-être vérifier votre identité pour ouvrir les applis qui s\'y trouvent."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Masquer l\'espace privé"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Masquer l\'espace privé lorsqu\'il est verrouillé"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Afin que personne ne puisse savoir que vous possédez un espace privé sur votre appareil, vous pouvez le masquer dans votre liste d\'applications"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configuration"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espace privé"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Masquez ou verrouillez vos applis privées en les regroupant dans un espace séparé. Pour plus de sécurité, utilisez un compte Google dédié."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configurez votre espace privé"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Créez un compte Google pour votre espace"</b>\n"En utilisant un compte Google dédié vous empêchez les fichiers, photos et e-mails synchronisés d\'apparaître en dehors de votre espace."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Fonctionnement"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Créer un compte Google pour votre espace"</b>\n"En utilisant un compte dédié, vous empêchez les fichiers, photos et e-mails synchronisés d\'apparaître en dehors de votre espace"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Activez le verrouillage"</b>\n"Verrouillez votre espace afin que personne ne puisse y accéder."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installez des applis"</b>\n"Votre espace privé dispose de son propre Play Store. Vous pouvez donc installer des applis facilement."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Les applis installées dans votre espace privé n\'apparaîtront ni dans le gestionnaire d\'autorisations, ni dans le tableau de bord Confidentialité. Lorsque votre espace privé est verrouillé, d\'autres paramètres sont également concernés. \n\nIl est impossible de restaurer votre espace privé sur un autre appareil. Vous devrez configurer un autre espace privé si vous souhaitez l\'utiliser sur un autre appareil.\n\nQuiconque connecte votre appareil à un ordinateur ou y installe des applis malveillantes peut avoir accès à votre espace privé."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Applis installées"</b>\n"Les applis installées que vous souhaitez garder privées dans votre espace"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"À noter"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Les applis s\'arrêtent lorsque vous verrouillez votre espace"</b>\n"Lorsque vous verrouillez votre espace, les applis qui s\'y trouvent s\'arrêtent et vous ne recevez plus de notifications de leur part"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"En savoir plus sur l\'espace privé"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Cela peut prendre quelques instants"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configuration de l\'espace privé…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Vous pouvez définir une nouvelle méthode de déverrouillage uniquement pour l\'espace privé, ou utiliser celle qui vous permet de déverrouiller votre appareil"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Utiliser le déverrouillage de l\'écran"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Choisir une autre méthode"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Un instant…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Un instant…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tout est prêt !"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Pour accéder à votre espace privé, rendez-vous dans votre liste d\'applications, puis faites défiler vers le bas"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"OK"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Définissez un code pour l\'espace privé"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Définissez un mot de passe pour l\'espace privé"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Définissez un schéma pour l\'espace privé"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Créez un compte Google pour préserver la confidentialité de vos données"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"À l\'écran suivant, vous pourrez vous connecter à un compte qui sera associé à votre espace privé"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"En créant un compte dédié, vous empêchez vos données d\'apparaître en dehors de votre espace privé, notamment : "</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Photos, fichiers, e-mails, contacts, événements d\'agenda synchronisés, et autres données."</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historique des applis téléchargées et recommandations"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historique de navigation, favoris et mots de passe enregistrés"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Suggestions de contenu en fonction de votre activité sur les applis de l\'espace privé"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Verrouiller"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Masquer"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Vous pouvez ajouter jusqu\'à <xliff:g id="COUNT">%d</xliff:g> empreintes digitales"</string>
@@ -664,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Méthode de déverrouillage de l\'écran"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Choisir un nouveau verrouillage de l\'écran"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Choisir le verrouillage des applis professionnelles"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Choisir un nouveau verrouillage de profil pro"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Choisir une autre méthode de déverrouillage du profil pro"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Pour plus de sécurité, définissez un verrouillage secondaire de l\'écran"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Choisissez une méthode secondaire de déverrouillage de l\'écran"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Si vous oubliez le verrouillage de l\'écran, votre administrateur ne peut pas le réinitialiser."</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificat système"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Épinglage de certificat"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Détails sur le réseau"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ce réseau utilise un ancien protocole de sécurité appelé WEP, qui est moins sécurisé"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Masque de sous-réseau"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nom du serveur"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1214,7 +1212,7 @@
<string name="adaptive_sleep_privacy" msgid="7664570136417980556">"Regard sur écran utilise la caméra avant pour détecter si quelqu\'un regarde l\'écran. Cette fonctionnalité s\'exécute sur l\'appareil uniquement, et les images ne sont jamais enregistrées ni envoyées à Google."</string>
<string name="adaptive_sleep_contextual_slice_title" msgid="7467588613212629758">"Activer Regard sur l\'écran"</string>
<string name="adaptive_sleep_contextual_slice_summary" msgid="2993867044745446094">"Garde l\'écran allumé quand vous le regardez"</string>
- <string name="power_consumption_footer_summary" msgid="4901490700555257237">"Un délai plus long de mise en veille de l\'écran sollicitera davantage la batterie."</string>
+ <string name="power_consumption_footer_summary" msgid="4901490700555257237">"Un délai plus long avant la mise en veille de l\'écran sollicite davantage la batterie."</string>
<string name="auto_rotate_camera_lock_title" msgid="5369003176695105872">"L\'appareil photo est verrouillé"</string>
<string name="auto_rotate_camera_lock_summary" msgid="5699491516271544672">"Vous devez déverrouiller l\'appareil photo pour la détection de visages"</string>
<string name="adaptive_sleep_camera_lock_summary" msgid="8417541183603618098">"L\'appareil photo doit être déverrouillé pour utiliser Regard sur écran"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adresse MAC Wi-Fi de l\'appareil"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adresse Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Numéro de série"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Durée d\'activité"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Durée d\'activité"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Date de fabrication"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Date de première utilisation"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Nombre de cycles"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Appui en bas à droite"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Appuyez en bas à droite du pavé tactile pour plus d\'options"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Vitesse du pointeur"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Style de remplissage du pointeur"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Définir rempl. pointeur sur noir"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Définir rempl. pointeur sur vert"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Définir rempl. pointeur sur jaune"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Définir rempl. pointeur sur rose"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Définir rempl. pointeur sur bleu"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Découvrir gestes au pavé tactile"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"pavé tactile, pavé tactile, souris, curseur, faire défiler, balayer, clic droit, clic, pointeur"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"clic droit, appuyer"</string>
@@ -2033,7 +2037,7 @@
<string name="color_contrast_preview" msgid="6791430227535363883">"Aperçu"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"Il y a 2 jours"</string>
- <string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Suivre ?"</string>
+ <string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Suivi ?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"Rapport du déplacement professionnel"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"Si vous avez des questions, veuillez contacter Helen ou moi-même. Ce rapport sera"</string>
<string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Dépenses du client"</string>
@@ -2317,8 +2321,8 @@
<string name="accessibility_hearing_device_about_title" msgid="7883758309646288250">"À propos des appareils auditifs"</string>
<string name="accessibility_hearing_device_footer_summary" msgid="256061045064940818">"Pour détecter d\'autres appareils auditifs qui ne sont pas pris en charge par ASHA ou LE Audio, appuyez sur "<b>"Associer un nouvel appareil"</b>" > "<b>"Voir d\'autres appareils"</b></string>
<string name="accessibility_hearing_device_pairing_page_title" msgid="6608901091770850295">"Associer appareil auditif"</string>
- <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"Sur cette page, vous avez la possibilité d\'associer des appareils auditifs de type ASHA et LE Audio. Vérifiez que votre appareil auditif est allumé et prêt à être associé."</string>
- <string name="accessibility_found_hearing_devices" msgid="637407580358386553">"Appareils auditifs dispos"</string>
+ <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"Vous pouvez associer des appareils auditifs ASHA et LE Audio sur cette page. Vérifiez que votre appareil auditif est allumé et prêt à être associé."</string>
+ <string name="accessibility_found_hearing_devices" msgid="637407580358386553">"Appareils auditifs disponibles"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"Vous ne voyez pas votre appareil auditif ?"</string>
<string name="accessibility_list_all_devices_title" msgid="161495343959211216">"Voir d\'autres appareils"</string>
<string name="accessibility_audio_adjustment_title" msgid="1332113739136802997">"Réglage du son"</string>
@@ -2583,7 +2587,7 @@
<string name="battery_saver_schedule_settings_title" msgid="3688019979950082237">"Définir une programmation"</string>
<string name="battery_saver_turn_on_summary" msgid="1433919417587171160">"Prolonger l\'autonomie de la batterie"</string>
<string name="battery_saver_sticky_title_new" msgid="5942813274115684599">"Désactiver quand la batterie est chargée"</string>
- <string name="battery_saver_sticky_title_percentage" msgid="1178162022087559148">"Éteindre à <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
+ <string name="battery_saver_sticky_title_percentage" msgid="1178162022087559148">"Désactiver à <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
<string name="battery_saver_sticky_description_new" msgid="8543277078136947874">"L\'économiseur de batterie se désactive lorsque la batterie est chargée à plus de <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
<!-- no translation found for battery_saver_seekbar_title (3712266470054006641) -->
<skip />
@@ -2626,7 +2630,7 @@
<string name="screen_time_category_last_full_charge" msgid="8856908320256057753">"Temps d\'utilisation depuis la dernière charge complète"</string>
<string name="screen_time_category_for_slot" msgid="8287722270554654959">"Temps d\'utilisation (<xliff:g id="SLOT">%s</xliff:g>)"</string>
<string name="battery_usage_spinner_view_by_apps" msgid="8769276544072098082">"Afficher par : applis"</string>
- <string name="battery_usage_spinner_view_by_systems" msgid="7904104223212160541">"Afficher par : systèmes"</string>
+ <string name="battery_usage_spinner_view_by_systems" msgid="7904104223212160541">"Afficher par systèmes"</string>
<string name="battery_usage_less_than_percent" msgid="5873099028895001082">"< <xliff:g id="PERCENTAGE">%1$s</xliff:g>"</string>
<string name="battery_usage_less_than_percent_content_description" msgid="6265933174815461493">"moins de <xliff:g id="PERCENTAGE">%1$s</xliff:g>"</string>
<string name="battery_cycle_count_footer" msgid="3642121059800373545">"En raison du contrôle qualité avant livraison, il est possible que le nombre de cycles ne soit pas nul à la première utilisation"</string>
@@ -2701,7 +2705,7 @@
<string name="cellular_security_top_intro" msgid="6749166804080092892">"Ces paramètres permettent de protéger vos appels, vos messages et vos données contre les réseaux obsolètes ou non chiffrés qui pourraient vous exposer au vol de données ou à la surveillance"</string>
<string name="cellular_security_settings_title" msgid="7779141923670352595">"Sécurité du réseau mobile"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"Notifications"</string>
- <string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"Notifications du réseau"</string>
+ <string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"Notifications relatives aux réseaux"</string>
<string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"Recevez une notification quand votre appareil se connecte à un réseau non chiffré ou lorsqu\'un réseau enregistre l\'identifiant unique de votre appareil ou de votre carte SIM."</string>
<string name="cellular_security_settings_encryption_title" msgid="4013084091666375780">"Chiffrement"</string>
<string name="cellular_security_network_generations_title" msgid="2343026988833783854">"Générations de réseaux"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Aucun}=1{1 programme défini}one{# programme défini}other{# programmes définis}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ne pas déranger"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modes Prioritaires"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Recevez uniquement les notifications des personnes et applications importantes"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limiter les interruptions"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Activer le mode Ne pas déranger"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Ajouter un agenda"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Utiliser votre agenda"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programmer"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Programme"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Tél. en silence à certains moments"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Définir les règles du mode Ne pas déranger"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Cette appli n\'est pas compatible avec les paramètres avancés"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Autres paramètres"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"D\'autres paramètres sont disponibles dans l\'appli"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Détente"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Utiliser le mode Détente"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Si vous recevez de nombreuses notifications en peu de temps, votre appareil réduira le nombre d\'interruptions sonores et les pop-ups à l\'écran. Les alertes associées aux appels, aux alarmes et aux conversations prioritaires ne seront pas affectées, et toutes les notifications distribuées sont faciles à trouver dans le volet."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Appliquer aux profils professionnels"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Appliquer aux applis du profil professionnel"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Services d\'assistance RV"</string>
@@ -3665,7 +3680,7 @@
<string name="notification_badge_title" msgid="6854537463548411313">"Autoriser la pastille de notification"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"Afficher la pastille de notification"</string>
<string name="app_notification_override_dnd_title" msgid="3769539356442226691">"Ignorer Ne pas déranger"</string>
- <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"Laisser ces notifications s\'exécuter quand Ne pas déranger est activé"</string>
+ <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"Autoriser l\'affichage de ces notifications quand Ne pas déranger est activé"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"Écran de verrouillage"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"OK"</string>
<string name="notification_show_lights_title" msgid="5564315979007438583">"Clignotement"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Applis sélectionnées"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Aucune"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Toutes"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Autoriser des applications à ignorer ce mode"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Applis qui peuvent interrompre"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Sélectionnez plus d\'applications"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Ne recevoir que les alarmes pendant 1 heure jusqu\'à {time}}one{Ne recevoir que les alarmes pendant # heure jusqu\'à {time}}other{Ne recevoir que les alarmes pendant # heures jusqu\'à {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Ne recevoir que les alarmes jusqu\'à <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Toujours interrompre"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Avertissement"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Fermer"</string>
<string name="device_feedback" msgid="5351614458411688608">"Envoyer commentaires sur l\'appareil"</string>
@@ -3870,7 +3893,7 @@
<string name="runtime_permissions_summary_no_permissions_requested" msgid="7174876170116073356">"Aucune autorisation demandée"</string>
<string name="runtime_permissions_summary_control_app_access" msgid="3744591396348990500">"Contrôler l\'accès des applications à vos données"</string>
<string name="permissions_usage_title" msgid="2942741460679049132">"Tableau de bord Confidentialité"</string>
- <string name="permissions_usage_summary" msgid="6784310472062516454">"Afficher les applis qui ont récemment utilisé des autorisations"</string>
+ <string name="permissions_usage_summary" msgid="6784310472062516454">"Affichez les applis qui ont récemment utilisé des autorisations"</string>
<string name="unused_apps" msgid="4566272194756830656">"Applis inutilisées"</string>
<string name="unused_apps_summary" msgid="4236371818881973021">"{count,plural, =1{# appli inutilisée}one{# appli inutilisée}other{# applis inutilisées}}"</string>
<string name="unused_apps_category" msgid="8954930958175500851">"Paramètres de l\'appli si inutilisée"</string>
@@ -4463,7 +4486,7 @@
<string name="credman_confirmation_change_provider_positive_button" msgid="7732302992885116967">"Modifier"</string>
<string name="credman_limit_error_msg_title" msgid="1525814645803612135">"Seuls cinq services peuvent être activés"</string>
<string name="credman_limit_error_msg" msgid="2521803280130310063">"Désactivez au moins un service pour pouvoir en ajouter un autre"</string>
- <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"Choisissez votre service préféré pour enregistrer les données de connexion et les suggestions de saisie automatique. Activez des services supplémentaires si vous souhaitez qu\'ils fournissent également des suggestions."</string>
+ <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"Choisissez le service que vous préférez utiliser pour enregistrer les données de connexion et les suggestions de saisie automatique. Activez des services supplémentaires si vous souhaitez qu\'ils fournissent également des suggestions."</string>
<string name="credman_enable_confirmation_message" msgid="8407841892310870169">"%1$s utilise ce qui est affiché à l\'écran pour déterminer ce qui peut être saisi automatiquement."</string>
<string name="credman_error_message_title" msgid="4099557206946333568">"Limite de mots de passe, clés d\'accès et services de données"</string>
<string name="credman_error_message" msgid="8334797097200415449">"Vous pouvez avoir jusqu\'à cinq mots de passe, clés d\'accès et services de données actifs à la fois. Pour en ajouter un, désactivez-en un autre."</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Gauche"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Droite"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Étui de transport"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batterie"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panneau des paramètres"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forcer le mode ordinateur"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forcer le mode ordinateur expérimental sur les écrans secondaires"</string>
@@ -4908,8 +4932,8 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"Autoriser les applications pouvant se superposer à d\'autres à se superposer aux écrans de paramètres"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"Autoriser le modem fictif"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Autoriser cet appareil à exécuter le service de modem fictif pour les tests d\'instrumentation. Ne pas l\'activer lors d\'une utilisation normale du téléphone"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Désactiver les protections de partage d\'écran"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Désactivez les protections système du contenu sensible d\'application pour les sessions de partage d\'écran à venir"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Désactiver les protections lors du partage d\'écran"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Désactiver les protections système qui masquent les contenus d\'application sensibles lorsque vous partagez votre écran"</string>
<string name="media_controls_title" msgid="403271085636252597">"Multimédia"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Épingler le lecteur multimédia"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Pour reprendre rapidement la lecture, le lecteur multimédia reste ouvert dans les Réglages rapides"</string>
diff --git a/res/values-gl/arrays.xml b/res/values-gl/arrays.xml
index 1f4fe3f..aeb4b7a 100644
--- a/res/values-gl/arrays.xml
+++ b/res/values-gl/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index e789bc1..458f678 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Desconectar dispositivo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Vincular novo dispositivo"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Volver activar automaticamente mañá"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Vincular dereito"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Vincular esquerdo"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Vincula o outro audiófono"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Vincular esquerdo"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Configuración dos dispositivos auditivos"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Atallo, compatibilidade con audiófonos"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Configuración predeterminada"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Configuración predeterminada"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Non se puido actualizar a configuración predeterminada"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Saída de audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Acerca da saída de audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancelar"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Non, grazas"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Agora non"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Acepto"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Máis"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Desbloquea coa túa cara"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Importante"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Utiliza a impresión dixital para desbloquear o teléfono ou autorizar as compras.\n\nNota: Non podes utilizar a impresión dixital para desbloquear este dispositivo. Para obter máis información, ponte en contacto co administrador da túa organización."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancelar"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Non, grazas"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Agora non"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Acepto"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Omitir a impresión dixital?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Configurar a impresión dixital só leva un ou dous minutos, pero tamén podes facelo máis tarde en Configuración."</string>
@@ -566,7 +567,7 @@
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Ao mirar o teléfono, podes desbloquear o espazo privado sen querer. Tamén poderán desbloquealo outras persoas se se parecen moito a ti (por exemplo, un xemelgo) ou se che poñen o dispositivo diante da cara."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"O desbloqueo facial do espazo privado pode ser menos fiable que un padrón, PIN ou contrasinal seguro"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Para desbloquear o espazo privado, debes ter os ollos abertos. Se levas lentes de sol, quítaas e así terás mellores resultados."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Utiliza o recoñecemento facial para desbloquear a espazo privado.\n\nImportante:\nNon podes ter varias caras configuradas á vez. Se queres engadir outra, elimina a actual.\n\nAo mirar o teléfono, podes desbloquealo sen querer.\n\nOutra persoa pode desbloquear o espazo privado se che pon o dispositivo diante da cara.\n\nTamén pode desbloquealo alguén que se pareza moito a ti, como un xemelgo."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Utiliza o recoñecemento facial para desbloquear o espazo privado.\n\nImportante:\nNon podes ter varias caras configuradas á vez. Se queres engadir outra, elimina a actual.\n\nAo mirar o teléfono, podes desbloquealo sen querer.\n\nOutra persoa pode desbloquear o espazo privado se che pon o dispositivo diante da cara.\n\nTamén pode desbloquealo alguén que se pareza moito a ti, como un xemelgo."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Pedirase sempre confirmación ao usar o desbloqueo facial"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Maneiras de desbloquear o dispositivo"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"O mesmo que o bloqueo de pantalla do dispositivo"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Cada vez que se bloquee o dispositivo"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min tralo tempo de espera da pantalla"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Só despois do reinicio do dispositivo"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ocultar o espazo privado"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ocultar espazo privado cando estea bloqueado"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Co fin de evitar que outras persoas saiban que tes un espazo privado no dispositivo, podes ocultalo para que non se mostre na lista de aplicacións"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurar"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espazo privado"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Oculta ou bloquea as aplicacións privadas nun espazo separado. Usa unha Conta de Google específica para maior seguranza."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configura o teu espazo privado"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Escolle unha Conta de Google para o teu espazo"</b>\n"Se usas unha conta específica, axudarás a evitar que os ficheiros, fotos e correos electrónicos sincronizados aparezan fóra do teu espazo"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Como funciona?"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crea unha Conta de Google para o teu espazo"</b>\n"Usar unha conta específica axuda a evitar que os ficheiros, fotos e correos electrónicos sincronizados aparezan fóra do teu espazo privado"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Define un bloqueo"</b>\n"Bloquea o espazo para que ninguén máis poida abrilo"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instala aplicacións"</b>\n"O teu espazo privado conta cunha Play Store propia para que poidas instalar aplicacións con facilidade"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"As aplicacións do espazo privado non aparecerán no xestor de permisos, no panel de privacidade nin noutras opcións de configuración cando o espazo privado estea bloqueado.\n\nEste espazo non se pode restaurar noutro dispositivo. Terás que configurar un novo espazo privado se queres usalo noutro aparello.\n\nCalquera persoa que instale aplicacións maliciosas no teu dispositivo ou o conecte a un ordenador poderá acceder ao teu espazo privado."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instala aplicacións"</b>\n"Instala as aplicacións que queiras manter no teu espazo privado"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Importante"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"As aplicacións desactívanse ao bloquear o espazo privado"</b>\n"Cando bloqueas o espazo, as aplicacións que están nel detéñense, polo que non che enviarán notificacións"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Máis información sobre o espazo privado"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Esta acción tardará uns intres"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configurando espazo privado…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Podes configurar un bloqueo novo só para o espazo privado ou usar o que xa tes para desbloquear o dispositivo"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Usar bloqueo de pantalla"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Elixir outro bloqueo"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Un segundiño…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Un segundo…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Todo listo"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Para atopar o espazo privado, vai á lista de aplicacións e desprázate cara abaixo"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Feito"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Define un PIN para o espazo privado"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Define contrasinal para o espazo privado"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Define un padrón para o espazo privado"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crea unha Conta de Google para axudar a manter a privacidade dos teus datos"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na seguinte pantalla podes iniciar sesión nunha conta para usala co teu espazo privado"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crea unha conta específica para axudar a evitar que os datos aparezan fóra do teu espazo privado, como:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotos, ficheiros, correos, contactos, eventos do calendario e outros datos sincronizados"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Recomendacións e historial de descarga de aplicacións"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historial de navegación, marcadores e contrasinais gardados"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Contido suxerido relacionado coa túa actividade nas aplicacións do espazo privado"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Entendido"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloquear"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ocultar"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Podes engadir ata <xliff:g id="COUNT">%d</xliff:g> impresións dixitais"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificado do sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fixación de certificados"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalles da rede"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Esta rede utiliza un protocolo de seguranza máis antigo (WEP) que é menos seguro"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Máscara de subrede"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nome do servidor"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipo"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Enderezo MAC do adaptador wifi do dispositivo"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Enderezo Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Número de serie"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tempo activo"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Actividade do dispositivo"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data de fabricación"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data do primeiro uso"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Número de ciclos"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Toque na parte inferior dereita"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Toca a esquina inferior dereita do panel para máis opcións"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocidade do punteiro"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Estilo de recheo do punteiro"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Cambiar recheo do punteiro a negro"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Cambiar recheo do punteiro a verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Cambiar recheo punteiro a amarelo"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Cambiar recheo do punteiro a rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Cambiar recheo do punteiro a azul"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Descubrir xestos no panel táctil"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"panel táctil, rato, cursor, desprazar, pasar o dedo, facer clic co botón dereito, facer clic, punteiro"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"facer clic co botón dereito, tocar"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ningunha planificación}=1{Definiuse 1 planificación}other{Definíronse # planificacións}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Non molestar"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modos de prioridade"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Só se reciben notificacións de aplicacións e persoas importantes"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitar as interrupcións"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Activar modo Non molestar"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Editar"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Planificacións"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Planificación"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Activar automaticamente"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Engadir un calendario"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Usar o teu calendario"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programar"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Planificación"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silencia o teléfono en horas concretas"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Esta aplicación non admite a configuración mellorada"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Máis opcións de configuración"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Hai máis opcións de configuración dentro desta aplicación"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Amainar notificacións"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Usar opción Amainar notificacións"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Cando recibas moitas notificacións en pouco tempo, o teu dispositivo minimizará as interrupcións sonoras e as ventás emerxentes na pantalla. As alertas de chamadas, alarmas e conversas prioritarias seguirán como sempre. Podes atopar facilmente todas as notificacións recibidas no panel despregable."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplicar aos perfís de traballo"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Usa esta opción coas aplicacións do perfil de traballo"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Servizos do asistente de RV"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Aplicacións seleccionadas"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ningunha"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Todas"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permitir que as aplicacións ignoren o modo Non molestar"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplicacións que poden interromper"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Selecciona máis aplicacións"</string>
@@ -3802,12 +3814,18 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Cambia durante 1 hora (ata esta hora: {time}) ao modo Só alarmas}other{Cambia durante # horas (ata esta hora: {time}) ao modo Só alarmas}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Cambiar ao modo Só alarmas ata as <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Cambia a interromper sempre"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Advertencia"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Pechar"</string>
<string name="device_feedback" msgid="5351614458411688608">"Enviar comentarios do dispositivo"</string>
<string name="restr_pin_enter_admin_pin" msgid="4435410646541671918">"Introduce o PIN do administrador"</string>
- <string name="switch_on_text" msgid="5664542327776075105">"Activado"</string>
- <string name="switch_off_text" msgid="1315547447393646667">"Desactivado"</string>
+ <string name="switch_on_text" msgid="5664542327776075105">"Opción activada"</string>
+ <string name="switch_off_text" msgid="1315547447393646667">"Opción desactivada"</string>
<string name="nfc_setting_on" msgid="7701896496026725772">"Activada"</string>
<string name="nfc_setting_off" msgid="7142103438532732309">"Opción desactivada"</string>
<string name="screen_pinning_switch_on_text" msgid="6971386830247542552">"Activado"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Esquerdo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Dereito"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Carcasa"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batería"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel de configuración"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forzar modo de escritorio"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forza o modo de escritorio experimental en pantallas secundarias"</string>
@@ -4851,12 +4870,12 @@
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Estás no modo independente de páxina executando un núcleo de 16 kB e vas cambiar ao modo de 4 kB. A integridade do software non se pode garantir neste modo, e os datos almacenados no teléfono mentres está desbloqueado o cargador de arranque poden correr perigo. Esta acción reiniciará o dispositivo. Desactivaranse algunhas funcións nestes modos, polo que pode que non funcionen algunhas aplicacións. Para facer que o dispositivo retorne ao modo de produción, terás que bloquear o cargador de arranque, o que restablecerá a configuración de fábrica do dispositivo. Despois de que o dispositivo se inicie correctamente en Android, desactiva o desbloqueo do fabricante do equipo orixinal en Opcións de programador."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Produciuse un erro a actualizar o núcleo compatible con páxinas de 16 kB."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Aplicando cambio"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Queres cambiar o formato do dispositivo a ext4? (opción obrigatoria para o modo de 16 kB)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Esta partición de datos do dispositivo debe converterse a ext4 antes de utilizar a función Opcións de programador de 16 kB. A integridade do software non se pode garantir neste modo, e os datos almacenados no teléfono mentres está desbloqueado o cargador de arranque poden correr perigo. Para activar a opción de 16 kB será necesario reiniciar o dispositivo unha vez máis. Unha vez que esteas neste modo, poderás alternar entre o modo de 4 kB e 16 kB só cun reinicio. Desactivaranse algunhas funcións nestes modos, polo que pode que non funcionen algunhas aplicacións. Para facer que o dispositivo retorne ao modo de produción, terás que volver ao modo de 4 kB e bloquear o cargador de arranque, o que restablecerá a configuración de fábrica do dispositivo. Despois de que o dispositivo se inicie correctamente en Android, desactiva o desbloqueo do fabricante do equipo orixinal en Opcións de programador. Tras a confirmación, borraranse os datos do dispositivo e cambiarase o sistema de ficheiros a ext4. Unha vez completada esta operación, volve activar o modo de 16 kB."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Cambiar o formato a ext4? (obrigatorio para o modo de 16 kB)"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Esta partición de datos do dispositivo debe converterse a ext4 antes de utilizar a opción de programador de 16 kB. A integridade do software non se pode garantir neste modo, e os datos almacenados no teléfono mentres está desbloqueado o cargador de arranque poden correr perigo. Para activar a opción de 16 kB será necesario reiniciar o dispositivo unha vez máis. Unha vez que esteas neste modo, poderás alternar entre o modo de 4 kB e 16 kB só cun reinicio. Desactivaranse algunhas funcións nestes modos, polo que pode que non funcionen algunhas aplicacións. Para facer que o dispositivo retorne ao modo de produción, terás que volver ao modo de 4 kB e bloquear o cargador de arranque, o que restablecerá a configuración de fábrica do dispositivo. Despois de que o dispositivo se inicie correctamente en Android, desactiva o desbloqueo do fabricante do equipo orixinal en Opcións de programador. Tras a confirmación, borraranse os datos do dispositivo e cambiarase o sistema de ficheiros a ext4. Unha vez completada esta operación, volve para activar de novo o modo de 16 kB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Borrar todos os datos"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Produciuse un erro ao borrar a partición de datos e cambiar o formato a ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"É necesario desbloquear o cargador de arranque para usar o modo de 16 kB"</string>
- <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Cómpre desbloquear o cargador de arranque deste dispositivo antes de utilizar a función Opcións de programador de 16 kB. A integridade do software non se pode garantir neste modo, e os datos almacenados no teléfono mentres está desbloqueado o cargador de arranque poden correr perigo. Borraranse todos os datos e opcións de configuración do usuario cando se active o modo de 16 kB. Despois de desbloquear o cargador de arranque, haberá que reiniciar o dispositivo dúas veces para activar a opción de 16 kB. Unha vez que esteas neste modo, poderás alternar entre o modo de 4 kB e 16 kB só cun reinicio. Desactivaranse algunhas funcións nestes modos, polo que pode que non funcionen algunhas aplicacións. Para facer que o dispositivo retorne ao modo de produción, terás que volver ao modo de 4 kB e bloquear o cargador de arranque ou o fabricante do equipo orixinal, o que restablecerá a configuración de fábrica do dispositivo. Desbloquea o cargador de arranque e téntao de novo. Podes consultar as instrucións deste proceso en <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
+ <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Cómpre desbloquear o cargador de arranque deste dispositivo antes de utilizar a opción de programador de 16 kB. A integridade do software non se pode garantir neste modo, e os datos almacenados no teléfono mentres está desbloqueado o cargador de arranque poden correr perigo. Borraranse todos os datos e opcións de configuración do usuario cando se active o modo de 16 kB. Despois de desbloquear o cargador de arranque, haberá que reiniciar o dispositivo dúas veces para activar a opción de 16 kB. Unha vez que esteas neste modo, poderás alternar entre o modo de 4 kB e 16 kB só cun reinicio. Desactivaranse algunhas funcións nestes modos, polo que pode que non funcionen algunhas aplicacións. Para facer que o dispositivo retorne ao modo de produción, terás que volver ao modo de 4 kB e bloquear o cargador de arranque ou o fabricante do equipo orixinal, o que restablecerá a configuración de fábrica do dispositivo. Desbloquea o cargador de arranque e téntao de novo. Podes consultar as instrucións deste proceso en <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Estase usando o modo independente de páxina de 4 kB"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Estás usando o modo independente de páxina de 4 kB. A integridade do software non se pode garantir neste modo, e os datos almacenados no teléfono mentres está desbloqueado o cargador de arranque poden correr perigo. Desactivaranse algunhas funcións nestes modos, polo que pode que non funcionen algunhas aplicacións. Para facer que retorne ao modo de produción, terás que bloquear o cargador de arranque do dispositivo. Toca para obter máis información."</string>
<string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Estás usando o modo independente de páxina de 4 kB. A integridade do software non se pode garantir neste modo, e os datos almacenados no teléfono mentres está desbloqueado o cargador de arranque poden correr perigo. Desactivaranse algunhas funcións nestes modos, polo que pode que non funcionen algunhas aplicacións. Para facer que retorne ao modo de produción, terás que bloquear o cargador de arranque do dispositivo. Esta acción restablecerá de novo a configuración de fábrica do dispositivo e restaurará a súa configuración de produción. Despois de que o dispositivo se inicie correctamente en Android, desactiva o desbloqueo do fabricante do equipo orixinal en Opcións de programador. Se o dispositivo non arranca en Android ou é inestable, volve instalar as últimas imaxes de fábrica desde <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ou usa <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> e selecciona as opcións de borrar datos do dispositivo, bloquear o cargador de arranque e forzar a instalación de todas as particións."</string>
@@ -4913,8 +4932,8 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"Permite que as aplicacións que se poden mostrar sobre outras se superpoñan nas pantallas da aplicación Configuración"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"Permitir módem de proba"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Permite que este dispositivo execute o servizo de módem de proba para examinar a instrumentación. Non actives o servizo mentres esteas facendo un uso normal do teléfono"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Desactivar as proteccións de pantalla compartida"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Desactiva as proteccións do sistema fronte a contido confidencial da aplicación nas próximas sesións con pantalla compartida"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Desactivar proteccións de pantalla compartida"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Desactiva as proteccións do sistema para contido confidencial das aplicacións nas próximas sesións con pantalla compartida"</string>
<string name="media_controls_title" msgid="403271085636252597">"Contido multimedia"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Fixar reprodutor multimedia"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"O reprodutor multimedia permanece aberto en Configuración rápida para que poidas retomar rapidamente a reprodución"</string>
diff --git a/res/values-gu/arrays.xml b/res/values-gu/arrays.xml
index 33420db..578a40e 100644
--- a/res/values-gu/arrays.xml
+++ b/res/values-gu/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 3500f49..6b58962 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ઉપકરણને ડિસ્કનેક્ટ કરીએ?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"નવા ડિવાઇસ જોડો"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"બ્લૂટૂથ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"આવતીકાલે ફરીથી ઑટોમૅટિક રીતે ચાલુ કરો"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"જમણા કાનને જોડો"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ડાબા કાનને જોડો"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"તમારા બીજા કાનનું જોડો"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ડાબા કાનનું જોડો"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"સાંભળવામાં મદદ આપતા ડિવાઇસ સંબંધી સેટિંગ"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"શૉર્ટકટ, શ્રવણ યંત્રની સુસંગતતા"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"પ્રીસેટ"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"પ્રીસેટ"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"પ્રીસેટ અપડેટ કરી શક્યા નથી"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ઑડિયો આઉટપુટ"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ઑડિયો આઉટપુટ વિશે"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"રદ કરો"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"ના, આભાર"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"હમણાં નહીં"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"હું સંમત છું"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"વધુ"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"તમારા ચહેરા વડે અનલૉક કરો"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ધ્યાનમાં રાખો"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"તમારા ફોનને અનલૉક કરવા અથવા ખરીદી મંજૂર કરવા માટે તમારી ફિંગરપ્રિન્ટનો ઉપયોગ કરો.\n\nનોંધ: આ ડિવાઇસને અનલૉક કરવા માટે તમે તમારી ફિંગરપ્રિન્ટનો ઉપયોગ નહીં કરી શકો. વધુ માહિતી માટે, તમારી સંસ્થાના વ્યવસ્થાપકનો સંપર્ક કરો."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"રદ કરો"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"ના, આભાર"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"હમણાં નહીં"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"હું સંમત છું"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ફિંગરપ્રિન્ટ છોડી દઈએ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ફિંગરપ્રિન્ટ સેટઅપ કરવા માત્ર એકથી બે મિનિટ જરૂરી છે. જો તમે આ છોડી દો, તો તમે સેટિંગમાં પછીથી તમારી ફિંગરપ્રિન્ટ ઉમેરી શકો છો."</string>
@@ -558,7 +559,7 @@
<string name="private_space_face_unlock_title" msgid="462248384776453613">"ખાનગી સ્પેસ માટે ફેસ અનલૉક"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"ખાનગી સ્પેસ માટે ફેસ અને ફિંગરપ્રિન્ટ અનલૉકની સુવિધા"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"ખાનગી સ્પેસ માટે ફિંગરપ્રિન્ટ અનલૉકની સુવિધા સેટઅપ કરો"</string>
- <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"તમારી ખાનગી સ્પેસને અનલૉક કરવા અથવા સાઇન ઇન કરનાર તમે જ છો તેની ચકાસણી કરવા માટે, જેમ કે જ્યારે તમે ઍપમાં સાઇન ઇન કરો અથવા ખરીદીને મંજૂર કરો ત્યારે તમારી ફિંગરપ્રિન્ટનો ઉપયોગ કરો"</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"તમારી ખાનગી સ્પેસને અનલૉક કરવા અથવા એ તમે જ છો તેની ચકાસણી કરવા માટે, જેમ કે જ્યારે તમે ઍપમાં સાઇન ઇન કરો અથવા ખરીદીને મંજૂર કરો ત્યારે તમારી ફિંગરપ્રિન્ટનો ઉપયોગ કરો"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"તમારે તમારી ખાનગી સ્પેસ અનલૉક કરવી ન હોય, ત્યારે પણ તે અનલૉક થઈ શકે છે, જેમ કે જો કોઈ વ્યક્તિ તમારા ફોનને તમારી આંગળી સામે પકડી રાખે તો."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"તમારી ખાનગી સ્પેસને અનલૉક કરવા અથવા ખરીદી મંજૂર કરવા માટે તમારી ફિંગરપ્રિન્ટનો ઉપયોગ કરો"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"ખાનગી સ્પેસ માટે ફેસ અનલૉકની સુવિધા સેટઅપ કરો"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"દર વખતે જ્યારે ડિવાઇસ લૉક થાય ત્યારે"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"સ્ક્રીનના ઑટોમૅટિક સમાપ્તિ સમય પછી 5 મિનિટ"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"માત્ર ડિવાઇસને ફરી શરૂ કર્યા બાદ"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"જો તમે તમારી ખાનગી સ્પેસ માટે કોઈ અલગ લૉકનો ઉપયોગ કરો, તો તમારી ખાનગી સ્પેસમાં ઍપ ખોલવા માટે તે તમે જ છો એ ચકાસવાની તમને જરૂર પડી શકે છે."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ખાનગી સ્પેસ છુપાવો"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"જ્યારે ખાનગી સ્પેસ લૉક હોય, ત્યારે તેને છુપાવો"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"તમારા ડિવાઇસ પર તમારી ખાનગી સ્પેસને અન્ય લોકોથી છુપાવવા, તમે તેને તમારી ઍપની સૂચિમાંથી છુપાવી શકો છો"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"સેટઅપ કરો"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"ખાનગી સ્પેસ"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"કોઈ અલગ સ્પેસમાં ખાનગી ઍપને છુપાવો કે લૉક કરો. વધારાની સુરક્ષા માટે, કોઈ સમર્પિત Google એકાઉન્ટનો ઉપયોગ કરો."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"તમારી ખાનગી સ્પેસનું સેટઅપ કરો"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"તમારી સ્પેસ માટે કોઈ Google એકાઉન્ટ પસંદ કરો"</b>\n"કોઈ સમર્પિત એકાઉન્ટનો ઉપયોગ કરવાથી સિંક કરેલી ફાઇલો, ફોટા અને ઇમેઇલ તમારી સ્પેસની બહાર દેખાવાથી રોકવામાં સહાય મળે છે"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"તેની કાર્ય કરવાની રીત"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"તમારી સ્પેસ માટે કોઈ Google એકાઉન્ટ બનાવો"</b>\n"જો તમે કોઈ ખાસ એકાઉન્ટનો ઉપયોગ કરો, તો તેનાથી સિંક કરેલી ફાઇલો, ફોટા અને ઇમેઇલને તમારી સ્પેસની બહાર દેખાવાથી રોકવામાં સહાય મળે છે"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"કોઈ લૉક સેટ કરો"</b>\n"તમારી સ્પેસને લૉક કરી રાખો, જેથી અન્ય લોકો તેને ખાલી ન શકે"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ઍપ ઇન્સ્ટૉલ કરો"</b>\n"તમારી ખાનગી સ્પેસ તેનું પોતાનું Play Store ધરાવે છે, જેથી કરીને તમે સરળતાથી ઍપ ઇન્સ્ટૉલ કરી શકો."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"જ્યારે ખાનગી સ્પેસ લૉક કરવામાં આવી હોય, ત્યારે પરવાનગી મેનેજર, પ્રાઇવસી ડૅશબોર્ડ અને અન્ય સેટિંગમાં તમારી ખાનગી સ્પેસમાંની ઍપ દેખાશે નહીં.\n\nતમારી ખાનગી સ્પેસ નવા ડિવાઇસ પર રિસ્ટોર કરી શકાતી નથી. અન્ય કોઈ ડિવાઇસમાં ઉપયોગ કરવા માટે તમારે અન્ય કોઈ ખાનગી સ્પેસ સેટઅપ કરવી પડશે.\n\nજો કોઈ વ્યક્તિ તમારા ડિવાઇસને કોઈ કમ્પ્યૂટર સાથે કનેક્ટ કરે અથવા તમારા ડિવાઇસ પર દુર્ભાવનાપૂર્ણ ઍપ ઇન્સ્ટૉલ કરે, તો તેઓ તમારી ખાનગી સ્પેસને ઍક્સેસ કરી શકે એમ બની શકે."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ઍપ ઇન્સ્ટૉલ કરો"</b>\n"તમે તમારી સ્પેસમાં ખાનગી રાખવા માગતા હો, તે ઍપ ઇન્સ્ટૉલ કરો"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ધ્યાનમાં રાખો"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"જ્યારે તમે તમારી સ્પેસ લૉક કરશો, ત્યારે ઍપ બંધ થઈ જશે"</b>\n"જ્યારે તમે તમારી સ્પેસ લૉક કરશો, ત્યારે તમારી સ્પેસમાંની ઍપ બંધ થઈ જશે અને તમને તેમના તરફથી કોઈ નોટિફિકેશન મળશે નહીં"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ખાનગી સ્પેસ વિશે વધુ જાણો"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"આમાં થોડો સમય લાગશે"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"ખાનગી સ્પેસનું સેટઅપ કરી રહ્યાં છીએ…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"તમે માત્ર ખાનગી સ્પેસ માટે નવું લૉક સેટ કરી શકો છો અથવા તમે તમારા ડિવાઇસને અનલૉક કરવા માટે વાપરતા હો એ જ લૉકનો ઉપયોગ કરી શકો છો"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"સ્ક્રીન લૉકનો ઉપયોગ કરો"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"નવું લૉક પસંદ કરો"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"બસ એક સેકન્ડ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"બસ એક સેકન્ડ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"બધું સેટ થઈ ગયું!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"તમારી ખાનગી સ્પેસ શોધવા માટે તમારી ઍપની સૂચિમાં જાઓ, પછી નીચે સ્ક્રોલ કરો"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"થઈ ગયું"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"તમારી ખાનગી સ્પેસ માટે પિન સેટ કરો"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"તમારી ખાનગી સ્પેસ માટે પાસવર્ડ સેટ કરો"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"તમારી ખાનગી સ્પેસ માટે પૅટર્ન સેટ કરો"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"તમારો ડેટા ખાનગી રાખવામાં સહાયતા માટે, કોઈ Google એકાઉન્ટ બનાવો"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"આગલી સ્ક્રીન પર, તમારી ખાનગી સ્પેસ સાથે ઉપયોગ કરવા માટે, તમે કોઈ એકાઉન્ટમાં સાઇન ઇન કરી શકો છો"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"તમારી ખાનગી સ્પેસની બહાર ડેટા દેખાવાનું રોકવામાં સહાયતા માટે, કોઈ ખાસ એકાઉન્ટ બનાવો, જેમ કે:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"ફોટા, ફાઇલો, ઇમેઇલ, સંપર્કો, કૅલેન્ડર ઇવેન્ટ અને સિંક કરેલો અન્ય ડેટા"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ઍપનો ડાઉનલોડ ઇતિહાસ અને સુઝાવો"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"બ્રાઉઝિંગ ઇતિહાસ, બુકમાર્ક અને સાચવેલા પાસવર્ડ"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ખાનગી સ્પેસ ઍપમાં તમારી ઍક્ટિવિટીથી સંબંધિત સૂચવેલું કન્ટેન્ટ"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"સમજાઈ ગયું"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"લૉક કરો"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"છુપાવો"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"તમે <xliff:g id="COUNT">%d</xliff:g> જેટલી ફિંગરપ્રિન્ટ ઉમેરી શકો છો"</string>
@@ -782,7 +779,7 @@
<string name="lockpassword_password_too_short" msgid="1938086368137797700">"{count,plural, =1{ઓછામાં ઓછો # અક્ષર હોવો જરૂરી છે}one{ઓછામાં ઓછો # અક્ષર હોવો જરૂરી છે}other{ઓછામાં ઓછા # અક્ષર હોવા જરૂરી છે}}"</string>
<string name="lockpassword_password_too_short_all_numeric" msgid="4301294924022401502">"{count,plural, =1{જો ફક્ત આંકડાનો ઉપયોગ કરી રહ્યા હો, તો તે ઓછામાં ઓછા 1 અંકની હોવી જોઈએ}one{જો ફક્ત આંકડાનો ઉપયોગ કરી રહ્યા હો, તો તે ઓછામાં ઓછા # અંકની હોવી જોઈએ}other{જો ફક્ત આંકડાનો ઉપયોગ કરી રહ્યા હો, તો તે ઓછામાં ઓછા # અંકની હોવી જોઈએ}}"</string>
<string name="lockpassword_pin_too_short" msgid="8910105226463085689">"{count,plural, =1{પિનમાં ઓછામાં ઓછો # અંક હોવો જરૂરી છે}one{પિનમાં ઓછામાં ઓછો # અંક હોવો જરૂરી છે}other{પિનમાં ઓછામાં ઓછા # અંક હોવા જરૂરી છે}}"</string>
- <string name="lockpassword_pin_too_short_autoConfirm_extra_message" msgid="3271351502900762571">"{count,plural, =1{પિનમાં ઓછામાં ઓછો # અક્ષર હોવો જરૂરી છે, પરંતુ વધારાની સુરક્ષા માટે {minAutoConfirmLen} અક્ષરના પિનનો સુઝાવ આપવામાં આવે છે}one{પિનમાં ઓછામાં ઓછો # અક્ષર હોવો જરૂરી છે, પરંતુ વધારાની સુરક્ષા માટે {minAutoConfirmLen} અક્ષરના પિનનો સુઝાવ આપવામાં આવે છે}other{પિનમાં ઓછામાં ઓછા # અક્ષર હોવા જરૂરી છે, પરંતુ વધારાની સુરક્ષા માટે {minAutoConfirmLen} અક્ષરના પિનનો સુઝાવ આપવામાં આવે છે}}"</string>
+ <string name="lockpassword_pin_too_short_autoConfirm_extra_message" msgid="3271351502900762571">"{count,plural, =1{પિનમાં ઓછામાં ઓછો # અંક હોવો જરૂરી છે, પરંતુ વધારાની સુરક્ષા માટે {minAutoConfirmLen} અંકના પિનનો સુઝાવ આપવામાં આવે છે}one{પિનમાં ઓછામાં ઓછો # અંક હોવો જરૂરી છે, પરંતુ વધારાની સુરક્ષા માટે {minAutoConfirmLen} અંકના પિનનો સુઝાવ આપવામાં આવે છે}other{પિનમાં ઓછામાં ઓછા # અંક હોવા જરૂરી છે, પરંતુ વધારાની સુરક્ષા માટે {minAutoConfirmLen} અંકના પિનનો સુઝાવ આપવામાં આવે છે}}"</string>
<string name="lockpassword_password_too_long" msgid="1940345313260498308">"{count,plural, =1{# કરતાં ઓછા અક્ષર હોવા જરૂરી છે}one{# કરતાં ઓછા અક્ષર હોવા જરૂરી છે}other{# કરતાં ઓછા અક્ષર હોવા જરૂરી છે}}"</string>
<string name="lockpassword_pin_too_long" msgid="1678212054564388576">"{count,plural, =1{# કરતાં ઓછા અંક હોવા જરૂરી છે}one{# કરતાં ઓછા અંક હોવા જરૂરી છે}other{# કરતાં ઓછા અંક હોવા જરૂરી છે}}"</string>
<string name="lockpassword_pin_recently_used" msgid="6650277060998923465">"ઉપકરણ વ્યવસ્થાપક તાજેતરનાં પિનનો ઉપયોગ કરવાની મંજૂરી આપતા નથી"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"સિસ્ટમ સર્ટિફિકેટ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"સર્ટિફિકેટ પિન કરવું"</string>
<string name="wifi_details_title" msgid="222735438574597493">"નેટવર્કની વિગતો"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"આ નેટવર્ક WEP નામના જૂના સુરક્ષા પ્રોટોકૉલનો ઉપયોગ કરે છે, જે ઓછો સુરક્ષિત છે"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"સબનેટ માસ્ક"</string>
<string name="server_name_title" msgid="7257095185810299066">"સર્વરનું નામ"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"પ્રકાર"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ડિવાઇસનું વાઇ-ફાઇ MAC ઍડ્રેસ"</string>
<string name="status_bt_address" msgid="6919660304578476547">"બ્લૂટૂથ ઍડ્રેસ"</string>
<string name="status_serial_number" msgid="9060064164331466789">"અનુક્રમ નંબર"</string>
- <string name="status_up_time" msgid="1274778533719495438">"ચાલુ થયાનો સમય"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"અપટાઇમ"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"નિર્માણની તારીખ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"પહેલી વાર ઉપયોગ કર્યાની તારીખ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ચક્રની સંખ્યા"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"સૌથી નીચે જમણી બાજુ ટૅપ કરો"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"વધુ વિકલ્પો માટે ટચપૅડ પર સૌથી નીચે જમણા ખૂણે ટૅપ કરો"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"પૉઇન્ટરની ઝડપ"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"પૉઇન્ટર ફીલ શૈલી"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"પૉઇન્ટર ફીલ શૈલીને કાળામાં બદલો"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"પૉઇન્ટર ફીલ શૈલીને લીલામાં બદલો"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"પૉઇન્ટર ફીલ શૈલીને પીળામાં બદલો"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"પૉઇન્ટર ફીલ શૈલીને ગુલાબીમાં બદલો"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"પૉઇન્ટર ફીલ શૈલીને વાદળીમાં બદલો"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ટચપૅડના સંકેતો વિશે જાણો"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ટ્રૅકપૅડ, ટ્રૅક પૅડ, માઉસ, કર્સર, સ્ક્રોલ કરો, સ્વાઇપ કરો, રાઇટ ક્લિક કરો, ક્લિક કરો, પૉઇન્ટર"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"રાઇટ ક્લિક કરો, ટૅપ કરો"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{એકપણ નહીં}=1{એક શેડ્યૂલ સેટ કરવામાં આવ્યું}one{# શેડ્યૂલ સેટ કરવામાં આવ્યું}other{# શેડ્યૂલ સેટ કરવામાં આવ્યા}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ખલેલ પાડશો નહીં"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"પ્રાધાન્યતાના મોડ"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"ફક્ત મહત્ત્વપૂર્ણ લોકો અને ઍપ દ્વારા નોટિફિકેશન મેળવો"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"વિક્ષેપો મર્યાદિત કરો"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"ખલેલ પાડશો નહીં ચાલુ કરો"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"કૅલેન્ડર ઉમેરો"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"તમારા કૅલેન્ડરનો ઉપયોગ કરો"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"શેડ્યૂલ"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"શેડ્યૂલ સેટ કરો"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"શેડ્યૂલ"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> કલાક, <xliff:g id="MINUTES">%2$d</xliff:g> મિનિટ"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"શેડ્યૂલ"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ચોક્કસ સમયે ફોનના અવાજને મ્યૂટ કરો"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"ખલેલ પાડશો નહીંના નિયમો સેટ કરો"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"આ ઍપ વધારાના સેટિંગને સપોર્ટ કરતી નથી"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"વધુ સેટિંગ"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"આ ઍપમાં વધુ સેટિંગ ઉપલબ્ધ છે"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"કૂલડાઉન"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"કૂલડાઉનનો ઉપયોગ કરો"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"જ્યારે ટૂંકા સમયગાળામાં તમને ઘણા નોટિફિકેશન મળે છે, ત્યારે તમારું ડિવાઇસ સ્ક્રીન પર અવાજવાળા વિક્ષેપો અને પૉપ-અપને ઘટાડશે. કૉલ, અલાર્મ અને પ્રાધાન્યતા ધરાવતી વાતચીતોને હજુ પણ સામાન્ય તરીકે ચેતવણી આપશે, અને ડિલિવર કરેલા તમામ નોટિફિકેશનને શેડમાં શોધવાનું સરળ બને છે."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ઑફિસની પ્રોફાઇલ પર લાગુ કરો"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ઑફિસની પ્રોફાઇલ ઍપ પર લાગુ કરો"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR સહાયક સેવાઓ"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"પસંદગીની ઍપ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"એકપણ નહીં"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"બધી"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"અૅપને ઓવરરાઇડ કરવાની મંજૂરી આપો"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"વિક્ષેપ ઊભો કરી શકે તેવી ઍપ"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"વધુ ઍપ પસંદ કરો"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} સુધી ફક્ત એક કલાક માટે અલાર્મમાં બદલો}one{{time} સુધી ફક્ત # કલાક માટે અલાર્મમાં બદલો}other{{time} સુધી ફક્ત # કલાક માટે અલાર્મમાં બદલો}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"એલાર્મ્સ પર ફક્ત <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> સુધી બદલો"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"હંમેશાં ખલેલ પાડો પર બદલો"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"નામ બદલો"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"આઇકન બદલો"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"આઇકન બદલો"</string>
<string name="warning_button_text" msgid="1274234338874005639">"ચેતવણી"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"બંધ કરો"</string>
<string name="device_feedback" msgid="5351614458411688608">"આ ડિવાઇસ વિશે પ્રતિસાદ મોકલો"</string>
@@ -4003,8 +4020,8 @@
<string name="ignore_optimizations_off_desc" msgid="3324571675983286177">"બહેતર બૅટરી આવરદા માટે ભલામણ કરેલ"</string>
<string name="app_list_preference_none" msgid="1635406344616653756">"કોઈ નહીં"</string>
<string name="work_profile_usage_access_warning" msgid="3477719910927319122">"આ ઍપ્લિકેશન માટે વપરાશ ઍક્સેસ બંધ કરવી તે તમારા વ્યવસ્થાપકને તમારી કાર્ય પ્રોફાઇલમાં ઍપ્લિકેશનો માટે ડેટા વપરાશને ટ્રૅક કરવાથી અટકાવતું નથી"</string>
- <string name="draw_overlay" msgid="7902083260500573027">"અન્ય ઍપથી ઉપર બતાવો"</string>
- <string name="system_alert_window_settings" msgid="6458633954424862521">"અન્ય ઍપથી ઉપર બતાવો"</string>
+ <string name="draw_overlay" msgid="7902083260500573027">"અન્ય ઍપની ઉપર ડિસ્પ્લે કરો"</string>
+ <string name="system_alert_window_settings" msgid="6458633954424862521">"અન્ય ઍપની ઉપર ડિસ્પ્લે કરો"</string>
<string name="permit_draw_overlay" msgid="4468994037192804075">"અન્ય ઍપની ઉપર ડિસ્પ્લે કરવાની મંજૂરી આપો"</string>
<string name="allow_overlay_description" msgid="1607235723669496298">"તમે ઉપયોગમાં લઈ રહ્યાં હો તેવી અન્ય ઍપની ટોચ ઉપર આ ઍપને ડિસ્પ્લે થવા દો. આ ઍપ તમે ક્યાં ટૅપ કરો છો અથવા તો સ્ક્રીનના ડિસ્પ્લે પર શું ફેરફાર કરો છો તે જોઈ શકશે."</string>
<string name="media_routing_control_title" msgid="6402800638960066807">"મીડિયા આઉટપુટ બદલો"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ડાબે"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"જમણે"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"કેસ"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"બૅટરી"</string>
<string name="settings_panel_title" msgid="346363079938069215">"સેટિંગ પૅનલ"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ફરજિયાત ડેસ્કટૉપ મોડ ચાલુ કરો"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"સેકન્ડરી ડિસ્પ્લે પર ફરજિયાત પ્રયોગાત્મક ડેસ્કટૉપ મોડ ચાલુ કરો"</string>
@@ -4847,13 +4865,13 @@
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"કર્નલને 16KB પેજની સુસંગત કર્નલ પર અપડેટ કરવામાં નિષ્ફળ રહ્યાં."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"ફેરફાર લાગુ કરી રહ્યાં છીએ"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"ડિવાઇસને ext4 પર ફરીથી ફૉર્મેટ કરીએ? (16KB મોડ માટે જરૂરી છે)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"ડેવલપરના 16KB વિકલ્પનો ઉપયોગ કરતા પહેલાં આ ડિવાઇસના ડેટા પાર્ટીશનને ext4માં રૂપાંતરિત કરવાની જરૂર છે. આ મોડમાં સૉફ્ટવેરની સંપૂર્ણતાની ગૅરંટી આપી શકાતી નથી, અને જ્યારે બૂટલોડર અનલૉક કરેલું હોય ત્યારે ફોન પર સ્ટોર કરેલો કોઈપણ ડેટા જોખમમાં હોઈ શકે છે. 16KB વિકલ્પને સક્રિય કરવાથી આ પછી વધુ એક વખત રીબૂટ કરવાની જરૂર પડશે. એકવાર તમે આ મોડમાં આવી ગયા પછી, એક જ વખત રીબૂટ કરીને તમે 4KB અને 16KB મોડ વચ્ચે આગળ અને પાછળ સ્વિચ કરી શકો છો. આ મોડમાં અમુક સુવિધાઓ બંધ કરવામાં આવશે, તેથી અમુક ઍપ્લિકેશન કામ કરશે નહીં. ડિવાઇસને પ્રોડક્શન મોડમાં પાછું લાવવા માટે, તમારે 4KB મોડ પર પાછા સ્વિચ કરવાની અને પછી બૂટલોડરને લૉક કરવાની જરૂર પડશે, જે ડિવાઇસને ફેક્ટરી રીસેટ કરે છે. ડિવાઇસ સફળતાપૂર્વક Androidમાં બૂટ થાય તે પછી, ડેવલપરના વિકલ્પોમાં OEM અનલૉક કરવાની સુવિધાને ચાલુ કરો. ડિવાઇસને વાઇપ કરવામાં આવશે અને કન્ફોર્મેશન પછી ફાઇલસિસ્ટમને ext4માં બદલવામાં આવશે. આ પૂર્ણ થયા પછી, 16KB ફરીથી ચાલુ કરવા માટે કૃપા કરીને પાછા આવો."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"ડેવલપરના 16KB વિકલ્પનો ઉપયોગ કરતા પહેલાં આ ડિવાઇસના ડેટા પાર્ટીશનને ext4માં રૂપાંતરિત કરવાની જરૂર છે. આ મોડમાં સૉફ્ટવેરની સંપૂર્ણતાની ગૅરંટી આપી શકાતી નથી, અને જ્યારે બૂટલોડર અનલૉક કરેલું હોય ત્યારે ફોન પર સ્ટોર કરેલો કોઈપણ ડેટા જોખમમાં હોઈ શકે છે. 16KB વિકલ્પને સક્રિય કરવાથી આ પછી વધુ એક વખત રીબૂટ કરવાની જરૂર પડશે. એકવાર તમે આ મોડમાં આવી ગયા પછી, એક જ વખત રીબૂટ કરીને તમે 4KB અને 16KB મોડ વચ્ચે આગળ અને પાછળ સ્વિચ કરી શકો છો. આ મોડમાં અમુક સુવિધાઓ બંધ કરવામાં આવશે, તેથી અમુક ઍપ્લિકેશન કામ કરશે નહીં. ડિવાઇસને પ્રોડક્શન મોડમાં પાછું લાવવા માટે, તમારે 4KB મોડ પર પાછા સ્વિચ કરવાની અને પછી બૂટલોડરને લૉક કરવાની જરૂર પડશે, જે ડિવાઇસને ફેક્ટરી રીસેટ કરે છે. ડિવાઇસ સફળતાપૂર્વક Androidમાં બૂટ થાય તે પછી, ડેવલપરના વિકલ્પોમાં OEM અનલૉક કરવાની સુવિધાને ચાલુ કરો. ડિવાઇસને વાઇપ કરવામાં આવશે અને કન્ફર્મેશન પછી ફાઇલસિસ્ટમને ext4માં બદલવામાં આવશે. આ પૂર્ણ થયા પછી, 16KB ફરીથી ચાલુ કરવા માટે કૃપા કરીને પાછા આવો."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"બધો ડેટા કાઢી નાખો"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"ડેટા પાર્ટિશનને ext4 પર ફરીથી ફૉર્મેટ અને વાઇપ કરી શક્યા નહીં."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"16KB મોડ માટે બૂટલોડરને અનલૉક કરવાની જરૂર છે"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"ડેવલપરના 16KB વિકલ્પનો ઉપયોગ કરતા પહેલાં આ ડિવાઇસ દ્વારા બૂટલોડરને અનલૉક કરવાની જરૂર છે. આ મોડમાં સૉફ્ટવેરની સંપૂર્ણતાની ગૅરંટી આપી શકાતી નથી, અને જ્યારે બૂટલોડર અનલૉક કરેલું હોય ત્યારે ફોન પર સ્ટોર કરેલો કોઈપણ ડેટા જોખમમાં હોઈ શકે છે. 16KB મોડ સક્રિય કરતી વખતે વપરાશકર્તાનો તમામ ડેટા અને સેટિંગ વાઇપ થઈ જશે. એકવાર બૂટલોડર અનલૉક કરવામાં આવે, પછી 16KB વિકલ્પને સક્રિય કરવા માટે બે વખત રીબૂટ કરવાની જરૂર પડશે. એકવાર તમે આ મોડમાં આવી ગયા પછી, એક જ વખત રીબૂટ કરીને તમે 4KB અને 16KB મોડ વચ્ચે આગળ અને પાછળ સ્વિચ કરી શકો છો. આ મોડમાં અમુક સુવિધાઓ બંધ કરવામાં આવશે, તેથી અમુક ઍપ્લિકેશન કામ કરશે નહીં. ડિવાઇસને પ્રોડક્શન મોડમાં પાછું લાવવા માટે, તમારે 4KB મોડ પર પાછા સ્વિચ કરવાની જરૂર પડશે અને પછી OEM/બૂટલોડર ડિવાઇસને લૉક (જે ફેક્ટરી રીસેટ કરે છે) કરે છે. કૃપા કરીને બૂટલોડરને અનલૉક કરો અને ફરી પ્રયાસ કરો. તમે આ કેવી રીતે કરવું તે માટેની સૂચનાઓ <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a> પર જોઈ શકો છો"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4KB પેજ-એગ્નોસ્ટિક મોડનો ઉપયોગ કરીને"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"તમે પેજ-એગ્નોસ્ટિક મોડના 4KB મોડમાં છો. આ મોડમાં સૉફ્ટવેરની સંપૂર્ણતાની ગૅરંટી આપી શકાતી નથી, અને જ્યારે બૂટલોડર અનલૉક કરેલું હોય ત્યારે ફોન પર સ્ટોર કરેલો કોઈપણ ડેટા જોખમમાં હોઈ શકે છે. આ મોડમાં અમુક સુવિધાઓ બંધ કરવામાં આવશે, તેથી અમુક ઍપ્લિકેશન કામ કરશે નહીં. પ્રોડક્શન મોડમાં ફરીથી દાખલ થવા માટે, તમારે ડિવાઇસના બૂટલોડરને લૉક કરવું આવશ્યક છે. વધુ વાંચવા ટેપ કરો."</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"તમે પેજ-એગ્નોસ્ટિક મોડના 4KB મોડમાં છો. આ મોડમાં સૉફ્ટવેરની સંપૂર્ણતાની ગૅરંટી આપી શકાતી નથી, અને જ્યારે બૂટલોડર અનલૉક કરેલું હોય ત્યારે ફોન પર સ્ટોર કરેલો કોઈપણ ડેટા જોખમમાં હોઈ શકે છે. આ મોડમાં અમુક સુવિધાઓ બંધ કરવામાં આવશે, તેથી અમુક ઍપ્લિકેશન કામ કરશે નહીં. પ્રોડક્શન મોડમાં ફરીથી દાખલ થવા માટે, તમારે ડિવાઇસના બૂટલોડરને લૉક કરવું આવશ્યક છે. વધુ વાંચવા ટૅપ કરો."</string>
<string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"તમે પેજ-એગ્નોસ્ટિક મોડના 4KB મોડમાં છો. આ મોડમાં સૉફ્ટવેરની સંપૂર્ણતાની ગૅરંટી આપી શકાતી નથી, અને જ્યારે બૂટલોડર અનલૉક કરેલું હોય ત્યારે ફોન પર સ્ટોર કરેલો કોઈપણ ડેટા જોખમમાં હોઈ શકે છે. આ મોડમાં અમુક સુવિધાઓ બંધ કરવામાં આવશે, તેથી અમુક ઍપ્લિકેશન કામ કરશે નહીં. પ્રોડક્શન મોડમાં ફરીથી દાખલ થવા માટે, તમારે ડિવાઇસના બૂટલોડરને લૉક કરવું આવશ્યક છે. આ ડિવાઇસને ફરીથી ફેક્ટરી રીસેટ કરશે અને તેને પ્રોડક્શન સેટિંગમાં રિસ્ટોર કરશે. ડિવાઇસ સફળતાપૂર્વક Androidમાં બૂટ થાય તે પછી, ડેવલપરના વિકલ્પોમાં OEM અનલૉક કરવાની સુવિધાને ચાલુ કરો. જો ડિવાઇસ Androidમાં બૂટ કરવામાં નિષ્ફળ જાય અથવા અસ્થિર હોય, તો <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> પરથી નવીનતમ ફેક્ટરી છબીઓ સાથે ડિવાઇસને ફરીથી ફ્લૅશ કરો અથવા <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>નો ઉપયોગ કરો અને \'ડિવાઇસ વાઇપ કરો\', \'બૂટલોડર લૉક કરો\' અને \'તમામ પાર્ટિશનને ફરજિયાત ફ્લૅશ કરો\' પસંદ કરો."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16KB પેજ-એગ્નોસ્ટિક મોડનો ઉપયોગ કરીને"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"તમે પેજ-એગ્નોસ્ટિક મોડના 16KB મોડમાં છો. આ મોડમાં સૉફ્ટવેરની સંપૂર્ણતાની ગૅરંટી આપી શકાતી નથી, અને જ્યારે બૂટલોડર અનલૉક કરેલું હોય ત્યારે ફોન પર સ્ટોર કરેલો કોઈપણ ડેટા જોખમમાં હોઈ શકે છે. આ મોડમાં અમુક સુવિધાઓ બંધ કરવામાં આવશે, તેથી અમુક ઍપ્લિકેશન કામ કરશે નહીં. પ્રોડક્શન મોડમાં ફરીથી દાખલ થવા માટે, તમારે 4K મોડ પર પાછા સ્વિચ કરવું આવશ્યક છે અને પછી ડિવાઇસના બૂટલોડરને લૉક કરો. વધુ વાંચવા ટેપ કરો."</string>
diff --git a/res/values-hi/arrays.xml b/res/values-hi/arrays.xml
index f05608a..efd3e64 100644
--- a/res/values-hi/arrays.xml
+++ b/res/values-hi/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 299ac76..79969c8 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"डिवाइस डिसकनेक्ट करना चाहते हैं?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"नया डिवाइस जोड़ें"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ब्लूटूथ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"ब्लूटूथ, कल फिर से अपने-आप चालू हो जाए"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"दाईं मशीन को जोड़ें"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"बाईं मशीन को जोड़ें"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"दूसरे कान की मशीन जोड़ें"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"बाईं मशीन को जोड़ें"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"कान की मशीन की सेटिंग"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"शॉर्टकट, कान की मशीन के साथ काम करने की सुविधा"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"प्रीसेट"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"प्रीसेट"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"प्रीसेट अपडेट नहीं किया जा सका"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ऑडियो आउटपुट"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ऑडियो आउटपुट की जानकारी"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"रद्द करें"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"रहने दें"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"अभी नहीं"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"मैं सहमत हूं"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"ज़्यादा देखें"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"चेहरे से डिवाइस अनलाॅक करें"</string>
@@ -344,7 +345,7 @@
<string name="security_settings_face_enroll_improve_face_alert_body" msgid="2670118180411127323">"फ़ेस अनलॉक की सुविधा को दोबारा सेट अप करने के लिए, चेहरे का मौजूदा मॉडल मिटाएं.\n\nआपके चेहरे का मॉडल सुरक्षित रूप से हमेशा के लिए मिटा दिया जाएगा.\n\nइसके बाद, फ़ोन अनलॉक करने या किसी ऐप्लिकेशन में पहचान की पुष्टि के लिए, आपके पिन, पैटर्न या पासवर्ड की ज़रूरत होगी."</string>
<string name="security_settings_face_enroll_improve_face_alert_body_fingerprint" msgid="2469599074650327489">"फ़ेस अनलॉक की सुविधा को दोबारा सेट अप करने के लिए, चेहरे का मौजूदा मॉडल मिटाएं.\n\nआपके चेहरे का मॉडल सुरक्षित रूप से हमेशा के लिए मिटा दिया जाएगा.\n\nइसके बाद, फ़ोन अनलॉक करने या किसी ऐप्लिकेशन में पहचान की पुष्टि करने के लिए, आपके फ़िंगरप्रिंट, पिन, पैटर्न या पासवर्ड की ज़रूरत होगी."</string>
<string name="security_settings_face_settings_use_face_category" msgid="1638314154119800188">"फ़ेस अनलॉक की सुविधा का इस्तेमाल करके"</string>
- <string name="security_settings_face_settings_preferences_category" msgid="7628929873407280453">"फ़ेस अनलॉक इस्तेमाल करते समय"</string>
+ <string name="security_settings_face_settings_preferences_category" msgid="7628929873407280453">"फ़ेस अनलॉक की सुविधा का इस्तेमाल करते समय"</string>
<string name="security_settings_face_settings_require_attention" msgid="4395309855914391104">"आंखें खुली होनी चाहिए"</string>
<string name="security_settings_face_settings_require_attention_details" msgid="2546230511769544074">"फ़ाेन अनलॉक करने के लिए, आंखें खुली होनी चाहिए"</string>
<string name="security_settings_face_settings_require_confirmation" msgid="6603039421004198334">"हमेशा पुष्टि करना ज़रूरी है"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ध्यान रखें"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"अपना फ़ोन अनलॉक करने या खरीदारियों को मंज़ूरी देने के लिए अपने फ़िंगरप्रिंट का इस्तेमाल करें.\n\nनोट: आप इस डिवाइस का लॉक खोलने के लिए अपने फ़िंगरप्रिंट का इस्तेमाल नहीं कर सकते हैं. और जानकारी के लिए, अपने संगठन के एडमिन से संपर्क करें."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"रद्द करें"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"रहने दें"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"अभी नहीं"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"मैं सहमत हूं"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"फ़िंगरप्रिंट सेटअप न करें?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"फ़िंगरप्रिंट सेटअप करने में सिर्फ़ एक या दो मिनट लगते हैं. अगर आपको अभी सेटअप नहीं करना है, तो बाद में सेटिंग में जाकर फ़िंगरप्रिंट जोड़ा जा सकता है."</string>
@@ -554,19 +555,19 @@
<string name="private_space_fingerprint_title" msgid="5989254643211889931">"फ़िंगरप्रिंट अनलॉक"</string>
<string name="private_space_face_title" msgid="3290402865367663079">"फ़ेस अनलॉक"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"सेट अप करने के लिए टैप करें"</string>
- <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"प्राइवेट स्पेस के लिए फ़िंगरप्रिंट अनलॉक की सुविधा"</string>
- <string name="private_space_face_unlock_title" msgid="462248384776453613">"प्राइवेट स्पेस के लिए फ़ेस अनलॉक की सुविधा"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"प्राइवेट स्पेस के लिए फ़ेस और फ़िंगरप्रिंट अनलॉक की सुविधा"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"प्राइवेट स्पेस के लिए फ़िंगरप्रिंट अनलॉक की सुविधा सेट अप करें"</string>
- <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"प्राइवेट स्पेस को अनलॉक करने के लिए, अपने फ़िंगरप्रिंट का इस्तेमाल करें. इसके अलावा, किसी ऐप्लिकेशन में साइन इन करने, किसी खरीदारी की मंज़ूरी देने या ऐसे और काम करने के दौरान, अपनी पहचान की पुष्टि करने के लिए भी फ़िंगरप्रिंट का इस्तेमाल किया जा सकता है"</string>
+ <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"प्राइवेट स्पेस के लिए, फ़िंगरप्रिंट अनलॉक की सुविधा"</string>
+ <string name="private_space_face_unlock_title" msgid="462248384776453613">"प्राइवेट स्पेस के लिए, फ़ेस अनलॉक की सुविधा"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"प्राइवेट स्पेस के लिए, फ़ेस और फ़िंगरप्रिंट अनलॉक की सुविधा"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"प्राइवेट स्पेस के लिए, फ़िंगरप्रिंट अनलॉक की सुविधा सेट अप करें"</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"अपने फ़िंगरप्रिंट का इस्तेमाल करके, प्राइवेट स्पेस को अनलॉक करें या किसी ऐप्लिकेशन में साइन इन करने और किसी खरीदारी की मंज़ूरी देने जैसे काम करने के दौरान, अपनी पहचान की पुष्टि करें"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"आपके न चाहने पर भी आपका प्राइवेट स्पेस अनलॉक किया जा सकता है. जैसे, कोई व्यक्ति आपके फ़ोन को आपकी उंगली से टच करके अनलॉक कर सकता है."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"प्राइवेट स्पेस को अनलॉक करने या खरीदारी की मंज़ूरी देने के लिए, फ़िंगरप्रिंट का इस्तेमाल करें"</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"प्राइवेट स्पेस के लिए फे़स अनलॉक की सुविधा सेट अप करें"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"प्राइवेट स्पेस के लिए, फ़ेस अनलॉक की सुविधा सेट अप करें"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"अपने चेहरे का इस्तेमाल करके, प्राइवेट स्पेस को अनलॉक करें या किसी ऐप्लिकेशन में साइन इन करने और किसी खरीदारी की मंज़ूरी देने जैसे काम करने के दौरान, अपनी पहचान की पुष्टि करें"</string>
- <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"फ़ोन को सामने से देखने पर, आपके न चाहते हुए भी प्राइवेट स्पेस अनलॉक हो सकता है. आपका प्राइवेट स्पेस ऐसा कोई भी व्यक्ति अनलॉक कर सकता है जिसका चेहरा आपसे काफ़ी मिलता-जुलता हो, जैसे कि जुड़वां भाई या बहन. इसके अलावा, कोई भी व्यक्ति डिवाइस को आपके चेहरे के सामने लाकर भी अनलॉक कर सकता है."</string>
+ <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"अपने फ़ोन को सामने से देखने पर, न चाहते हुए भी आपका प्राइवेट स्पेस अनलॉक हो सकता है. आपका प्राइवेट स्पेस ऐसा कोई व्यक्ति भी अनलॉक कर सकता है जिसका चेहरा आपसे काफ़ी मिलता-जुलता हो, जैसे कि जुड़वां भाई या बहन. इसके अलावा, आपके फ़ोन को आपके चेहरे के सामने लाकर, कोई भी व्यक्ति आपका प्राइवेट स्पेस अनलॉक कर सकता है."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"प्राइवेट स्पेस को अनलॉक करने के लिए अपना चेहरा दिखाना, किसी मज़बूत पैटर्न, पिन या पासवर्ड के इस्तेमाल के मुकाबले कम सुरक्षित हो सकता है"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"प्राइवेट स्पेस अनलॉक करने के लिए, आपकी आंखें खुली होनी चाहिए. बेहतर नतीजों के लिए, प्राइवेट स्पेस अनलॉक करते समय धूप का चश्मा निकाल दें."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"फ़ेस अनलॉक की सुविधा से प्राइवेट स्पेस अनलॉक करें.\n\nध्यान रखें:\nफ़ेस अनलॉक की सुविधा के लिए, एक समय में चेहरे का सिर्फ़ एक मॉडल सेट अप किया जा सकता है. दूसरा चेहरा जोड़ने के लिए, चेहरे का मौजूदा मॉडल मिटाएं.\n\nफ़ोन को सामने से देखने पर, आपके न चाहते हुए भी प्राइवेट स्पेस अनलॉक हो सकता है.\n\nआपके फ़ोन को आपके चेहरे के सामने लाकर, कोई भी व्यक्ति प्राइवेट स्पेस अनलॉक कर सकता है.\n\nआपका प्राइवेट स्पेस कोई ऐसा व्यक्ति भी अनलॉक कर सकता है जिसका चेहरा आपसे बहुत मिलता हो, जैसे कि जुड़वां भाई या बहन."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"प्राइवेट स्पेस अनलॉक करने के लिए, फ़ेस अनलॉक की सुविधा का इस्तेमाल करें.\n\nध्यान रखें:\nफ़ेस अनलॉक की सुविधा के लिए, चेहरे का सिर्फ़ एक मॉडल सेट अप किया जा सकता है. चेहरे का दूसरा मॉडल जोड़ने के लिए, उसका मौजूदा मॉडल मिटाएं.\n\nअपने फ़ोन को सामने से देखने पर, न चाहते हुए भी आपका प्राइवेट स्पेस अनलॉक हो सकता है.\n\nआपके फ़ोन को आपके चेहरे के सामने लाकर, कोई भी व्यक्ति आपका प्राइवेट स्पेस अनलॉक कर सकता है.\n\nआपका प्राइवेट स्पेस कोई ऐसा व्यक्ति भी अनलॉक कर सकता है जिसका चेहरा आपसे बहुत मिलता हो, जैसे कि जुड़वां भाई या बहन."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"फ़ेस अनलॉक इस्तेमाल करते समय, हमेशा पुष्टि करना ज़रूरी होता है"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"फ़ोन को अनलॉक करने के तरीके"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"वही जो डिवाइस का स्क्रीन लॉक है"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"हर बार डिवाइस लॉक होने पर"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"स्क्रीन बंद हो जाने के पांच मिनट बाद"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"सिर्फ़ डिवाइस रीस्टार्ट करने पर"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"अगर प्राइवेट स्पेस के लिए कोई दूसरा लॉक इस्तेमाल किया जा रहा है, तो हो सकता है कि प्राइवेट स्पेस में ऐप्लिकेशन खोलने के लिए आपको अपनी पहचान की पुष्टि करनी पड़े."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"प्राइवेट स्पेस को छिपाएं"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"प्राइवेट स्पेस लॉक होने पर, इसे छिपाएं"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"आपके डिवाइस में मौजूद प्राइवेट स्पेस को दूसरे लोग न देख पाएं, इसके लिए इसे ऐप्लिकेशन की सूची से छिपाएं"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"सेट अप करें"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"प्राइवेट स्पेस"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"निजी ऐप्लिकेशन, एक अलग जगह पर छिपाएं या लॉक करें. ज़्यादा सुरक्षा के लिए, किसी Google खाते का इस्तेमाल करें."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"प्राइवेट स्पेस सेट अप करें"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"स्पेस के लिए Google खाता चुनें"</b>\n"किसी खाते का इस्तेमाल करने से, सिंक की गई फ़ाइलें, फ़ोटो, और ईमेल को अपने डिवाइस के स्पेस के बाहर दिखने से रोका जा सकता है"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"स्पेस कैसे काम करता है"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"अपने स्पेस के लिए Google खाता बनाएं"</b>\n"स्पेस के लिए खास एक ही खाता इस्तेमाल करने से, वह सिंक की गई फ़ाइलों, फ़ोटो, और ईमेल को स्पेस के बाहर आने से रोकता है"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"लॉक सेट करें"</b>\n"अपने स्पेस को लॉक करके रखें, ताकि दूसरे लोग उसे खोल न पाएं"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ऐप्लिकेशन इंस्टॉल करें"</b>\n"प्राइवेट स्पेस का अपना Play Store है. इसकी मदद से, ऐप्लिकेशन आसानी से इंस्टॉल किए जा सकते हैं."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"प्राइवेट स्पेस लॉक होने पर, उसमें मौजूद ऐप्लिकेशन, \'अनुमतियों को मैनेज करें\' सेक्शन, प्राइवसी डैशबोर्ड, और अन्य सेटिंग में नहीं दिखेंगे.\n\nआपका प्राइवेट स्पेस, किसी नए डिवाइस पर वापस नहीं पाया जा सकता. दूसरे डिवाइस में इस्तेमाल करने के लिए, आपको दूसरा प्राइवेट स्पेस सेट अप करना होगा.\n\nअगर कोई व्यक्ति आपके डिवाइस को कंप्यूटर से कनेक्ट करता है या डिवाइस में, नुकसान पहुंचाने वाले ऐप्लिकेशन इंस्टॉल करता है, तो हो सकता है कि वह आपके प्राइवेट स्पेस को ऐक्सेस कर पाए."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ऐप्लिकेशन इंस्टॉल करें"</b>\n"ऐसे ऐप्लिकेशन इंस्टॉल करें जिन्हें आपको अपने स्पेस में निजी रखना है"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ध्यान रखें"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"स्पेस को लॉक करने से, ऐप्लिकेशन बंद हो जाते हैं"</b>\n"स्पेस को लॉक करने से, स्पेस में मौजूद ऐप्लिकेशन बंद हो जाते हैं, जिस वजह से आपको ऐप्लिकेशन से सूचनाएं नहीं मिलती हैं"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"प्राइवेट स्पेस के बारे में ज़्यादा जानें"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"इसमें कुछ समय लगेगा"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"प्राइवेट स्पेस सेट अप किया जा रहा है…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"प्राइवेट स्पेस के लिए, एक नया लॉक सेट किया जा सकता है या डिवाइस के लॉक का इस्तेमाल किया जा सकता है"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"स्क्रीन लॉक का इस्तेमाल करें"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"नया लॉक चुनें"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"बस एक सेकंड…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"बस एक सेकंड…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"हो गया!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"प्राइवेट स्पेस को ऐक्सेस करने के लिए, ऐप्लिकेशन की सूची में जाएं. इसके बाद, नीचे की ओर स्क्रोल करें"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"हो गया"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"प्राइवेट स्पेस के लिए पिन सेट करें"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"प्राइवेट स्पेस के लिए पासवर्ड सेट करें"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"प्राइवेट स्पेस के लिए पैटर्न सेट करें"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"अपने डेटा को निजी बनाए रखने के लिए, Google खाता बनाएं"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"अगली स्क्रीन पर, उस खाते में साइन इन किया जा सकता है जिसका इस्तेमाल आपको प्राइवेट स्पेस के लिए करना है"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"एक खाता बनाकर, अपने डेटा को प्राइवेट स्पेस से बाहर दिखने से रोकें. जैसे:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"सिंक किए गए फ़ोटो, फ़ाइलें, ईमेल, संपर्क, कैलेंडर इवेंट, और अन्य डेटा"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ऐप्लिकेशन डाउनलोड करने का इतिहास और सुझाव"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ब्राउज़िंग इतिहास, बुकमार्क, और सेव किए गए पासवर्ड"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"प्राइवेट स्पेस वाले ऐप्लिकेशन में, आपकी गतिविधि के हिसाब से सुझाया गया कॉन्टेंट"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"ठीक है"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"लॉक करें"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"छिपाएं"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"ज़्यादा से ज़्यादा <xliff:g id="COUNT">%d</xliff:g> फ़िंगरप्रिंट जोड़े जा सकते हैं"</string>
@@ -664,12 +661,12 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"स्क्रीन लॉक चुनें"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"नया स्क्रीन लाॅक चुनें"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"वर्क ऐप्लिकेशन के लिए लॉक चुनें"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"नया वर्क लॉक चुनें"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"वर्क प्रोफ़ाइल के लिए लॉक चुनें"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"ज़्यादा सुरक्षा के लिए, अनलॉक करने का एक दूसरा विकल्प भी सेट करें."</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"स्क्रीन लॉक का एक और तरीका चुनें"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"अगर आपको स्क्रीन लॉक याद नहीं है, तो आईटी एडमिन इसे रीसेट नहीं कर सकता."</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"एक अलग वर्क लॉक सेट करें"</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"अगर आपको फ़िलहाल यह लॉक याद नहीं, तो आईटी एडमिन से इसे रीसेट करने के लिए कहें"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"अगर आपको यह लॉक याद नहीं, तो आईटी एडमिन से इसे रीसेट करने के लिए कहें"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"स्क्रीन लॉक के विकल्प"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"स्क्रीन लॉक के विकल्प"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"पिन की अपने-आप पुष्टि होकर डिवाइस अनलॉक होने की सेटिंग चालू करें"</string>
@@ -795,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{पासवर्ड में कम से कम 1 वर्ण ऐसा होना चाहिए जो अक्षर न हो}one{पासवर्ड में कम से कम # वर्ण ऐसा होना चाहिए जो अक्षर न हो}other{पासवर्ड में कम से कम # वर्ण ऐसे होने चाहिए जो अक्षर न हों}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{पासवर्ड में कम से कम 1 वर्ण ऐसा होना चाहिए जो संख्या न हो}one{पासवर्ड में कम से कम # वर्ण ऐसा होना चाहिए जो संख्या न हो}other{पासवर्ड में कम से कम # वर्ण ऐसे होने चाहिए जो संख्या न हों}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"डिवाइस व्यवस्थापक हाल ही के पासवर्ड का उपयोग करने की अनुमति नहीं देता"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"अंकों के बढ़ते, घटते या दोहराए जाने वाले क्रम की अनुमति नहीं है"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"पिन के लिए, अंकों को बढ़ते क्रम, घटते क्रम या दोहराव वाले क्रम में नहीं लिखा जा सकता"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"पुष्टि करें"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"मिटाएं"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"स्क्रीन लॉक पहले ही बदला जा चुका है. नए स्क्रीन लॉक के साथ फिर से कोशिश करें."</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"सिस्टम सर्टिफ़िकेट"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"सर्टिफ़िकेट पिन करने की सुविधा"</string>
<string name="wifi_details_title" msgid="222735438574597493">"नेटवर्क के बारे में जानकारी"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"यह नेटवर्क, WEP नाम के एक पुराने सिक्योरिटी प्रोटोकॉल का इस्तेमाल करता है और यह कम सुरक्षित होता है"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"सबनेट मास्क"</string>
<string name="server_name_title" msgid="7257095185810299066">"सर्वर का नाम"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"टाइप"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"डिवाइस के वाई-फ़ाई का MAC पता"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ब्लूटूथ पता"</string>
<string name="status_serial_number" msgid="9060064164331466789">"सीरियल नंबर"</string>
- <string name="status_up_time" msgid="1274778533719495438">"चालू रहने का समय"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"डिवाइस कब से चालू है"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"बनाए जाने की तारीख"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"पहली बार इस्तेमाल किए जाने की तारीख"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"साइकल काउंट"</string>
@@ -1621,7 +1619,7 @@
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"पासवर्ड सेट करें"</string>
<string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"वर्क प्रोफ़ाइल का पासवर्ड सेट करें"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"पिन सेट करें"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"वर्क प्रोफ़ाइल का पिन सेट करें"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"वर्क प्रोफ़ाइल के लिए पिन सेट करें"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"पैटर्न सेट करें"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ज़्यादा सुरक्षा के लिए, इस डिवाइस को अनलॉक करने का पैटर्न सेट करें"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"वर्क प्रोफ़ाइल के लिए पैटर्न सेट करें"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"सबसे नीचे दाईं ओर टैप करें"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"ज़्यादा विकल्पों के लिए टचपैड के सबसे नीचे दाएं कोने पर टैप करें"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"पॉइंटर की स्पीड"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"पॉइंटर का फ़िल स्टाइल"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"पॉइंटर फ़िल स्टाइल, ब्लैक में बदलें"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"पॉइंटर फ़िल स्टाइल, ग्रीन में बदलें"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"पॉइंटर फ़िल स्टाइल, येलो में बदलें"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"पॉइंटर फ़िल स्टाइल, पिंक में बदलें"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"पॉइंटर फ़िल स्टाइल, ब्लू में बदलें"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"टचपैड पर हाथ के जेस्चर जानें"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ट्रैकपैड, ट्रैक पैड, माउस, कर्सर, स्क्रोल, स्वाइप, राइट क्लिक, क्लिक, पॉइंटर"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"राइट क्लिक, टैप"</string>
@@ -2028,9 +2032,9 @@
<string name="display_category_title" msgid="6638191682294461408">"डिसप्ले"</string>
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"रंग और मोशन"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"कलर कंट्रास्ट"</string>
- <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"ज़्यादा कंट्रास्ट होने से, टेक्स्ट, बटन, और आइकॉन सबसे अलग दिखते हैं. अपने लिए बेहतरीन कंट्रास्ट चुनें."</string>
+ <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"कंट्रास्ट ज़्यादा होने से, टेक्स्ट, बटन, और आइकॉन ज़्यादा अच्छे से दिखते हैं. अपने हिसाब से सही कंट्रास्ट चुनें."</string>
<string name="color_contrast_note" msgid="7592686603372566198">"ऐसा हो सकता है कि कुछ ऐप्लिकेशन में, रंग और टेक्स्ट के कंट्रास्ट की सभी सेटिंग काम न करें"</string>
- <string name="color_contrast_preview" msgid="6791430227535363883">"झलक देखें"</string>
+ <string name="color_contrast_preview" msgid="6791430227535363883">"झलक"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"हेलन, ऐडम"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"दो दिन पहले"</string>
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"फ़ॉलो अप करें?"</string>
@@ -2071,7 +2075,7 @@
<string name="accessibility_screen_magnification_joystick_summary" msgid="4640300148573982720">"स्क्रीन पर मौजूद कॉन्टेंट को बड़ा करके दिखाने की सुविधा को चालू करें और ऑन-स्क्रीन जॉयस्टिक की मदद से उसे मूव करें. स्क्रीन पर मौजूद कॉन्टेंट को बड़ा करके दिखाने की सुविधा को कंट्रोल करने के लिए, टैप करके रखें. उसके बाद जॉयस्टिक को खींचें और छोड़ें. जॉयस्टिक को मूव करने के लिए, उसे टैप करके खींचें और छोड़ें."</string>
<string name="accessibility_screen_magnification_about_title" msgid="8857919020223505415">"ज़ूम करने की सुविधा के बारे में जानकारी"</string>
<string name="accessibility_screen_magnification_footer_learn_more_content_description" msgid="924848332575978463">"ज़ूम करने की सुविधा के बारे में ज़्यादा जानें"</string>
- <string name="accessibility_magnification_mode_title" msgid="8446475127807168063">"जू़म करने से जुड़ी प्राथमिकता"</string>
+ <string name="accessibility_magnification_mode_title" msgid="8446475127807168063">"जू़म के लिए प्राथमिकता"</string>
<string name="accessibility_magnification_area_settings_message" msgid="8498648925928109462">"स्क्रीन के कुछ हिस्से या पूरी स्क्रीन को ज़ूम करें या फिर इन दोनों विकल्प के बीच स्विच करें"</string>
<string name="accessibility_magnification_area_settings_full_screen_summary" msgid="2728962784113713010">"फ़ुल स्क्रीन"</string>
<string name="accessibility_magnification_area_settings_window_screen_summary" msgid="9191632962955877019">"स्क्रीन का कुछ हिस्सा"</string>
@@ -2154,7 +2158,7 @@
<string name="accessibility_shortcut_edit_dialog_summary_software_floating" msgid="4459254227203203324"><annotation id="link">"और विकल्प"</annotation></string>
<string name="footer_learn_more_content_description" msgid="8843798273152131341">"<xliff:g id="SERVICE">%1$s</xliff:g> के बारे में ज़्यादा जानें"</string>
<string name="accessibility_shortcut_edit_dialog_title_quick_settings" msgid="140959604014177304">"क्विक सेटिंग"</string>
- <string name="accessibility_shortcut_edit_dialog_summary_quick_settings" msgid="739883998754165940">"{count,plural, =1{स्क्रीन पर ऊपर से नीचे की ओर स्वाइप करें}one{स्क्रीन पर # उंगली से, ऊपर से नीचे की ओर स्वाइप करें}other{स्क्रीन पर # उंगलियों से, ऊपर से नीचे की ओर स्वाइप करें}}"</string>
+ <string name="accessibility_shortcut_edit_dialog_summary_quick_settings" msgid="739883998754165940">"{count,plural, =1{स्क्रीन पर सबसे ऊपर से नीचे की ओर स्वाइप करें}one{स्क्रीन पर # उंगली से, सबसे ऊपर से नीचे की ओर स्वाइप करें}other{स्क्रीन पर # उंगलियों से, सबसे ऊपर से नीचे की ओर स्वाइप करें}}"</string>
<string name="accessibility_shortcut_edit_dialog_summary_quick_settings_suw" msgid="4216628328191609785">"{count,plural, =1{स्क्रीन पर ऊपर से नीचे की ओर स्वाइप करें. यह शॉर्टकट, डिवाइस का सेटअप पूरा करने के बाद उपलब्ध होगा.}one{स्क्रीन पर # उंगली से, ऊपर से नीचे की ओर स्वाइप करें. यह शॉर्टकट, डिवाइस का सेटअप पूरा करने के बाद उपलब्ध होगा.}other{स्क्रीन पर # उंगलियों से, ऊपर से नीचे की ओर स्वाइप करें. यह शॉर्टकट, डिवाइस का सेटअप पूरा करने के बाद उपलब्ध होगा.}}"</string>
<string name="accessibility_feature_shortcut_setting_summary_quick_settings" msgid="7006526933552889373">"क्विक सेटिंग"</string>
<string name="accessibility_shortcut_edit_dialog_title_hardware" msgid="844089763968552142">"आवाज़ बटन"</string>
@@ -3155,7 +3159,7 @@
<string name="app_and_notification_dashboard_summary" msgid="8047683010984186106">"हाल ही के ऐप्लिकेशन, डिफ़ॉल्ट ऐप्लिकेशन"</string>
<string name="notification_settings_work_profile" msgid="6076211850526353975">"वर्क प्रोफ़ाइल चालू होने पर ऐप्लिकेशन से जुड़ी सूचना नहीं देखी जा सकती है."</string>
<string name="account_dashboard_title" msgid="8228773251948253914">"पासवर्ड और खाते"</string>
- <string name="account_dashboard_default_summary" msgid="7976899924144356939">"साइन-इन करने और जानकारी अपने-आप भरने के बारे में सुझाव"</string>
+ <string name="account_dashboard_default_summary" msgid="7976899924144356939">"साइन-इन करने और जानकारी अपने-आप भर जाने के लिए सुझाव"</string>
<string name="app_default_dashboard_title" msgid="4071015747629103216">"डिफ़ॉल्ट ऐप्लिकेशन"</string>
<string name="cloned_apps_dashboard_title" msgid="5542076801222950921">"क्लोन किए गए ऐप्लिकेशन"</string>
<string name="desc_cloned_apps_intro_text" msgid="1369621522882622476">"ऐप्लिकेशन का क्लोन बनाएं, ताकि आप एक साथ दो खाते इस्तेमाल कर पाएं."</string>
@@ -3287,7 +3291,7 @@
<string name="notification_volume_content_description_vibrate_mode" msgid="6097212000507408288">"सूचना को म्यूट किया गया, सूचनाएं आने पर डिवाइस वाइब्रेट हाेगा"</string>
<string name="volume_content_description_silent_mode" msgid="377680514551405754">"<xliff:g id="VOLUME_TYPE">%1$s</xliff:g> को म्यूट किया गया"</string>
<string name="notification_volume_disabled_summary" msgid="8679988555852056079">"रिंग म्यूट होने की वजह से आवाज़ सुनाई नहीं दे रही"</string>
- <string name="ringtone_title" msgid="3271453110387368088">"फ़ोन रिंगटोन"</string>
+ <string name="ringtone_title" msgid="3271453110387368088">"फ़ोन की रिंगटोन"</string>
<string name="notification_ringtone_title" msgid="6924501621312095512">"सूचना की डिफ़ॉल्ट आवाज़"</string>
<string name="notification_unknown_sound_title" msgid="1319708450698738980">"ऐप की ओर से दी जाने वाली ध्वनि"</string>
<string name="notification_sound_default" msgid="8630353701915294299">"सूचना की डिफ़ॉल्ट आवाज़"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{कोई शेड्यूल सेट नहीं है}=1{1 शेड्यूल सेट है}one{# शेड्यूल सेट है}other{# शेड्यूल सेट हैं}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"परेशान न करें"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"अहम मोड"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"सिर्फ़ ज़रूरी लोगों और ऐप्लिकेशन की सूचनाएं पाएं"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"रुकावटों को कम करें"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\'परेशान न करें\' चालू करें"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"कैलेंडर जोड़ें"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"कैलेंडर का इस्तेमाल करें"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"शेड्यूल"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"शेड्यूल"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"कुछ खास समय पर फ़ोन साइलेंट करें"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"\'परेशान न करें\' सुविधा के नियम सेट करें"</string>
@@ -3359,7 +3371,7 @@
<string name="mode_dark_theme_title_secondary_list" msgid="4761262694149772845">"इससे गहरे रंग वाली थीम चालू होती है"</string>
<string name="mode_dark_theme_summary" msgid="8428887193785431898">"गहरे रंग के बैकग्राउंड पर हल्के रंग के टेक्स्ट को प्राथमिकता देने के लिए, ओएस और ऐप्लिकेशन पर स्विच करें. ऐसा करके, टेक्स्ट को देख पाना आसान हो जाता है. साथ ही, कुछ डिवाइसों पर बैटरी की काफ़ी बचत होती है"</string>
<string name="mode_display_settings_summary" msgid="5929234706883482380">"{count,plural,offset:2 =0{डिसप्ले में कोई बदलाव नहीं किया गया}=1{{effect_1}}=2{{effect_1} और {effect_2}}=3{{effect_1}, {effect_2}, और {effect_3}}one{{effect_1}, {effect_2}, और # अन्य}other{{effect_1}, {effect_2}, और # अन्य}}"</string>
- <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"इससे फ़िल्टर की गई सूचनाओं के लिए विकल्प दिखते हैं"</string>
+ <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"फ़िल्टर की गई सूचनाओं के लिए विकल्प"</string>
<string name="zen_mode_restrict_notifications_category" msgid="5870944770935394566">"\'परेशान न करें\' मोड चालू होने पर"</string>
<string name="zen_mode_restrict_notifications_mute" msgid="6692072837485018287">"सूचनाएं आने पर कोई आवाज़ सुनाई न दे"</string>
<string name="zen_mode_restrict_notifications_mute_summary" msgid="966597459849580949">"इस सेटिंग को चुनने से, डिवाइस की स्क्रीन पर सूचनाएं दिखेंगी"</string>
@@ -3371,7 +3383,7 @@
<string name="zen_mode_restrict_notifications_enable_custom" msgid="4303255634151330401">"पसंद के मुताबिक बनाई गई सेटिंग चालू करें"</string>
<string name="zen_mode_restrict_notifications_disable_custom" msgid="5062332754972217218">"पसंद के मुताबिक बनाई गई सेटिंग हटाएं"</string>
<string name="zen_mode_restrict_notifications_summary_muted" msgid="2826459087306271381">"सूचनाएं दिखाई गईं"</string>
- <string name="zen_mode_restrict_notifications_summary_custom" msgid="6455811408721183198">"अब कुछ सूचनाएंं नहीं दिखेंगी"</string>
+ <string name="zen_mode_restrict_notifications_summary_custom" msgid="6455811408721183198">"कुछ सूचनाएं न दिखें"</string>
<string name="zen_mode_restrict_notifications_summary_hidden" msgid="2157279412167366119">"अब कोई सूचना नहीं दिखेगी"</string>
<string name="zen_mode_what_to_block_title" msgid="5692710098205334164">"अपने हिसाब से पाबंदियां सेट करें"</string>
<string name="zen_mode_block_effects_screen_on" msgid="8780668375194500987">"स्क्रीन चालू होने पर"</string>
@@ -3513,7 +3525,7 @@
<string name="lock_screen_notifs_redact_work" msgid="3833920196569208430">"वर्क प्रोफ़ाइल की संवेदनशील सूचनाएं"</string>
<string name="lock_screen_notifs_redact_work_summary" msgid="3238238380405430156">"स्क्रीन लॉक होने पर वर्क प्रोफ़ाइल का संवेदनशील कॉन्टेंट दिखाएं"</string>
<string name="lock_screen_notifications_summary_show" msgid="6540443483088311328">"सभी सूचनाएं दिखाएं"</string>
- <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"डिवाइस अनलॉक होने पर ही संवेदनशील कॉन्टेंट दिखाएं"</string>
+ <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"संवेदनशील सूचनाएं डिवाइस अनलॉक होने पर ही दिखाएं"</string>
<string name="lock_screen_notifications_summary_disable" msgid="3388290397947365744">"कोई सूचना न दिखाएं"</string>
<string name="lock_screen_notifications_interstitial_message" msgid="6326229471276829730">"आपको अपनी लॉक स्क्रीन पर क्या दिखाना है?"</string>
<string name="lock_screen_notifications_interstitial_title" msgid="1360388192096354315">"लॉक स्क्रीन"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"यह ऐप्लिकेशन, बेहतर सेटिंग के साथ काम नहीं करता है"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"अन्य सेटिंग"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"इस ऐप्लिकेशन में ज़्यादा सेटिंग उपलब्ध हैं"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"कूलडाउन सेटिंग"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"कूलडाउन सेटिंग का इस्तेमाल करें"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"जब आपको काफ़ी कम समय में कई सूचनाएं मिलती हैं, तो आपका डिवाइस इन सूचनाओं से होने वाली आवाज़ों को कम करेगा और स्क्रीन पर कम पॉप-अप दिखाएगा. कॉल, अलार्म, और अहम बातचीत से जुड़ी सूचनाएं अब भी पहले की तरह ही मिलेंगी. साथ ही, आपको मिली सभी सूचनाएं, नोटिफ़िकेशन शेड में आसानी से मिल जाएंगी."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"वर्क प्रोफ़ाइल पर लागू करें"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"वर्क प्रोफ़ाइल ऐप्लिकेशन पर लागू करें"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"वीआर के साथ काम करने वाली सेवाएं"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"चुने गए ऐप्लिकेशन"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"कोई नहीं"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"सभी"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ऐप्लिकेशन को ओवरराइड करने की मंज़ूरी दें"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ऐप्लिकेशन जो \'परेशान न करें\' मोड को बायपास कर सकते हैं"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"और ऐप्लिकेशन चुनें"</string>
@@ -3784,7 +3801,7 @@
<string name="zen_mode_all_callers" msgid="8104755389401941875">"सभी के कॉल"</string>
<string name="zen_mode_contacts_callers" msgid="5429267704011896833">"संपर्क"</string>
<string name="zen_mode_starred_callers" msgid="1002370699564211178">"स्टार के निशान वाले संपर्क"</string>
- <string name="zen_mode_repeat_callers_list" msgid="181819778783743847">"15 मिनट में दूसरी बार काॅल करने वाले (कॉलर)"</string>
+ <string name="zen_mode_repeat_callers_list" msgid="181819778783743847">"15 मिनट में दूसरी बार काॅल करने वाले"</string>
<!-- no translation found for zen_mode_calls_summary_one (1928015516061784276) -->
<skip />
<string name="zen_mode_calls_summary_two" msgid="6351563496898410742">"<xliff:g id="CALLER_TYPE_0">%1$s</xliff:g> और <xliff:g id="CALLER_TYPE_1">%2$s</xliff:g>"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} तक, सिर्फ़ एक घंटे के लिए अलार्म मोड पर स्विच करें}one{{time} तक, सिर्फ़ # घंटे के लिए अलार्म मोड पर स्विच करें}other{{time} तक, सिर्फ़ # घंटों के लिए अलार्म मोड पर स्विच करें}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"केवल <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> तक के लिए अलार्म को बदलें"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"हमेशा बाधित करें में बदलें"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"चेतावनी"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"बंद करें"</string>
<string name="device_feedback" msgid="5351614458411688608">"इस डिवाइस के बारे में सुझाव भेजें"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"बायां"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"दायां"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"चार्ज करने वाला डिब्बा"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"बैटरी"</string>
<string name="settings_panel_title" msgid="346363079938069215">"सेटिंग पैनल"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"डेस्कटॉप मोड चालू करें"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"दूसरी स्क्रीन पर डेस्कटॉप मोड आज़माने की सुविधा चालू करें"</string>
@@ -4841,23 +4865,23 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"16 केबी पेज साइज़ चालू करें"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"16 केबी पेज साइज़ वाले कर्नेल के ज़रिए चालू करें"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"4 केबी मोड से 16 केबी मोड पर स्विच करें"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"आप 4 केबी कर्नेल पर चल रहे पेज-ऐग्नोस्टिक मोड में हैं. आपको 16 केबी मोड पर स्विच किया जा रहा है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. स्विच करने पर डिवाइस फिर से चालू होगा. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. डिवाइस को वापस प्रोडक्शन मोड पर सेट करने के लिए, आपको फिर से 4 केबी मोड पर स्विच करना होगा और बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फ़ैक्ट्री रीसेट हो जाता है. जब डिवाइस, अपग्रेड किए गए वर्शन में चालू हो जाए, तब \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"आप 4 केबी कर्नेल पर चल रहे पेज-ऐग्नोस्टिक मोड में हैं. आपको 16 केबी मोड पर स्विच किया जा रहा है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. स्विच करने पर डिवाइस फिर से चालू होगा. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. डिवाइस को प्रोडक्शन मोड में वापस लाने के लिए, आपको फिर से 4 केबी मोड पर स्विच करना होगा और बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फ़ैक्ट्री रीसेट हो जाता है. डिवाइस का Android ऑपरेटिंग सिस्टम चालू हो जाने के बाद, \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"16 केबी मोड से 4 केबी मोड पर स्विच करें"</string>
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"आप 16 केबी कर्नेल पर चल रहे पेज-ऐग्नोस्टिक मोड में हैं. आपको 4 केबी मोड पर स्विच किया जा रहा है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक होने के दौरान आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में हो सकती है. इससे डिवाइस फिर से चालू होगा. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, ऐसा हो सकता है कि कुछ ऐप्लिकेशन काम न करें. डिवाइस को प्रोडक्शन मोड में वापस लाने के लिए, आपको बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फ़ैक्ट्री रीसेट हो जाता है. डिवाइस के Android में चालू हो जाने के बाद, \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"कर्नेल को 16 केबी पेज साइज़ के साथ काम करने वाले कर्नेल में अपडेट नहीं किया जा सका."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"बदलाव लागू किया जा रहा है"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"क्या आपको अपना डिवाइस फिर से ext4 में फ़ॉर्मैट करना है? (16 केबी मोड के लिए ज़रूरी है)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"डेवलपर के लिए 16 केबी मोड वाली सेटिंग और टूल का इस्तेमाल करने से पहले, इस डिवाइस के डेटा के हिस्से को ext4 में बदलना होगा. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक होने के दौरान आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में हो सकती है. अगर आपने 16 केबी मोड वाला विकल्प चालू किया है, तो इसके बाद डिवाइस को एक और बार फिर से चालू करना होगा. इस मोड में आ जाने के बाद, डिवाइस को फिर से चालू करके 4 केबी और 16 केबी मोड के बीच स्विच किया जा सकता है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, ऐसा हो सकता है कि कुछ ऐप्लिकेशन काम न करें. डिवाइस को प्रोडक्शन मोड में वापस लाने के लिए, आपको फिर से 4 केबी मोड पर स्विच करना होगा और बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फ़ैक्ट्री रीसेट हो जाता है. डिवाइस के Android में चालू हो जाने के बाद, \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें. डिवाइस को वाइप किया जाएगा और पुष्टि करने के बाद, फ़ाइलसिस्टम ext4 में बदल दिया जाएगा. ऐसा हो जाने के बाद, कृपया फिर से 16 केबी मोड को चालू करें."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"16 केबी मोड का इस्तेमाल करने से पहले, इस डिवाइस के डेटा पार्टिशन को ext4 में बदलना होगा. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. अगर आपने 16 केबी मोड चालू किया है, तो इसके बाद डिवाइस को एक और बार चालू करना होगा. इस मोड में आ जाने के बाद, डिवाइस को फिर से चालू करके 4 केबी और 16 केबी मोड के बीच स्विच किया जा सकता है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. डिवाइस को प्रोडक्शन मोड में वापस लाने के लिए, आपको फिर से 4 केबी मोड पर स्विच करना होगा और बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फ़ैक्ट्री रीसेट हो जाता है. डिवाइस का Android ऑपरेटिंग सिस्टम चालू हो जाने के बाद, \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें. इससे डिवाइस का डेटा वाइप हो जाएगा और पुष्टि करने के बाद, फ़ाइलसिस्टम ext4 में बदल दिया जाएगा. इस प्रक्रिया के बाद, कृपया फिर से 16 केबी मोड को चालू करें."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"डिवाइस का सारा डेटा हमेशा के लिए मिटाएं"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"डेटा के हिस्से को ext4 में फिर से फ़ॉर्मैट नहीं किया जा सका, न ही इसे वाइप किया जा सका."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"16 केबी मोड के लिए, बूटलोडर अनलॉक करना ज़रूरी है"</string>
- <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"16 केबी मोड इस्तेमाल करने के लिए, इस डिवाइस के बूटलोडर को अनलॉक करना ज़रूरी है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. अगर 16 केबी मोड चालू किया जाता है, तो उपयोगकर्ता का पूरा डेटा और सभी सेटिंग वाइप हो जाती हैं. बूटलोडर अनलॉक करने के बाद, 16 केबी मोड चालू करने के लिए डिवाइस को दो बार फिर से चालू करने की ज़रूरत होती है. इस मोड के चालू हो जाने के बाद, डिवाइस को फिर से चालू करके 4 केबी और 16 केबी मोड के बीच स्विच किया जा सकता है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. डिवाइस को वापस प्रोडक्शन मोड पर सेट करने के लिए, आपको 4 केबी मोड पर स्विच करना होगा. इसके बाद, ओईएम/बूटलोडर लॉक करना होगा. इससे डिवाइस फ़ैक्ट्री रीसेट हो जाएगा. कृपया बूटलोडर अनलॉक करें और फिर से कोशिश करें. बूटलोडर अनलॉक करने के निर्देश यहां देखे जा सकते हैं: <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
+ <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"16 केबी मोड इस्तेमाल करने के लिए, इस डिवाइस के बूटलोडर को अनलॉक करना ज़रूरी है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. अगर 16 केबी मोड चालू किया जाता है, तो उपयोगकर्ता का पूरा डेटा और सभी सेटिंग वाइप हो जाती हैं. बूटलोडर अनलॉक करने के बाद, 16 केबी मोड चालू करने के लिए डिवाइस को दो बार फिर से चालू करने की ज़रूरत होती है. इस मोड के चालू हो जाने के बाद, डिवाइस को फिर से चालू करके 4 केबी और 16 केबी मोड के बीच स्विच किया जा सकता है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. डिवाइस को प्रोडक्शन मोड में वापस लाने के लिए, आपको 4 केबी मोड पर स्विच करना होगा. इसके बाद, ओईएम/बूटलोडर लॉक करना होगा. इससे डिवाइस फ़ैक्ट्री रीसेट हो जाएगा. कृपया बूटलोडर अनलॉक करें और फिर से कोशिश करें. बूटलोडर अनलॉक करने के निर्देश यहां देखे जा सकते हैं: <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4 केबी पेज-एग्नोस्टिक मोड का इस्तेमाल किया जा रहा है"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"आप 4 केबी पेज साइज़ के साथ काम करने वाले मोड (पेज-ऐग्नोस्टिक मोड) में है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. इसे वापस प्रोडक्शन मोड पर सेट करने के लिए, आपको डिवाइस का बूटलोडर लॉक करना होगा. ज़्यादा पढ़ने के लिए टैप करें."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"आप पेज-ऐग्नोस्टिक मोड के 4 केबी मोड में हैं. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक होने के दौरान आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में हो सकती है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, ऐसा हो सकता है कि कुछ ऐप्लिकेशन काम न करें. प्रोडक्शन मोड में वापस जाने के लिए, आपको डिवाइस का बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फिर से फ़ैक्ट्री रीसेट होगा और इसकी प्रोडक्शन सेटिंग पहले जैसी हो जाएंगी. डिवाइस के Android में चालू हो जाने के बाद, \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें. अगर डिवाइस Android में चालू नहीं होता है या ठीक से काम नहीं करता है, तो <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> पर मौजूद नई फ़ैक्ट्री इमेज की मदद से डिवाइस को फिर से फ़्लैश करें. इसके बाद, \'डिवाइस वाइप करें\', \'बूटलोडर को लॉक करें\', और \'सभी हिस्से ज़बरदस्ती फ़्लैश करें\' को चुनें."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"आप 4 केबी पेज साइज़ के साथ काम करने वाले मोड (पेज-ऐग्नोस्टिक मोड) में है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. प्रोडक्शन मोड में वापस जाने के लिए, आपको डिवाइस का बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फिर से फ़ैक्ट्री रीसेट हो जाएगा और इसकी प्रोडक्शन सेटिंग पहले जैसी हो जाएंगी. डिवाइस का Android ऑपरेटिंग सिस्टम चालू हो जाने के बाद, \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें. अगर Android ऑपरेटिंग सिस्टम चालू नहीं होता है या ठीक से काम नहीं करता है, तो <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> पर मौजूद नई फ़ैक्ट्री इमेज की मदद से डिवाइस को फिर से फ़्लैश करें या <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> का इस्तेमाल करें. इसके बाद, \'डिवाइस वाइप करें\', \'बूटलोडर को लॉक करें\', और \'सभी हिस्सों को ज़बरदस्ती फ़्लैश करें\' को चुनें."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16 केबी पेज-ऐग्नोस्टिक मोड का इस्तेमाल किया जा रहा है"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"आप 16 केबी पेज साइज़ के साथ काम करने वाले मोड (पेज-ऐग्नोस्टिक मोड) में है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. इसे वापस प्रोडक्शन मोड पर सेट करने के लिए, आपको 4 केबी मोड पर फिर से स्विच करना होगा. इसके बाद, डिवाइस का बूटलोडर लॉक करना होगा. ज़्यादा पढ़ने के लिए टैप करें."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"आप 16 केबी पेज साइज़ के साथ काम करने वाले मोड (पेज-ऐग्नोस्टिक मोड) में है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. इसे वापस प्रोडक्शन मोड पर सेट करने के लिए, आपको 4 केबी मोड पर फिर से स्विच करना होगा. इसके बाद, डिवाइस का बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फिर से फ़ैक्ट्री रीसेट हो जाएगा और इसकी प्रोडक्शन सेटिंग पहले जैसी हो जाएंगी. जब डिवाइस, अपग्रेड किए गए वर्शन में चालू हो जाए, तब \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें. अगर डिवाइस अपग्रेड किए गए वर्शन में चालू नहीं होता है या ठीक से काम नहीं करता है, तो <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> पर मौजूद नई फ़ैक्ट्री इमेज की मदद से डिवाइस को फिर से फ़्लैश करें या <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> का इस्तेमाल करें. इसके बाद, \'डिवाइस वाइप करें\', \'बूटलोडर को लॉक करें\', और \'सभी हिस्सों को ज़बरदस्ती फ़्लैश करें\' को चुनें."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"आप 16 केबी पेज साइज़ के साथ काम करने वाले मोड (पेज-ऐग्नोस्टिक मोड) में है. इस मोड में सॉफ़्टवेयर के रखरखाव की गारंटी नहीं है. साथ ही, बूटलोडर अनलॉक रहने पर आपके फ़ोन में सेव डेटा की सुरक्षा खतरे में पड़ सकती है. इन मोड में कुछ सुविधाएं बंद हो जाएंगी. इसलिए, हो सकता है कि कुछ ऐप्लिकेशन काम न करें. इसे प्रोडक्शन मोड में वापस लाने के लिए, आपको 4 केबी मोड पर फिर से स्विच करना होगा. इसके बाद, डिवाइस का बूटलोडर लॉक करना होगा. ऐसा करने पर, डिवाइस फिर से फ़ैक्ट्री रीसेट हो जाएगा और इसकी प्रोडक्शन सेटिंग पहले जैसी हो जाएंगी. डिवाइस का Android ऑपरेटिंग सिस्टम चालू हो जाने के बाद, \'डेवलपर के लिए सेटिंग और टूल\' में जाकर ओईएम से अनलॉक करने की सेटिंग बंद करें. अगर Android ऑपरेटिंग सिस्टम चालू नहीं होता या ठीक से काम नहीं करता है, तो <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> पर मौजूद नई फ़ैक्ट्री इमेज की मदद से डिवाइस को फिर से फ़्लैश करें या <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> का इस्तेमाल करें. इसके बाद, \'डिवाइस वाइप करें\', \'बूटलोडर को लॉक करें\', और \'सभी हिस्सों को ज़बरदस्ती फ़्लैश करें\' को चुनें."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 केबी पेज-एग्नोस्टिक मोड"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"ज़्यादा पढ़ें"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"गड़बड़ी की रिपोर्ट हैंडल करने वाला"</string>
@@ -4908,8 +4932,8 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"सेटिंग ऐप स्क्रीन पर उन ऐप्लिकेशन को ओवरले करने की अनुमति दें जो दूसरे ऐप्लिकेशन के ऊपर दिख सकते हैं"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"मॉक मॉडम की सेवा का इस्तेमाल करने की अनुमति दें"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"इंस्ट्रुमेंटेशन टेस्ट के लिए, इस डिवाइस पर मॉक मॉडम सेवा का इस्तेमाल करने की अनुमति दें. फ़ोन के सामान्य इस्तेमाल के दौरान, इस सेवा को चालू न करें"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"स्क्रीन शेयर करने की सुरक्षा सुविधाएं बंद करें"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"आने वाले समय में स्क्रीन शेयर करने के दौरान, संवेदनशील ऐप्लिकेशन पर मौजूद कॉन्टेंट के लिए सिस्टम की सुरक्षा सुविधाएं बंद करें"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"स्क्रीन शेयर से जुड़ी सुरक्षा सुविधाएं बंद करें"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"अगली बार से स्क्रीन शेयर करने पर, ऐप्लिकेशन में मौजूद संवेदनशील कॉन्टेंट को दिखाने से रोकने वाली सुविधाएं बंद करें"</string>
<string name="media_controls_title" msgid="403271085636252597">"मीडिया"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"मीडिया प्लेयर को पिन करें"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"मीडिया प्लेयर क्विक सेटिंग में खुला रहता है, ताकि आप मीडिया को तुरंत वहीं से शुरू कर सकें जहां आपने इसे छोड़ा था"</string>
@@ -4963,7 +4987,7 @@
<string name="mobile_data_temp_using" msgid="5211002380149434155">"कुछ समय के लिए <xliff:g id="SUBNAME">%1$s</xliff:g> का इंटरनेट इस्तेमाल किया जा रहा है"</string>
<string name="mobile_data_no_connection" msgid="905897142426974030">"इंटरनेट कनेक्शन नहीं है"</string>
<string name="mobile_data_off_summary" msgid="1884248776904165539">"मोबाइल डेटा अपने-आप कनेक्ट नहीं होगा"</string>
- <string name="mobile_data_disable_title" msgid="8438714772256088913">"क्या आप मोबाइल डेटा बंद करना चाहते हैं?"</string>
+ <string name="mobile_data_disable_title" msgid="8438714772256088913">"क्या आपको मोबाइल डेटा बंद करना है?"</string>
<string name="mobile_data_disable_message" msgid="7829414836454769970">"आप <xliff:g id="CARRIER">%s</xliff:g> के डेटा या इंटरनेट का इस्तेमाल नहीं कर पाएंगे. इंटरनेट सिर्फ़ वाई-फ़ाई से चलेगा."</string>
<string name="mobile_data_disable_message_default_carrier" msgid="4449469407705838612">"आपको मोबाइल और इंटरनेट सेवा देने वाली कंपनी"</string>
<string name="not_allowed_by_ent" msgid="1958611623122304411">"आपके संगठन ने इसकी अनुमति नहीं दी है"</string>
diff --git a/res/values-hr/arrays.xml b/res/values-hr/arrays.xml
index a5e61bc..c92a5e5 100644
--- a/res/values-hr/arrays.xml
+++ b/res/values-hr/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 4efadfb..d275f4f 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Prekinuti vezu uređaja?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Uparite novi uređaj"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatski uključi ponovno sutra"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Upari desno uho"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Upari lijevo uho"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Uparite drugo uho"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Upari lijevo uho"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Postavke slušnih pomagala"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Prečac, kompatibilnost sa slušnim pomagalima"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Unaprijed definirane postavke"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Unaprijed definirana postavka"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Ažuriranje unaprijed definiranih postavki nije uspjelo"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audioizlaz"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"O audioizlazu"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Odustani"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ne, hvala"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ne sad"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Prihvaćam"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Više"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Otključavanje licem"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Ne zaboravite"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Otključajte telefon ili odobrite kupnje otiskom prsta.\n\nNapomena: ovaj uređaj ne možete otključati otiskom prsta. Za više informacija obratite se administratoru organizacije."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Odustani"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ne, hvala"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ne sad"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Prihvaćam"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Želite li preskočiti otisak prsta?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Postavljanje otiska prsta traje samo minutu do dvije. Ako to preskočite, otisak prsta možete dodati kasnije u postavkama."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Svaki put kad se uređaj zaključa"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min nakon automatskog isključivanja"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Samo nakon ponovnog pokretanja uređaja"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Sakrivanje privatnog prostora"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Sakrij privatni prostor kada je zaključan"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Kako drugi ne bi znali da imate privatni prostor na uređaju, možete ga sakriti s popisa aplikacija"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Postavite"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privatni prostor"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Sakrijte ili zaključajte privatne aplikacije u zasebnom prostoru. Koristite namjenski Google račun radi dodatne sigurnosti."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Postavite privatni prostor"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Odaberite Google račun za svoj prostor"</b>\n"Upotrebom namjenskog računa možete spriječiti prikazivanje sinkroniziranih datoteka, fotografija i e-poruka izvan vašeg prostora"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Kako to funkcionira"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Izradite Google račun za svoj prostor"</b>\n"Upotrebom namjenskog računa možete spriječiti prikazivanje sinkroniziranih datoteka, fotografija i e-poruka izvan vašeg prostora"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Postavite zaključavanje"</b>\n"Zaključajte svoj prostor kako ga druge osobe ne bi mogle otvoriti"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instalirajte aplikacije"</b>\n"Vaš privatni prostor ima vlastitu Trgovinu Play kako biste mogli jednostavno instalirati aplikacije."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Aplikacije u vašem privatnom prostoru neće se prikazivati u Upravitelju dopuštenja, na nadzornoj ploči za privatnost i u drugim postavkama kada je privatni prostor zaključan.\n\nVaš se privatni prostor ne može vratiti na novi uređaj. Trebat ćete postaviti drugi privatni prostor ako ga želite koristiti na drugom uređaju.\n\nSvatko tko poveže vaš uređaj s računalom ili instalira zlonamjerne aplikacije na vaš uređaj moći će pristupiti vašem privatnom prostoru."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instalirajte aplikacije"</b>\n"Instalirajte aplikacije koje želite da ostanu privatne u vašem prostoru"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Napomena"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikacije se zaustavljaju kad zaključate prostor"</b>\n"Kad zaključate prostor, aplikacije u vašem prostoru zaustavljaju se i nećete primati obavijesti od njih"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Saznajte više o privatnom prostoru"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"To će potrajati nekoliko trenutaka"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"U tijeku je postavljanje privatnog prostora…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Možete postaviti novo zaključavanje samo za privatni prostor ili koristiti postojeće zaključavanje za otključavanje uređaja"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Koristi zaključavanje zaslona"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Odaberite novo zaključavanje"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Samo trenutak…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Samo tren…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Sve je spremno!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Da biste pristupili privatnom prostoru, otvorite popis aplikacija, a zatim se pomaknite prema dolje"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Gotovo"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Postavite PIN za privatni prostor"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Postavljanje zaporke za privatni prostor"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Postavljanje uzorka za privatni prostor"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Izradite Google račun kako biste zaštitili privatnost svojih podataka"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na sljedećem zaslonu možete se prijaviti na račun koji ćete upotrebljavati za svoj privatni prostor"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Izradite namjenski račun kako biste spriječili prikazivanje podataka izvan privatnog prostora, kao što je sljedeće:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinkronizirane fotografije, datoteke, e-poruke, kontakti, događaji iz kalendara i drugo"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Povijest preuzimanja aplikacija i preporuke"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Povijest pregledavanja, oznake i spremljene zaporke"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Predloženi sadržaj povezan s vašom aktivnošću u aplikacijama privatnog prostora"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Shvaćam"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Zaključavanje"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Sakrivanje"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Maksimalni broj otisaka prstiju koji možete dodati: <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -665,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Odaberite zaključavanje zaslona"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Odaberite novo zaključavanje zaslona"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Zaključavanje za poslovne aplikacije"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Novo zaključ. poslov. prof."</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Odaberite novo zaključavanje poslovnog profila"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Radi dodatne sigurnosti, postavite dodatni način zaključavanja zaslona"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Odaberite dodatni način zaključavanja zaslona"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Ako zaboravite radnju za zaključavanje zaslona, IT administrator ga ne može poništiti."</string>
@@ -796,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{Mora sadržavati najmanje 1 znak koji nije slovo}one{Mora sadržavati najmanje # znak koji nije slovo}few{Mora sadržavati najmanje # znaka koja nisu slova}other{Mora sadržavati najmanje # znakova koji nisu slova}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{Mora sadržavati najmanje 1 znak koji nije znamenka}one{Mora sadržavati najmanje # znak koji nije znamenka}few{Mora sadržavati najmanje # znaka koja nisu znamenke}other{Mora sadržavati najmanje # znakova koji nisu znamenke}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"Administrator uređaja ne dopušta upotrebu nedavne zaporke"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Uzastopno rastući ili padajući slijed brojeva ili ponavljanje brojeva nije dopušteno"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Rastući, padajući ili ponavljajući slijed brojeva nije dopušten"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"Potvrdi"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"Izbriši"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"Zaključavanje zaslona već je promijenjeno. Pokušajte ponovo s novim zaključavanjem zaslona."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certifikat sustava"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Prikvačivanje certifikata"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Podaci o mreži"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ova mreža koristi stariji sigurnosni protokol naziva WEP, koji je manje siguran"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska podmreže"</string>
<string name="server_name_title" msgid="7257095185810299066">"Naziv poslužitelja"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Vrsta"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC adresa uređaja za Wi-Fi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth adresa"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serijski broj"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Vrijeme aktivnosti"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Vrijeme aktivnosti"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Datum proizvodnje"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum prve upotrebe"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Broj ciklusa"</string>
@@ -1512,7 +1509,7 @@
<string name="reset_esim_error_title" msgid="6516110227665862295">"Brisanje eSIM-ova nije moguće"</string>
<string name="reset_esim_error_msg" msgid="8459527827897797168">"Došlo je do pogreške i vaši se eSIM-ovi nisu izbrisali.\n\nPonovno pokrenite uređaj i pokušajte ponovno."</string>
<string name="reset_private_space_delete_title" msgid="2555885198282572990">"Brisanje privatnog prostora"</string>
- <string name="reset_private_space_delete_dialog" msgid="2325106559507364385">"Ako na svom uređaju imate privatni prostor, on će se trajno izbrisati, a Google račun dodan u privatni prostor će se ukloniti. \n\nSve aplikacije u vašem prostoru i njihovi podaci također će se trajno izbrisati iz "<b>"interne pohrane"</b>" vašeg telefona."</string>
+ <string name="reset_private_space_delete_dialog" msgid="2325106559507364385">"Ako na svojem uređaju imate privatni prostor, on će se trajno izbrisati, a Google račun dodan u privatni prostor će se ukloniti. \n\nSve aplikacije u vašem prostoru i njihovi podaci također će se trajno izbrisati iz "<b>"interne pohrane"</b>" telefona."</string>
<string name="main_clear_title" msgid="277664302144837723">"Brisanje svih podataka (vraćanje na tvorničke postavke)"</string>
<string name="main_clear_short_title" msgid="4752094765533020696">"Izbriši sve podatke"</string>
<string name="main_clear_desc_also_erases_external" msgid="3687911419628956693"><li>"glazbu"</li>\n<li>"fotografije"</li>\n<li>"ostale korisničke podatke."</li></string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Dodir u desnom donjem kutu"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Za više opcija dodirnite desni donji kut dodirne podloge"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Brzina pokazivača"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Stil ispunjavanja pokazivača"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Promjena ispunj. pokaz. na crno"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Promjena ispunj. pokaz. na zeleno"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Promjena ispunj. pokaz. na žuto"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Promjena ispunj. pokaz. na ružič."</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Promjena ispunj. pokaz. na plavo"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Učenje pokreta za dodirnu podlogu"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"dodirna površina, miš, pokazivač, pomicanje, prijeći prstom, kliknuti desnom tipkom, kliknuti, pokazivači"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"kliknuti desnom tipkom, dodirnuti"</string>
@@ -2029,7 +2032,7 @@
<string name="display_category_title" msgid="6638191682294461408">"Zaslon"</string>
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"Boja i pokret"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Kontrast boja"</string>
- <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Veći kontrast omogućuje da se tekst, gumbi i ikone bolje istaknu. Odaberite kontrast koji vam se čini najbolji."</string>
+ <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Veći kontrast omogućuje da se tekst, gumbi i ikone bolje istaknu. Odaberite kontrast koji vam najbolje odgovara."</string>
<string name="color_contrast_note" msgid="7592686603372566198">"Neke aplikacije možda ne podržavaju sve postavke kontrasta boja i teksta"</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"Pregled"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
@@ -2321,7 +2324,7 @@
<string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"Na ovoj stranici možete upariti slušna pomagala s ASHA protokolom i aplikacijom LE Audio. Provjerite je li vaše slušno pomagalo uključeno i spremno za uparivanje."</string>
<string name="accessibility_found_hearing_devices" msgid="637407580358386553">"Dostupna slušna pomagala"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"Ne vidite svoje slušno pomagalo?"</string>
- <string name="accessibility_list_all_devices_title" msgid="161495343959211216">"Pregled više uređaja"</string>
+ <string name="accessibility_list_all_devices_title" msgid="161495343959211216">"Pregledajte više uređaja"</string>
<string name="accessibility_audio_adjustment_title" msgid="1332113739136802997">"Prilagodba zvuka"</string>
<string name="accessibility_toggle_audio_description_preference_title" msgid="8916473886256061220">"Audioopis"</string>
<string name="accessibility_audio_description_summary" msgid="2554789094873781056">"Poslušajte opis događaja na zaslonu u podržanim filmovima i emisijama"</string>
@@ -2401,7 +2404,7 @@
<string name="accessibility_dialog_button_deny" msgid="2037249860078259284">"Odbij"</string>
<string name="accessibility_dialog_button_stop" msgid="7584815613743292151">"Isključi"</string>
<string name="accessibility_dialog_button_cancel" msgid="8625997437316659966">"Ostavi uključeno"</string>
- <string name="disable_service_title" msgid="8178020230162342801">"Želite li isključiti uslugu mobilnog operatera <xliff:g id="SERVICE">%1$s</xliff:g>?"</string>
+ <string name="disable_service_title" msgid="8178020230162342801">"Želite li isključiti uslugu <xliff:g id="SERVICE">%1$s</xliff:g>?"</string>
<string name="accessibility_no_services_installed" msgid="3725569493860028593">"Nema instaliranih usluga"</string>
<string name="accessibility_no_service_selected" msgid="1310596127128379897">"Nije odabrana nijedna usluga"</string>
<string name="accessibility_service_default_description" msgid="7801435825448138526">"Nije dan opis."</string>
@@ -2773,7 +2776,7 @@
<string name="select_device_admin_msg" msgid="5501360309040114486">"Aplikacije administratora uređaja"</string>
<string name="no_device_admins" msgid="8888779888103079854">"Nema dostupnih aplikacija administratora uređaja"</string>
<string name="no_trust_agents" msgid="8659098725864191600">"Agenti za pouzdanost nisu dostupni"</string>
- <string name="add_device_admin_msg" msgid="7730006568970042119">"Aktivirati apl. administratora uređaja?"</string>
+ <string name="add_device_admin_msg" msgid="7730006568970042119">"Aktivirati administratorsku aplikaciju uređaja?"</string>
<string name="add_device_admin" msgid="6252128813507932519">"Aktiviraj tu administratorsku aplikaciju uređaja"</string>
<string name="device_admin_add_title" msgid="6087481040932322289">"Administrator uređaja"</string>
<string name="device_admin_warning" msgid="1889160106787280321">"Aktiviranjem ove administratorske aplikacije dopustit ćete aplikaciji <xliff:g id="APP_NAME">%1$s</xliff:g> izvođenje sljedećih radnji:"</string>
@@ -2845,7 +2848,7 @@
<string name="data_usage_label_foreground" msgid="8782117644558473624">"Prednji plan"</string>
<string name="data_usage_label_background" msgid="8862781660427421859">"Pozadina"</string>
<string name="data_usage_app_restricted" msgid="312065316274378518">"ograničeno"</string>
- <string name="data_usage_disable_mobile" msgid="6183809500102606801">"Isključiti mobilne podatke?"</string>
+ <string name="data_usage_disable_mobile" msgid="6183809500102606801">"Želite li isključiti mobilne podatke?"</string>
<string name="data_usage_disable_mobile_limit" msgid="1370147078938479538">"Ograničenje za mobilne podatke"</string>
<string name="data_usage_disable_4g_limit" msgid="3084868504051520840">"Postavi ograničenje za 4G"</string>
<string name="data_usage_disable_3g_limit" msgid="8867555130268898044">"Postavi ograničenje za 2G-3G"</string>
@@ -2990,7 +2993,7 @@
<string name="user_cannot_add_accounts_message" msgid="2351326078338805337">"Ograničeni profili ne mogu dodavati račune"</string>
<string name="user_remove_user_menu" msgid="2183714948094429367">"<xliff:g id="USER_NAME">%1$s</xliff:g>: brisanje s uređaja"</string>
<string name="user_lockscreen_settings" msgid="4596612658981942092">"Postavke zaključavanja zaslona"</string>
- <string name="user_add_on_lockscreen_menu" msgid="2539059062034644966">"Dodaj korisnika sa zaključanog zaslona"</string>
+ <string name="user_add_on_lockscreen_menu" msgid="2539059062034644966">"Dodaj korisnike sa zaključanog zaslona"</string>
<string name="switch_to_dock_user_when_docked" msgid="2324395443311905635">"Na priključnoj stanici prijeđi na administratora"</string>
<string name="user_confirm_remove_self_title" msgid="926265330805361832">"Izbrisati sebe?"</string>
<string name="user_confirm_remove_title" msgid="3626559103278006002">"Želite li izbrisati ovog korisnika?"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nijedan}=1{Postavljen je jedan raspored}one{Postavljen je # raspored}few{Postavljena su # rasporeda}other{Postavljeno je # rasporeda}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ne uznemiravaj"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritetni načini"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Primajte obavijesti samo od važnih osoba i aplikacija"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ograničavanje prekida"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Uključite opciju Ne uznemiravaj."</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Uredi"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Rasporedi"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Raspored"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Uključi automatski"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Dodajte kalendar"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Upotreba kalendara"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Raspored"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Postavite raspored"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Raspored"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> h <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Raspored"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Utišaj telefon u određeno vrijeme"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Postavite pravila za način Ne uznemiravaj"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ta aplikacija ne podržava napredne postavke"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Više postavki"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Više postavki dostupno je unutar aplikacije"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Stišavanje obavijesti"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Upotreba stišavanja obavijesti"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kad u kratkom vremenskom razdoblju primite velik broj obavijesti, uređaj će minimizirati zvučna ometanja i skočne prozore na zaslonu. Za pozive, alarme i prioritetne razgovore upozorenja će funkcionirati normalno, a sve isporučene obavijesti jednostavno ćete pronaći na zaslonu obavijesti."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Primijeni na poslovne profile"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Primijeni na aplikacije poslovnog profila"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Pomoćne usluge za virtualnu stvarnost"</string>
@@ -3742,7 +3749,7 @@
<string name="zen_mode_none_calls" msgid="2047166006414016327">"Nitko"</string>
<string name="zen_mode_none_messages" msgid="1386626352943268342">"Nitko"</string>
<string name="zen_mode_alarms" msgid="5989343060100771099">"Alarmi"</string>
- <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Alarmi odbrojavanja, sata, sigurnosnih sustava i drugih aplikacija"</string>
+ <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Obavijesti tajmera, alarma, sigurnosnih sustava i drugih aplikacija"</string>
<string name="zen_mode_alarms_list" msgid="334782233067365405">"alarmi"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"Alarmi"</string>
<string name="zen_mode_media" msgid="885017672250984735">"Zvukovi medija"</string>
@@ -3750,7 +3757,7 @@
<string name="zen_mode_media_list" msgid="2006413476596092020">"mediji"</string>
<string name="zen_mode_media_list_first" msgid="7824427062528618442">"Mediji"</string>
<string name="zen_mode_system" msgid="7301665021634204942">"Zvukovi dodirivanja"</string>
- <string name="zen_mode_system_summary" msgid="7225581762792177522">"Zvukovi tipkovnice i drugih gumba"</string>
+ <string name="zen_mode_system_summary" msgid="7225581762792177522">"Zvukovi tipkovnice i drugih tipki"</string>
<string name="zen_mode_system_list" msgid="2256218792042306434">"zvukovi dodirivanja"</string>
<string name="zen_mode_system_list_first" msgid="8590078626001067855">"Zvukovi dodirivanja"</string>
<string name="zen_mode_reminders" msgid="1970224691551417906">"Podsjetnici"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Odabrane aplikacije"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nijedna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Sve"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Dopusti aplikacijama da nadjačaju"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikacije koje mogu prekidati"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Odaberite više aplikacija"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Promijeni na opciju Samo alarmi na jedan sat do {time}}one{Promijeni na opciju Samo alarmi na # sat do {time}}few{Promijeni na opciju Samo alarmi na # sata do {time}}other{Promijeni na opciju Samo alarmi na # sati do {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Promijeni na \"Samo alarmi\" do <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Promijeni na \"Uvijek prekidaj\""</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Promijeni naziv"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Promijeni ikonu"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Promijenite ikonu"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Upozorenje"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Zatvori"</string>
<string name="device_feedback" msgid="5351614458411688608">"Pošalji povr. informacije o uređaju"</string>
@@ -4080,7 +4092,7 @@
<string name="condition_expand_show" msgid="1501084007540953213">"Prikaži"</string>
<string name="condition_expand_hide" msgid="8347564076209121058">"Sakrij"</string>
<string name="condition_hotspot_title" msgid="7903918338790641071">"Žarišna je točka aktivna"</string>
- <string name="condition_airplane_title" msgid="5847967403687381705">"Način rada u zrakoplovu uklj."</string>
+ <string name="condition_airplane_title" msgid="5847967403687381705">"Uključen je način rada u zrakoplovu"</string>
<string name="condition_airplane_summary" msgid="1964500689287879888">"Mreže nisu dostupne"</string>
<string name="condition_zen_title" msgid="7674761111934567490">"Način Ne uznemiravaj uključen"</string>
<string name="condition_zen_summary_phone_muted" msgid="6516753722927681820">"Na telefonu je isključen zvuk"</string>
@@ -4155,7 +4167,7 @@
<string name="no_carrier_update_now_text" msgid="7898004907837200752">"Upravo je ažurirano"</string>
<string name="launch_wifi_text" msgid="976421974332512894">"Prikaz pojedinosti"</string>
<string name="data_saver_title" msgid="2593804270788863815">"Štednja podatkovnog prometa"</string>
- <string name="unrestricted_data_saver" msgid="5913547065342097274">"Paket mobilnih podataka bez ograničenja brzine prijenosa"</string>
+ <string name="unrestricted_data_saver" msgid="5913547065342097274">"Neograničena upotreba mobilnih podataka"</string>
<string name="restrict_background_blocklisted" msgid="2308345280442438232">"Pozadinski su podaci isključeni"</string>
<string name="data_saver_on" msgid="7848893946018448793">"Uključeno"</string>
<string name="data_saver_off" msgid="5891210864117269045">"Isključeno"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Lijevo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Desni"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Futrola"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Baterija"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Ploča postavki"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Nametni način rada na računalu"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Nameće eksperimentalni stolni način rada na sekundarnim zaslonima"</string>
@@ -4846,23 +4859,23 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"Pokreni uz veličinu od 16 KB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Pokreni uređaj uz jezgru koja podržava 16 KB"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Prebacivanje iz načina od 4 KB u način od 16 KB"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Aktivan je način koji ne ovisi o veličini stranice koji pokreće 4KB jezgra, a prebacujete se na način od 16 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Time će se uređaj ponovno pokrenuti. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete se vratiti na način od 4 KB i zaključati početni program za pokretanje, čime će se uređaj vratiti na tvorničke postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Aktivan je način koji ne ovisi o veličini stranice koji pokreće 4KB jezgra, a prebacujete se na način od 16 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Time će se uređaj ponovno pokrenuti. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete se vratiti na način od 4 KB i zaključati pokretač operativnog sustava, čime će se uređaj vratiti na tvorničke postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Prebacivanje iz načina od 16 KB u način od 4 KB"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Aktivan je način koji ne ovisi o veličini stranice koji pokreće jezgra koja koristi veličinu od 16 KB, a prebacujete se na način od 4 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Time će se uređaj ponovno pokrenuti. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete zatim zaključati početni program za pokretanje, čime će se uređaj vratiti na tvorničke postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere."</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Aktivan je način koji ne ovisi o veličini stranice koji pokreće jezgra koja koristi veličinu od 16 KB, a prebacujete se na način od 4 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Time će se uređaj ponovno pokrenuti. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete zatim zaključati pokretač operativnog sustava, čime će se uređaj vratiti na tvorničke postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Ažuriranje jezgre na jezgru kompatibilnu sa stranicama od 16 KB nije uspjelo."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Primjena promjene"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"Želite li formatirati uređaj u ext4? (obavezno za način od 16 KB)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Podatkovna particija ovog uređaja treba se konvertirati u ext4 prije upotrebe opcije za razvojne programere od 16 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Za aktiviranje opcije od 16 KB bit će potrebno još jedno ponovno pokretanje nakon konvertiranja podatkovne particije uređaja. Nakon što prijeđete na ovaj način, možete se prebacivati između načina od 4 KB i 16 KB uz jedno ponovno pokretanje. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete se vratiti na način od 4 KB, a zatim zaključati početni program za pokretanje, čime će se uređaj vratiti na tvorničke postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere. Podaci s uređaja će se izbrisati, a nakon potvrde datotečni sustav promijenit će se u ext4. Nakon što se to dovrši, vratite se da biste ponovno omogućili način od 16 KB."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Podatkovna particija ovog uređaja treba se konvertirati u ext4 prije upotrebe opcije za razvojne programere od 16 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Za aktiviranje opcije od 16 KB bit će potrebno još jedno ponovno pokretanje nakon konvertiranja podatkovne particije uređaja. Nakon što prijeđete na ovaj način, možete se prebacivati između načina od 4 KB i 16 KB uz jedno ponovno pokretanje. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete se vratiti na način od 4 KB, a zatim zaključati pokretač operativnog sustava, čime će se uređaj vratiti na tvorničke postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere. Podaci s uređaja će se izbrisati, a nakon potvrde datotečni sustav promijenit će se u ext4. Nakon što se to dovrši, vratite se da biste ponovno omogućili način od 16 KB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Izbriši sve podatke"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Formatiranje i čišćenje podatkovne particije u ext4 nije uspjelo."</string>
- <string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Za način od 16 KB potrebno je otključati početni program za pokretanje"</string>
- <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Ovaj uređaj mora imati otključan početni program za pokretanje prije upotrebe opcije za razvojne programere od 16 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Svi korisnički podaci i postavke izbrisat će se nakon aktiviranja načina od 16 KB. Nakon što se početni program za pokretanje otključa, za aktiviranje opcije od 16 KB bit će potrebno dva puta pokrenuti ponovno pokretanje. Nakon što prijeđete na ovaj način, možete se prebacivati između načina od 4 KB i 16 KB uz jedno ponovno pokretanje. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete se vratiti na način od 4 KB, a zatim zaključati OEM/početni program za pokretanje (čime će se uređaj vratiti na tvorničke postavke). Otključajte početni program za pokretanje i pokušajte ponovno. Upute kako to učiniti možete pronaći na web-lokaciji <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
+ <string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Za način od 16 KB potrebno je otključati pokretač operativnog sustava"</string>
+ <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Ovaj uređaj mora imati otključan pokretač operativnog sustava prije upotrebe opcije za razvojne programere od 16 KB. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Svi korisnički podaci i postavke izbrisat će se nakon aktiviranja načina od 16 KB. Nakon što se pokretač operativnog sustava otključa, za aktiviranje opcije od 16 KB bit će potrebno dva puta pokrenuti ponovno pokretanje. Nakon što prijeđete na ovaj način, možete se prebacivati između načina od 4 KB i 16 KB uz jedno ponovno pokretanje. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste uređaj vratili na produkcijski način rada, trebat ćete se vratiti na način od 4 KB, a zatim zaključati OEM/pokretač operativnog sustava (čime će se uređaj vratiti na tvorničke postavke). Otključajte pokretač operativnog sustava i pokušajte ponovno. Upute kako to učiniti možete pronaći na web-lokaciji <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Upotreba načina od 4 KB koji ne ovisi o veličini stranice"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Aktivan je način od 4 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste ponovno ušli u produkcijski način rada, morate zaključati početni program za pokretanje uređaja. Dodirnite da biste pročitali više."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Aktivan je način od 4 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste ponovno ušli u produkcijski način rada, morate zaključati početni program za pokretanje uređaja. To će ponovno vratiti uređaj na tvorničke postavke i vratiti ga na produkcijske postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere. Ako uređaj ne uspije pokrenuti Android ili ako nije stabilan, ponovno instalirajte sliku sustava na uređaju s najnovijim tvorničkim verzijama firmwarea s web-lokacije <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ili upotrijebite web-lokaciju <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>, a zatim odaberite opcije Izbriši uređaj, Zaključaj početni program za pokretanje i Prisilno instaliraj sliku sustava na svim particijama."</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Aktivan je način od 4 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste se vratili u produkcijski način rada, morate zaključati pokretač operativnog sustava. Dodirnite za više informacija."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Aktivan je način od 4 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste ponovno ušli u produkcijski način rada, morate zaključati pokretač operativnog sustava uređaja. To će ponovno vratiti uređaj na tvorničke postavke i vratiti ga na produkcijske postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere. Ako uređaj ne uspije pokrenuti Android ili ako nije stabilan, ponovno instalirajte sliku sustava na uređaju s najnovijim tvorničkim verzijama firmwarea s web-lokacije <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ili upotrijebite web-lokaciju <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>, a zatim odaberite opcije Izbriši uređaj, Zaključaj pokretač operativnog sustava i Prisilno instaliraj sliku sustava na svim particijama."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Upotreba načina od 16 KB koji ne ovisi o veličini stranice"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Aktivan je način od 16 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste ponovno ušli u produkcijski način rada, morate se vratiti na način od 4 KB, a zatim zaključati početni program za pokretanje uređaja. Dodirnite da biste pročitali više."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Aktivan je način od 16 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je početni program za pokretanje otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste ponovno ušli u produkcijski način rada, morate se vratiti na način od 4 KB, a zatim zaključati početni program za pokretanje uređaja. To će ponovno vratiti uređaj na tvorničke odnosno produkcijske postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere. Ako uređaj ne uspije pokrenuti Android ili ako nije stabilan, ponovno instalirajte sliku sustava na uređaju s najnovijim tvorničkim verzijama firmwarea s web-lokacije <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ili upotrijebite web-lokaciju <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>, a zatim odaberite opcije Izbriši uređaj, Zaključaj početni program za pokretanje i Prisilno instaliraj sliku sustava na svim particijama."</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Aktivan je način od 16 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste ponovno ušli u produkcijski način rada, morate se vratiti na način od 4 KB, a zatim zaključati pokretač operativnog sustava uređaja. Dodirnite da biste pročitali više."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Aktivan je način od 16 KB koji ne ovisi o veličini stranice. U ovom se načinu ne može zajamčiti integritet softvera, a svi podaci pohranjeni na telefonu mogu biti ugroženi dok je pokretač operativnog sustava otključan. Neke će značajke biti onemogućene u tim načinima, pa neke aplikacije možda neće funkcionirati. Da biste ponovno ušli u produkcijski način rada, morate se vratiti na način od 4 KB, a zatim zaključati pokretač operativnog sustava uređaja. To će ponovno vratiti uređaj na tvorničke odnosno produkcijske postavke. Nakon što uređaj uspješno pokrene Android, onemogućite otključavanje OEM-a u opcijama za razvojne programere. Ako uređaj ne uspije pokrenuti Android ili ako nije stabilan, ponovno instalirajte sliku sustava na uređaju s najnovijim tvorničkim verzijama firmwarea s web-lokacije <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ili upotrijebite web-lokaciju <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>, a zatim odaberite opcije Izbriši uređaj, Zaključaj pokretač operativnog sustava i Prisilno instaliraj sliku sustava na svim particijama."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Način 16 od KB koji ne ovisi o veličini stranice"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Pročitajte više"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Rukovatelj izvješćem o programskim pogreškama"</string>
@@ -4962,14 +4975,14 @@
<string name="default_active_sim_sms" msgid="8041498593025994921">"SMS"</string>
<string name="default_active_sim_mobile_data" msgid="6798083892814045301">"mobilne podatke"</string>
<string name="wifi_scan_notify_message" msgid="1331238142061476869">"Radi boljeg doživljaja na uređaju, aplikacije i usluge i dalje mogu tražiti Wi‑Fi mreže u bilo kojem trenutku, čak i kada je Wi‑Fi isključen. Time se primjerice mogu poboljšati značajke i usluge koje se temelje na lokaciji. To možete promijeniti u postavkama traženja Wi-Fija."</string>
- <string name="wifi_scan_change" msgid="8438320311511852918">"Promijeni"</string>
- <string name="preference_summary_default_combination" msgid="4643585915107796253">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="NETWORKMODE">%2$s</xliff:g>"</string>
+ <string name="wifi_scan_change" msgid="8438320311511852918">"Promijenite"</string>
+ <string name="preference_summary_default_combination" msgid="4643585915107796253">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="NETWORKMODE">%2$s</xliff:g>"</string>
<string name="mobile_data_connection_active" msgid="2422223108911581552">"Povezano"</string>
<string name="mobile_data_temp_connection_active" msgid="3430470299756236413">"Privremeno povezano"</string>
<string name="mobile_data_temp_using" msgid="5211002380149434155">"Privremeno koristite <xliff:g id="SUBNAME">%1$s</xliff:g>"</string>
<string name="mobile_data_no_connection" msgid="905897142426974030">"Niste povezani"</string>
<string name="mobile_data_off_summary" msgid="1884248776904165539">"Mobilni podaci neće se automatski prenositi"</string>
- <string name="mobile_data_disable_title" msgid="8438714772256088913">"Isključiti mobilne podatke?"</string>
+ <string name="mobile_data_disable_title" msgid="8438714772256088913">"Želite li isključiti mobilne podatke?"</string>
<string name="mobile_data_disable_message" msgid="7829414836454769970">"Nećete imati pristup podacima ni internetu putem usluge <xliff:g id="CARRIER">%s</xliff:g>. Internet će biti dostupan samo putem Wi-Fija."</string>
<string name="mobile_data_disable_message_default_carrier" msgid="4449469407705838612">"mobilnog operatera"</string>
<string name="not_allowed_by_ent" msgid="1958611623122304411">"Vaša organizacija ne dopušta"</string>
@@ -5099,7 +5112,7 @@
</string-array>
<string name="tare_dialog_confirm_button_title" msgid="9179397559760203348">"Potvrdi"</string>
<string name="dream_preview_button_title" msgid="6637456541851795952">"Isprobaj"</string>
- <string name="dream_picker_category" msgid="7726447836872744867">"Odabir čuvara zaslona"</string>
+ <string name="dream_picker_category" msgid="7726447836872744867">"Odaberite čuvar zaslona"</string>
<string name="dream_complications_toggle_title" msgid="4273232303027449163">"Prikaži dodatne informacije"</string>
<string name="dream_complications_toggle_summary" msgid="8088911054987524904">"Čuvar zaslona prikazuje vrijeme, vremenske uvjete i druge informacije"</string>
<string name="dream_home_controls_toggle_title" msgid="706799741564479248">"Prikaži upravljanje kućanskim uređajima"</string>
@@ -5209,7 +5222,7 @@
<string name="screen_flash_color_violet" msgid="1279950780509029495">"Ljubičasta"</string>
<string name="color_selector_dialog_done" msgid="121253968943363376">"Gotovo"</string>
<string name="color_selector_dialog_cancel" msgid="8667350644753900701">"Odustani"</string>
- <string name="contrast_default" msgid="8918545965525226966">"Zadani"</string>
+ <string name="contrast_default" msgid="8918545965525226966">"Zadano"</string>
<string name="contrast_medium" msgid="384414510709285811">"Srednji"</string>
<string name="contrast_high" msgid="3988567609694797696">"Visoki"</string>
<string name="dock_multi_instances_not_supported_text" msgid="3513493664467667084">"Ova se aplikacija može otvoriti samo u jednom prozoru"</string>
@@ -5222,7 +5235,7 @@
<string name="color_inversion_state_on" msgid="1160969033636440368">"Uključeno"</string>
<string name="color_inversion_state_off" msgid="6925638668080451724">"Isključeno"</string>
<string name="color_inversion_feature_summary" msgid="1199876648549627647">"Svijetli zasloni postaju tamni, a tamni zasloni svijetli"</string>
- <string name="magnification_feature_summary" msgid="2053971569640663564">"Povećaj na zaslonu"</string>
+ <string name="magnification_feature_summary" msgid="2053971569640663564">"Povećajte na zaslonu"</string>
<string name="autoclick_disabled" msgid="3213396804955002120">"Isključeno"</string>
<string name="show_captions_disabled" msgid="690650956523818755">"Isključeno"</string>
<string name="show_captions_enabled" msgid="7089043007924626">"Uključeno"</string>
diff --git a/res/values-hu/arrays.xml b/res/values-hu/arrays.xml
index db7e4a4..b9c1b63 100644
--- a/res/values-hu/arrays.xml
+++ b/res/values-hu/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index e63342c..86aaae7 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Leválasztja az eszközt?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Új eszköz párosítása"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatikus visszakapcsolás holnap"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Jobb fül párosítása"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Bal fül párosítása"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Párosítsa a másik fület"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Bal fül párosítása"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Hallókészülék-beállítások"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Gyorsparancs, hallókészülék-kompatibilitás"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Alapbeállítások"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Beállításkészlet"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Nem sikerült frissíteni a beállításkészletet"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Hangkimenet"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"A hangkimenetről"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Mégse"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nem, köszönöm"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Most nem"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Elfogadom"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Bővebben"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Feloldás arccal"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Fontos tudnivalók"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Használja ujjlenyomatát a telefon feloldásához vagy vásárlások engedélyezéséhez.\n\nMegjegyzés: Nem használhatja ujjlenyomatát azt eszköz feloldására. További információért forduljon szervezete rendszergazdájához."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Mégse"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nem"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Most nem"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Elfogadom"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Kihagyja az ujjlenyomatot?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Az ujjlenyomat beállítása csupán 1-2 percet vesz igénybe. Ha kihagyja ezt a lépést, később a beállításokban megadhatja ujjlenyomatát."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Minden alkalommal az eszköz zárolásakor"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 perccel a képernyő időkorlátja után"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Csak az eszköz újraindulása után"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Ha másik zárolást használ a privát területénél, előfordulhat, hogy igazolnia kell a személyazonosságát a privát területen lévő alkalmazások megnyitásához."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Privát terület elrejtése"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Privát terület elrejtése, amikor zárolva van"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Ha nem szeretné, hogy mások tudjanak arról, hogy privát terület van az eszközén, elrejtheti az alkalmazáslistában."</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Beállítás"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privát terület"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Elrejthet vagy zárolhat privát alkalmazásokat egy külön területen. Használjon egy erre kijelölt Google-alkalmazást a fokozott biztonság érdekében."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Privát terület beállítása"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Google-fiók kiválasztása a területhez"</b>\n"Egy külön fiók használata segít megakadályozni a szinkronizált filmeknek, fotóknak és e-maileknek a területen kívüli megjelenítését."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Hogyan működik?"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Google-fiók létrehozása a területéhez"</b>\n"Kijelölt fiók használatával gondoskodhat arról, hogy szinkronizált fájljai, fotói és e-mailjei ne jelenjenek meg a területén kívül."</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Zárolás beállítása"</b>\n"Területének zárolásával megakadályozhatja mások hozzáférését."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Alkalmazások telepítése"</b>\n"Használhatja a magánterületén belüli Play Áruházat alkalmazások egyszerű telepítéséhez."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"A privát terület alkalmazásai nem jelennek meg az Engedélykezelőben, az adatvédelmi irányítópulton és más beállításokban, amikor a privát terület le van zárva.\n\nA privát terület nem állítható vissza új eszközön. Ha másik eszközön szeretné használni, akkor új privát területet kell beállítania.\n\nBárki, aki az Ön eszközét számítógéphez csatlakoztatja, vagy rosszindulatú alkalmazást telepít az Ön eszközére, hozzá tud férni a privát területhez."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Alkalmazások telepítése"</b>\n"Telepítse azokat az alkalmazásokat, amelyeket privát területén szeretne tartani."</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Fontos tudnivalók"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Az alkalmazások leállnak, amikor zárolja a területét"</b>\n"A területe zárolásakor a benne található alkalmazások leállnak, és nem fog tőlük értesítéseket kapni."</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"További információ a magánterületről"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Ez eltart egy kis ideig"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"A privát terület beállítása…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Beállíthat egy új zárolást csak a privát terület számára, vagy használhatja ugyanazt a zárolást, amelyet a készülék feloldásához használ."</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Képernyőzár használata"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Új zárolás kiválasztása"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Egy pillanat…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Egy pillanat…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Kész is!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"A magánterülete megkereséséhez lépjen az alkalmazáslistához, majd görgessen le"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Kész"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"PIN-kód beállítása a privát területhez"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Jelszó beállítása a privát területhez"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Minta beállítása a privát területhez"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Google-fiók létrehozásával könnyebben gondoskodhat adatai privát jellegének megőrzéséről"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"A következő képernyőn bejelentkezhet a magánterülettel használni kívánt fiókba"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Hozzon létre külön fiókot annak megakadályozásához, hogy az adatok a magánterületen kívül is megjelenjenek, például:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Szinkronizált fotók, fájlok, e-mailek, névjegyek, naptáresemények és egyéb adatok"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Alkalmazásletöltési előzmények és ajánlások"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Böngészési előzmények, könyvjelzők és mentett jelszavak"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Javasolt tartalmak a privát terület alkalmazásaiban végzett tevékenységei alapján"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Értem"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Zárolás"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Elrejtés"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Legfeljebb <xliff:g id="COUNT">%d</xliff:g> ujjlenyomatot adhat hozzá"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Rendszertanúsítvány"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Tanúsítvány kitűzése"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Hálózati információk"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ez a hálózat egy régebbi, kevésbé biztonságos biztonsági protokollt (WEP-et) használ"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Alhálózati maszk"</string>
<string name="server_name_title" msgid="7257095185810299066">"Szervernév"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Típus"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Wi-Fi-eszköz MAC-címe"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-cím"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Sorozatszám"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Futásidő"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Üzemidő"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Gyártási dátum"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Első használat dátuma"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Ciklusok száma"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Koppintás a jobb alsó sarokban"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Több beállítás: koppintson az érintőpad jobb alsó sarkában"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Mutató sebessége"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Mutatókitöltés stílusa"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Mutatókitöltés-stílus módosítása: fekete"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Mutatókitöltés-stílus módosítása: zöld"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Mutatókitöltés-stílus módosítása: sárga"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Mutatókitöltés-stílus módosítása: rózsaszín"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Mutatókitöltés-stílus módosítása: kék"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Érintőpad-kézmozdulatok megismerése"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"érintőpad, érintő pad, egér, kurzor, görgetés, csúsztatás, kattintás jobb egérgombbal, kattintás, mutató"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"kattintás jobb egérgombbal, koppintás"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nincs}=1{1 ütemezés beállítva}other{# ütemezés beállítva}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ne zavarjanak"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritási módok"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Értesítés fogadása csak fontos személyektől és alkalmazásoktól"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"A megszakítások korlátozása"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"A Ne zavarjanak mód bekapcsolása"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Naptár hozzáadása"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Naptár használata"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Ütemezés"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Ütemezés"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Telefonnémítás ütemezése"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"A Ne zavarjanak szabályai"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Az alkalmazás nem támogatja a speciális beállításokat"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"További beállítások"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Ebben az alkalmazásban további beállítások állnak rendelkezésre"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Befagyasztás"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Befagyasztás használata"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Ha rövid időn belül sok értesítést kap, eszköze minimálisra csökkenti a hangjelzések és a képernyőn megjelenő előugró ablakok számát. A hívásokról, az ébresztésekről és a fontos beszélgetésekről a megszokott módon értesül, az összes kézbesített értesítést pedig egyszerűen megtekintheti az értesítési felületen."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Alkalmazás munkaprofilokra"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Alkalmazás a munkaprofil alkalmazásaira"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Virtuálisvalóság-segédszolgáltatás"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Kiválasztott alkalmazások"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nincs"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Összes"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Felülbírálás engedélyezése az alkalmazások számára"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Azok az alkalmazások, amelyeknél engedélyezve van a megszakítás"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"További alkalmazások kiválasztása"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Módosítás csak ébresztésekre egy órára, eddig: {time}}other{Módosítás csak ébresztésekre # órára, eddig: {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Váltás „Csak ébresztésekre” eddig: <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Módosítás a bármikor történő megszakításra"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Figyelmeztetés"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Bezárás"</string>
<string name="device_feedback" msgid="5351614458411688608">"Visszajelzés küldése az eszközről"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Bal"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Jobb"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Tok"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Akkumulátor"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Beállítások panel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Asztali mód kényszerítése"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Kísérleti asztali mód kényszerítése a másodlagos kijelzőkön"</string>
@@ -4843,20 +4867,20 @@
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Váltás 4 kB-os módról 16 kB-os módra"</string>
<string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Ön jelenleg a 4 kB-os rendszermagot futtató, lapmérettől független módban van, és a 16 kB-os módra készül váltani. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg a rendszerindító zárolása fel van oldva. A művelettel újraindítja az eszközt. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretné az eszközt éles üzemmódba visszaállítani, akkor annyit kellene tennie, hogy visszavált a 4 kB-os módra, majd zárolja a rendszerindítót, ezzel ugyanis visszaállítja az eszközt a gyári beállításokra. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Váltás 16 kB-os módról 4 kB-os módra"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Ön jelenleg a 16 kB-os rendszermagot futtató, lapmérettől független módban van, és a 4 kB-os módra készül váltani. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg rendszerindító zárolása fel van oldva. A művelettel újraindítja az eszközt. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretné az eszközt éles üzemmódba visszaállítani, akkor zárolja a rendszerindítót, ezzel ugyanis visszaállítja az eszközt a gyári beállításokra. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban."</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Ön jelenleg a 16 kB-os rendszermagot futtató, lapmérettől független módban van, és a 4 kB-os módra készül váltani. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg a rendszerindító zárolása fel van oldva. A művelettel újraindítja az eszközt. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretné az eszközt éles üzemmódba visszaállítani, akkor zárolja a rendszerindítót, ezzel ugyanis visszaállítja az eszközt a gyári beállításokra. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Nem sikerült a kernel frissítése 16 kB-os oldalakkal kompatibilis kernelre."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Módosítás alkalmazása"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"Újraformatálja az eszközt ext4-re? (Szükséges a 16 kB-os módhoz)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"A 16 kB-os fejlesztői opció használata előtt konvertálja ext4 fájlrendszerre az eszköz adatpartícióját. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg rendszerindító zárolása fel van oldva. A 16 kB-os opció aktiválásával még egy újraindításra van szükség ezután. Ebben a módban egyetlen újraindítással válthat oda és vissza a 4 kB-os és a 16 kB-os mód között. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretné az eszközt éles üzemmódba visszaállítani, akkor annyit kellene tennie, hogy visszavált 4 kB-os módra, majd zárolja a rendszerindítót, ezzel ugyanis visszaállítja az eszközt a gyári beállításokra. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban. A rendszer ekkor törli az eszköz adatait, a fájlrendszer pedig a megerősítést követően ext4 rendszerre módosul. Miután a folyamat befejeződött, próbálja újra engedélyezni a 16 kB-os módot."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"A 16 kB-os fejlesztői opció használata előtt konvertálja ext4 fájlrendszerre az eszköz adatpartícióját. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg a rendszerindító zárolása fel van oldva. A 16 kB-os opció aktiválásával még egy újraindításra van szükség ezután. Ebben a módban egyetlen újraindítással válthat oda és vissza a 4 kB-os és a 16 kB-os mód között. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretné az eszközt éles üzemmódba visszaállítani, akkor annyit kellene tennie, hogy visszavált 4 kB-os módra, majd zárolja a rendszerindítót, ezzel ugyanis visszaállítja az eszközt a gyári beállításokra. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban. A rendszer ekkor törli az eszköz adatait, a fájlrendszer pedig a megerősítést követően ext4 rendszerre módosul. Miután a folyamat befejeződött, próbálja újra engedélyezni a 16 kB-os módot."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Minden adat törlése"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Nem sikerült az ext4 fájlrendszerre való újraformatálás és az adatpartíció adatainak visszaállíthatatlan törlése."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"A 16 kB-os módhoz a rendszerindító zárolásának feloldása szükséges"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"A 16 kB-os fejlesztői opció használata előtt fel kell oldani ezen az eszközön a rendszerindító zárolását. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg rendszerindító zárolása fel van oldva. A 16 kB-os mód aktiválásakor a rendszer minden felhasználói adatot és beállítást töröl. A rendszerindító zárolásának feloldása után két újraindítás szükséges a 16 kB-os opció aktiválásához. Ebben a módban egyetlen újraindítással válthat oda és vissza a 4 kB-os és a 16 kB-os mód között. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretné az eszközt éles üzemmódba visszaállítani, akkor annyit kellene tennie, hogy visszavált 4 kB-os módra, majd zárolja az eszközön az OEM-et/rendszerindítót (ezzel visszaállítja az eszközt a gyári beállításokra). Oldja fel a rendszerindító zárolását, majd próbálkozzon újra. A művelettel kapcsolatos utasításokat itt találja: <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4 kB-os, lapmérettől független módot használ"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Ön jelenleg a lapmérettől független mód 4 kB-os módjában van. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg rendszerindító zárolása fel van oldva. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretne visszalépni az éles üzemmódba, zárolja az eszköz rendszerindítóját. Koppintson a további információk megtekintéséhez."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Ön jelenleg a lapmérettől független mód 4 kB-os módjában van. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg rendszerindító zárolása fel van oldva. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretne visszalépni az éles üzemmódba, zárolja az eszköz rendszerindítóját. Ezzel újra visszaállítja az eszközt a gyári beállításokra, és egyúttal az éles beállításokra is. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban. Ha az eszköz nem indítja el az Android rendszert vagy nem stabil, telepítse újra az eszközt a legújabb gyári képfájlokkal a következő oldalon leírt módon: <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Másik megoldásként használhatja a <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> webhelyet is, ahol válassza a következő lehetőségeket: „Wipe Device” (Eszközadatok visszaállíthatatlan törlése), „Lock Bootloader” (Rendszerindító zárolása) és „Force Flash all partitions” (Összes partíció telepítésének kényszerítése)."</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Ön jelenleg a lapmérettől független mód 4 kB-os módjában van. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg a rendszerindító zárolása fel van oldva. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretne visszalépni az éles üzemmódba, zárolja az eszköz rendszerindítóját. Koppintson a további információk megtekintéséhez."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Ön jelenleg a lapmérettől független mód 4 kB-os módjában van. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg a rendszerindító zárolása fel van oldva. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretne visszalépni az éles üzemmódba, zárolja az eszköz rendszerindítóját. Ezzel újra visszaállítja az eszközt a gyári beállításokra, és egyúttal az éles beállításokra is. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban. Ha az eszköz nem indítja el az Android rendszert vagy nem stabil, telepítse újra az eszközt a legújabb gyári képfájlokkal a következő oldalon leírt módon: <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Másik megoldásként használhatja a <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> webhelyet is, ahol válassza a következő lehetőségeket: „Wipe Device” (Eszközadatok visszaállíthatatlan törlése), „Lock Bootloader” (Rendszerindító zárolása) és „Force Flash all partitions” (Összes partíció telepítésének kényszerítése)."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16 kB-os, lapmérettől független módot használ"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Ön jelenleg a lapmérettől független mód 16 kB-os módjában van. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg rendszerindító zárolása fel van oldva. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretne visszalépni az éles üzemmódba, váltson vissza a 4 kB-os módra, majd zárolja az eszköz rendszerindítóját. Koppintson a további információk megtekintéséhez."</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Ön jelenleg a lapmérettől független mód 16 kB-os módjában van. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg a rendszerindító zárolása fel van oldva. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretne visszalépni az éles üzemmódba, váltson vissza a 4 kB-os módra, majd zárolja az eszköz rendszerindítóját. Koppintson a további információk megtekintéséhez."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Ön jelenleg a lapmérettől független mód 16 kB-os módjában van. A szoftverek integritása nem garantálható ebben a módban, és a telefonon tárolt összes adat veszélyben lehet, amíg a rendszerindító zárolása fel van oldva. Egyes funkciók le lesznek tiltva ezekben a módokban, ezért előfordulhat, hogy néhány alkalmazás nem működik. Ha szeretne visszalépni az éles üzemmódba, váltson vissza a 4 kB-os módra, majd zárolja az eszköz rendszerindítóját. Ezzel újra visszaállítja az eszközt a gyári beállításokra, és egyúttal az éles beállításokra is. Miután az eszköz sikeresen elindította az Android rendszert, tiltsa le az OEM-feloldást a Fejlesztői beállítások funkcióban. Ha az eszköz nem indítja el az Android rendszert vagy nem stabil, telepítse újra az eszközt a legújabb gyári képfájlokkal a következő oldalon leírt módon: <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Másik megoldásként használhatja a <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> webhelyet is, ahol válassza a következő lehetőségeket: „Wipe Device” (Eszközadatok visszaállíthatatlan törlése), „Lock Bootloader” (Rendszerindító zárolása) és „Force Flash all partitions” (Összes partíció telepítésének kényszerítése)."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 kB-os, lapmérettől független mód"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Továbbiak"</string>
@@ -5093,13 +5117,13 @@
</string-array>
<string name="tare_dialog_confirm_button_title" msgid="9179397559760203348">"Megerősítés"</string>
<string name="dream_preview_button_title" msgid="6637456541851795952">"Előnézet"</string>
- <string name="dream_picker_category" msgid="7726447836872744867">"Képernyővédő kiválasztása"</string>
+ <string name="dream_picker_category" msgid="7726447836872744867">"Képernyőkímélő kiválasztása"</string>
<string name="dream_complications_toggle_title" msgid="4273232303027449163">"További információk megjelenítése"</string>
<string name="dream_complications_toggle_summary" msgid="8088911054987524904">"A pontos idő, az időjárás vagy más információk megjelenítése a képernyőkímélőn"</string>
<string name="dream_home_controls_toggle_title" msgid="706799741564479248">"Otthonvezérlők megjelenítése"</string>
<string name="dream_home_controls_toggle_summary" msgid="4102519907917430579">"Otthonvezérlők megjelenítése a képernyőkímélőn"</string>
<string name="dream_more_settings_category" msgid="3119192146760773748">"További beállítások"</string>
- <string name="dream_setup_title" msgid="2458303874255396142">"Képernyővédő kiválasztása"</string>
+ <string name="dream_setup_title" msgid="2458303874255396142">"Képernyőkímélő kiválasztása"</string>
<string name="dream_setup_description" msgid="7508547154038580296">"Kiválaszthatja, hogy mi legyen látható a képernyőn, amikor a táblagép dokkolt állapotban van. Előfordulhat, hogy az eszköz több energiát használ, ha a képernyőkímélő be van kapcsolva."</string>
<string name="customize_button_title" msgid="1110284655990203359">"Szerkesztés"</string>
<string name="customize_button_description" msgid="7440248477266126231">"<xliff:g id="SCREENSAVER_NAME">%1$s</xliff:g> személyre szabása"</string>
diff --git a/res/values-hy/arrays.xml b/res/values-hy/arrays.xml
index 1a8b95d..65b04ed 100644
--- a/res/values-hy/arrays.xml
+++ b/res/values-hy/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index 765ddca..8266dbc 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Անջատե՞լ սարքը:"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Նոր սարքի զուգակցում"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Վաղը նորից ավտոմատ միացնել"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Զուգակցել աջ ականջը"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Զուգակցել ձախ ականջը"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Զուգակցեք մյուս ականջը"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Զուգակցել ձախ ականջը"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Լսողական սարքի կարգավորումներ"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Դյուրանցում, լսողական սարքի համատեղելիություն"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Կարգավորումների հավաքածու"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Կարգավորումների հավաքածու"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Չհաջողվեց թարմացնել կարգավորումների հավաքածուն"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Աուդիո ելք"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Աուդիո ելքի մասին"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Չեղարկել"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ոչ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ոչ հիմա"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ընդունել"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Ավելին"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Բացեք դեմքի ճանաչման միջոցով"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Հիշեք"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Օգտագործեք ձեր մատնահետքը՝ հեռախոսն ապակողպելու կամ գնումներ թույլատրելու համար:\n\nՆշում. այս սարքն ապակողպելու համար չեք կարող օգտագործել ձեր մատնահետքը: Լրացուցիչ տեղեկություններ ստանալու համար դիմեք ձեր կազմակերպության ադմինիստրատորին:"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Չեղարկել"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ոչ, շնորհակալություն"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ոչ հիմա"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ընդունել"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Բաց թողնե՞լ"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Մատնահետքի կարգավորումն ընդամենը մեկ-երկու րոպե է տևում: Եթե բաց թողնեք, ավելի ուշ կարող եք անցնել կարգավորումներ և ավելացնել ձեր մատնահետքը:"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Ամեն անգամ, երբ սարքը կողպվում է"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 րոպե էկրանի ավտոմատ անջատումից հետո"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Միայն երբ սարքը վերագործարկվում է"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Եթե ձեր մասնավոր տարածքի համար օգտագործում եք այլ կողպեք, կարող է անհրաժեշտ լինել հաստատել ձեր ինքնությունը՝ ձեր մասնավոր տարածքի հավելվածները բացելու համար։"</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Թաքցնել մասնավոր տարածքը"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Թացքնել մասնավոր տարածքը, երբ այն կողպված է"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Որպեսզի այլ մարդիկ չիմանան ձեր մասնավոր տարածքի մասին, կարող եք այն թաքցնել հավելվածների ցանկից"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Կարգավորել"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Մասնավոր տարածք"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Թաքցրեք կամ կողպեք անձնական հավելվածները առանձին տարածքում։ Անվտանգության նկատառումներից ելնելով՝ օգտագործեք առանձին Google հաշիվ։"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Մասնավոր տարածքի կարգավորում"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Ընտրեք Google հաշիվ ձեր տարածքի համար"</b>\n"Առանձին հաշվի օգտագործումն օգնում է կանխել համաժամացված ֆայլերի, լուսանկարների և նամակների արտահոսքը ձեր տարածքից"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Ինչպես է դա աշխատում"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Ստեղծեք Google հաշիվ ձեր տարածքի համար"</b>\n"Եթե առանձին հաշիվ եք օգտագործում, դա կօգնի կանխել համաժամացված ֆայլերի, լուսանկարների և էլ. նամակների հայտնվելը ձեր տարածքից դուրս"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Կարգավորեք կողպում"</b>\n"Կողպեք ձեր տարածքը, որպեսզի մյուսները չկարողանան բացել այն"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Տեղադրեք հավելվածներ"</b>\n"Մասնավոր տարածքն ունի իր սեփական Play Խանութը, ուստի հեշտությամբ կարող եք հավելվածներ տեղադրել։"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Ձեր մասնավոր տարածքի հավելվածները չեն ցուցադրվի թույլտվությունների կառավարչում, թույլտվությունների կառավարման վահանակում և այլ կարգավորումներում, երբ մասնավոր տարածքը կողպված է։\n\nՁեր մասնավոր տարածքը հնարավոր չէ վերականգնել նոր սարքում։ Դուք պետք է այլ մասնավոր տարածք կարգավորեք, եթե ուզում եք այն օգտագործել մեկ այլ սարքում։\n\nՑանկացած մեկը, ով ձեր սարքը միացնի համակարգչի կամ վնասաբեր հավելվածներ տեղադրի ձեր սարքում, կկարողանա բացել ձեր մասնավոր տարածքը։"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Տեղադրեք հավելվածներ"</b>\n"Ձեր տարածքում տեղադրեք հավելվածներ, որոնք չեք ուզում, որ ցուցադրվեն"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Հիշեք"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Եթե կողպեք տարածքը, հավելվածները կդադարեն աշխատել"</b>\n"Երբ կողպեք ձեր տարածքը, տարածքի հավելվածները կդադարեն աշխատել, և դուք դրանցից ծանուցումներ չեք ստանա"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Իմանալ ավելին մասնավոր տարածքի մասին"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Դա կտևի մի քանի րոպե"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Մասնավոր տարածքի կարգավորում…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Դուք կարող եք կողպման նոր եղանակ սահմանել անմիջապես ձեր մասնավոր տարածքի համար կամ օգտագործել կողպման նույն եղանակը, որով ապակողպում եք ձեր սարքը"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Օգտագործել էկրանի կողպումը"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Ընտրել կողպման այլ եղանակ"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Սպասեք…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Սպասեք…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Պատրա՛ստ է"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Ձեր մասնավոր տարածքը գտնելու համար բացեք ձեր հավելվածների ցանկը և թերթեք ներքև"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Պատրաստ է"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"PIN կոդ մասնավոր տարածքի համար"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Գաղտնաբառ մասնավոր տարածքի համար"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Նախշ մասնավոր տարածքի համար"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Ստեղծեք Google հաշիվ՝ ձեր տվյալներն ապահով պահելու համար"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Հաջորդ էկրանին դուք կարող եք մտնել հաշիվ՝ ձեր մասնավոր տարածքի հետ օգտագործելու համար"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Ստեղծեք առանձին հաշիվ, որպեսզի խուսափեք մասնավոր տարածքից դուրս տվյալների արտահոսքից, օրինակ՝"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Համաժամացված նկարներ, ֆայլեր, նամակներ, կոնտակտներ, օրացույցի միջոցառումներ և այլ տվյալներ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Հավելվածների ներբեռնման պատմություն և առաջարկներ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Այցելությունների պատմություն, էջանիշներ և պահված գաղտնաբառեր"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Մասնավոր տարածքի հավելվածներում ձեր գործողություններին առնչվող առաջարկվող բովանդակություն"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Պարզ է"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Կողպում"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Թաքցնել"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Կարող եք ավելացնել առավելագույնը <xliff:g id="COUNT">%d</xliff:g> մատնահետք"</string>
@@ -669,7 +666,7 @@
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Ընտրեք էկրանի կողպման լրացուցիչ եղանակը"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Եթե մոռանաք էկրանի ապակողպման եղանակը, ՏՏ ադմինիստրատորը չի կարողանա փոխել այն։"</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"Առանձին կողպում դրեք աշխատանքային պրոֆիլի համար"</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"Եթե մոռանաք կողպման այս եղանակը, ՏՏ ադմինիստրատորը կզրոյացնի այն"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"Եթե մոռանաք կողպման այս եղանակը, խնդրեք ՏՏ ադմինիստրատորին զրոյացնել այն"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"Էկրանի կողպման տարբերակներ"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"Էկրանի կողպման տարբերակներ"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"Ավտոմատ կերպով հաստատել ապակողպումը"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Համակարգի հավաստագիր"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Հավաստագրերի ամրացում"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Ցանցի տվյալներ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Այս ցանցն օգտագործում է պաշտպանության ցածր մակարդակով անվտանգության հին հաղորդակարգ, որը կոչվում է WEP"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Ենթացանցի դիմակ"</string>
<string name="server_name_title" msgid="7257095185810299066">"Սերվերի անվանումը"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Տեսակ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Սարքի Wi‑Fi-ի MAC հասցե"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth հասցե"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Հերթական համար"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Աշխատած ժամանակը"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Աշխատաժամանակը"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Արտադրման ամսաթիվը"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Առաջին օգտագործման ամսաթիվը"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Շրջափուլերի թիվը"</string>
@@ -1620,7 +1618,7 @@
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"Բեռնում..."</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"Սահմանեք գաղտնաբառ"</string>
<string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Սահմանեք աշխատանքային պրոֆիլի գաղտնաբառ"</string>
- <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Սահմանեք PIN կոդ"</string>
+ <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Ընտրեք PIN կոդ"</string>
<string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Սահմանեք աշխատանքային պրոֆիլի PIN կոդ"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Ստեղծեք նախշ"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Լրացուցիչ պաշտպանության համար ավելացրեք նախշ սարքի ապակողպման համար"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Հպում ներքևի աջ անկյունին"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Այլ տարբերակների համար հպեք հպահարթակի ներքևի աջ անկյունին"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Նշորդի արագությունը"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Ցուցիչի լցման ոճը"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Ցուցիչի լցման ոճը դարձնել սև"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Ցուցիչի լցման ոճը դարձնել կանաչ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Ցուցիչի լցման ոճը դարձնել դեղին"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Ցուցիչի լցման ոճը դարձնել վարդագույն"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Ցուցիչի լցման ոճը դարձնել կապույտ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Սովորել հպահարթակի ժեստերը"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"հպահարթակ, մկնիկ, նշորդ, ոլորել, թերթել, աջ սեղմել, սեղմում, ցուցիչ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"սեղմել մկնիկի աջ կոճակը, հպել"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ոչ մի ժամանակացույց}=1{Սահմանված է 1 ժամանակացույց}one{Սահմանված է # ժամանակացույց}other{Սահմանված է # ժամանակացույց}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Չանհանգստացնել"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Կարևոր ռեժիմներ"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Ծանուցում ստանալ միայն կարևոր մարդկանցից և հավելվածներից"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ընդհատումների սահմանափակում"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Միացրեք «Չանհանգստացնել» ռեժիմը"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Ավելացնել օրացույց"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Օգտագործել իմ օրացույցը"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Ժամանակացույց"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Ժամանակացույց"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Հեռախոսի ձայնի անջատում որոշակի ժամերի"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"«Չանհանգստացնել» ռեժիմի կանոնների սահմանում"</string>
@@ -3513,7 +3525,7 @@
<string name="lock_screen_notifs_redact_work" msgid="3833920196569208430">"Աշխատանքային պրոֆիլի գաղտնի տվյալներ պարունակող ծանուցումներ"</string>
<string name="lock_screen_notifs_redact_work_summary" msgid="3238238380405430156">"Ցույց տալ աշխատանքային պրոֆիլի գաղտնի տվյալները կողպէկրանին"</string>
<string name="lock_screen_notifications_summary_show" msgid="6540443483088311328">"Ծանուցումները ցույց տալ ամբողջությամբ"</string>
- <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"Կոնֆիդենցիալ տվյալները ցույց տալ միայն ապակողպված էկրանին"</string>
+ <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"Զգայուն բովանդակությունը ցույց տալ միայն ապակողպված էկրանին"</string>
<string name="lock_screen_notifications_summary_disable" msgid="3388290397947365744">"Ցույց չտալ ծանուցումներ"</string>
<string name="lock_screen_notifications_interstitial_message" msgid="6326229471276829730">"Ի՞նչ է անհրաժեշտ ցուցադրել կողպէկրանին"</string>
<string name="lock_screen_notifications_interstitial_title" msgid="1360388192096354315">"Կողպէկրան"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Այս հավելվածում ընդլայնված կարգավորումները չեն աջակցվում"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Լրացուցիչ կարգավորումներ"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Լրացուցիչ կարգավորումները հասանելի են հավելվածում"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Ծանուցումների ձայնի նվազեցում"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Իջեցրեք ծանուցումների ձայնը"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Երբ դուք կարճ ժամանակահատվածում շատ ծանուցումներ ստանաք, ձեր սարքը կկրճատի ձայնային ազդանշանների և էկրանին ելնող պատուհանների թիվը։ Դուք նախկինի պես կլսեք զանգերի, զարթուցիչների և կարևոր զրույցների ծանուցումների ձայնը։ Ստացված բոլոր ծանուցումները կարող եք դիտել ծանուցումների վահանակում։"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Կիրառել աշխատանքային պրոֆիլների համար"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Կիրառել աշխատանքային պրոֆիլի հավելվածների նկատմամբ"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR օգնության ծառայություններ"</string>
@@ -3664,8 +3679,8 @@
<string name="app_notification_fsi_permission_summary" msgid="7673487977631068039">"Թույլատրել ծանուցումների ցուցադրումը ամբողջ էկրանով, երբ սարքը կողպված է"</string>
<string name="notification_badge_title" msgid="6854537463548411313">"Ցույց տալ ծանուցման կետիկը"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"Ցույց տալ ծանուցման կետիկը"</string>
- <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"Վրագրել «Չանհանգստացնել» պարամետրը"</string>
- <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"Թույլատրել այս ծանուցումներին հայտնվել անգամ «Չանհանգստացնել» ռեժիմում"</string>
+ <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"Վերասահմանել «Չանհանգստացնել» պարամետրը"</string>
+ <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"Թույլատրել այս ծանուցումներին հայտնվել նույնիսկ «Չանհանգստացնել» ռեժիմում"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"Կողպէկրան"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"Պատրաստ է"</string>
<string name="notification_show_lights_title" msgid="5564315979007438583">"Թարթող լույս"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Ընտրված հավելվածները"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ոչ մեկը"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Բոլորը"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Թույլատրել հավելվածներին փոխել «Չանհանգստացնել» ռեժիմի կարգավորումները"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Հավելվածներ, որոնք կարող են ընդհատել"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Ընտրեք այլ հավելվածներ"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Ակտիվացնել «Միայն զարթուցիչը» ռեժիմը մեկ ժամով մինչև {time}}one{Ակտիվացնել «Միայն զարթուցիչը» ռեժիմը # ժամով մինչև {time}}other{Ակտիվացնել «Միայն զարթուցիչը» ռեժիմը # ժամով մինչև {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Ակտիվացնել «Միայն զարթուցիչը» ռեժիմը մինչև <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>-ը"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Ակտիվացնել «Միշտ ընդհատել» ռեժիմը"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Նախազգուշացում"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Փակել"</string>
<string name="device_feedback" msgid="5351614458411688608">"Կարծիք հայտնել սարքի մասին"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Ձախ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Աջ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Պատյան"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Մարտկոց"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Կարգավորումների վահանակ"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Աշխատասեղանի ռեժիմի հարկադրված միացում"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Աշխատասեղանի փորձնական ռեժիմի հարկադրված միացում լրացուցիչ էկրանների վրա"</string>
@@ -4852,11 +4876,11 @@
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Չհաջողվեց վերաֆորմատավորել սարքը ext4 ֆայլային համակարգի և սրբել տվյալների բաժինը։"</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"16 ԿԲ ռեժիմի համար պահանջվում է ապակողպել օպերացիոն համակարգի բեռնիչը"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Նախքան մշակողի 16 ԿԲ ընտրանքն օգտագործելը հարկավոր է ապակողպել օպերացիոն համակարգի բեռնիչը։ Ծրագրի ամբողջականությունը հնարավոր չէ երաշխավորել այս ռեժիմում, և ցանկացած տվյալ, որը պահվում է հեռախոսում, քանի դեռ բեռնիչը ապակողպված է, կարող է վտանգված լինել։ Երբ 16 ԿԲ ռեժիմն ակտիվացվի, օգտատիրոջ բոլոր տվյալները և կարգավորումները կսրբվեն։ Հենց որ օպերացիոն համակարգի բեռնիչն ապակողպվի, 16 ԿԲ ընտրանքի ակտիվացման համար կպահանջվի երկու վերագործարկում։ Երբ անցնեք այս ռեժիմին, մեկ վերագործարկմամբ կկարողանաք անցում կատարել 4 ԿԲ և 16 ԿԲ ռեժիմների միջև։ Որոշ գործառույթներ կանջատվեն այս ռեժիմներում, ուստի հնարավոր է՝ ոչ բոլոր հավելվածներն աշխատեն։ Սարքը արտադրական ռեժիմին վերադարձնելու համար անհրաժեշտ է նորից անցնել 4 ԿԲ ռեժիմին և կողպել OEM-ը / օպերացիոն համակարգի բեռնիչը, որը վերականգնում է սարքի գործարանային կարգավորումները։ Ապակողպեք օպերացիոն համակարգի բեռնիչը և նորից փորձեք։ Թե ինչպես կարող եք դա անել, կարդացեք այստեղ՝ <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4 ԿԲ էջաչափից անկախ ռեժիմի օգտագործում"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Դուք էջաչափից անկախ ռեժիմի 4 ԿԲ ռեժիմում եք։ Ծրագրի ամբողջականությունը հնարավոր չէ երաշխավորել այս ռեժիմում, և ցանկացած տվյալ, որը պահվում է հեռախոսում, քանի դեռ բեռնիչը ապակողպված է, կարող է վտանգված լինել։ Որոշ գործառույթներ կանջատվեն այս ռեժիմներում, ուստի հնարավոր է՝ ոչ բոլոր հավելվածներն աշխատեն։ Արտադրական ռեժիմին վերադառնալու համար պետք է կողպեք սարքի օպերացիոն համակարգի բեռնիչը։ Հպեք՝ ավելին իմանալու համար։"</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Էջաչափից անկախ 4 ԿԲ ռեժիմի օգտագործում"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Դուք էջաչափից անկախ 4 ԿԲ ռեժիմում եք։ Ծրագրի ամբողջականությունը հնարավոր չէ երաշխավորել այս ռեժիմում, և ցանկացած տվյալ, որը պահվում է հեռախոսում, քանի դեռ բեռնիչը ապակողպված է, կարող է վտանգված լինել։ Որոշ գործառույթներ կանջատվեն այս ռեժիմներում, ուստի հնարավոր է՝ ոչ բոլոր հավելվածներն աշխատեն։ Արտադրական ռեժիմին վերադառնալու համար պետք է կողպեք սարքի օպերացիոն համակարգի բեռնիչը։ Հպեք՝ ավելին իմանալու համար։"</string>
<string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Դուք էջաչափից անկախ ռեժիմի 4 ԿԲ ռեժիմում եք։ Ծրագրի ամբողջականությունը հնարավոր չէ երաշխավորել այս ռեժիմում, և ցանկացած տվյալ, որը պահվում է հեռախոսում, քանի դեռ բեռնիչը ապակողպված է, կարող է վտանգված լինել։ Որոշ գործառույթներ կանջատվեն այս ռեժիմներում, ուստի հնարավոր է՝ ոչ բոլոր հավելվածներն աշխատեն։ Արտադրական ռեժիմին վերադառնալու համար պետք է կողպեք սարքի օպերացիոն համակարգի բեռնիչը։ Սարքի գործարանային կարգավորումները նորից կվերականգնվեն, և այն կանցնի արտադրական կարգավորումների ռեժիմ։ Android-ը հաջողությամբ գործարկելուց հետո Մշակողի ընտրանքներում անջատեք OEM-ի ապակողպումը։ Եթե սարքն անկայուն է աշխատում, կամ չհաջողվի այն գործարկել Android-ով, թարմացրեք սարքը՝ օգտագործելով գործարանային պատկերներ <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> էջից կամ անցեք <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> և ընտրեք «Սրբել սարքը», «Կողպել օպերացիոն համակարգի բեռնիչը» և «Ստիպողաբար թարմացնել բոլոր բաժինները»։"</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Էջաչափից անկախ 16 ԿԲ ռեժիմի օգտագործում"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Դուք էջաչափից անկախ ռեժիմի 16 ԿԲ ռեժիմում եք։ Ծրագրի ամբողջականությունը հնարավոր չէ երաշխավորել այս ռեժիմում, և ցանկացած տվյալ, որը պահվում է հեռախոսում, քանի դեռ բեռնիչը ապակողպված է, կարող է վտանգված լինել։ Որոշ գործառույթներ կանջատվեն այս ռեժիմներում, ուստի հնարավոր է՝ ոչ բոլոր հավելվածներն աշխատեն։ Արտադրական ռեժիմին վերադառնալու համար պետք է նորից անցնեք 4 ԿԲ ռեժիմին և կողպեք սարքի օպերացիոն համակարգի բեռնիչը։ Հպեք՝ ավելին իմանալու համար։"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Դուք էջաչափից անկախ 16 ԿԲ ռեժիմում եք։ Ծրագրի ամբողջականությունը հնարավոր չէ երաշխավորել այս ռեժիմում, և ցանկացած տվյալ, որը պահվում է հեռախոսում, քանի դեռ բեռնիչը ապակողպված է, կարող է վտանգված լինել։ Որոշ գործառույթներ կանջատվեն այս ռեժիմներում, ուստի հնարավոր է՝ ոչ բոլոր հավելվածներն աշխատեն։ Արտադրական ռեժիմին վերադառնալու համար պետք է նորից անցնեք 4 ԿԲ ռեժիմին և կողպեք սարքի օպերացիոն համակարգի բեռնիչը։ Հպեք՝ ավելին իմանալու համար։"</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Դուք էջաչափից անկախ ռեժիմի 16 ԿԲ ռեժիմում եք։ Ծրագրի ամբողջականությունը հնարավոր չէ երաշխավորել այս ռեժիմում, և ցանկացած տվյալ, որը պահվում է հեռախոսում, քանի դեռ բեռնիչը ապակողպված է, կարող է վտանգված լինել։ Որոշ գործառույթներ կանջատվեն այս ռեժիմներում, ուստի հնարավոր է՝ ոչ բոլոր հավելվածներն աշխատեն։ Արտադրական ռեժիմին վերադառնալու համար պետք է նորից անցնեք 4 ԿԲ ռեժիմին և կողպեք սարքի օպերացիոն համակարգի բեռնիչը։ Սարքի գործարանային կարգավորումները նորից կվերականգնվեն, և այն կանցնի արտադրական կարգավորումների ռեժիմ։ Android-ը հաջողությամբ գործարկելուց հետո Մշակողի ընտրանքներում անջատեք OEM-ի ապակողպումը։ Եթե սարքն անկայուն է աշխատում, կամ չհաջողվի այն գործարկել Android-ով, թարմացրեք սարքը՝ օգտագործելով գործարանային պատկերներ <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> էջից կամ անցեք <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> և ընտրեք «Սրբել սարքը», «Կողպել օպերացիոն համակարգի բեռնիչը» և «Ստիպողաբար թարմացնել բոլոր բաժինները»։"</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Էջաչափից անկախ 16 ԿԲ ռեժիմ"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Կարդալ ավելին"</string>
diff --git a/res/values-in/arrays.xml b/res/values-in/arrays.xml
index e878f49..3921f1f 100644
--- a/res/values-in/arrays.xml
+++ b/res/values-in/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index a4161af..353d97e 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Putuskan sambungan perangkat?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Sambungkan perangkat baru"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Otomatis aktifkan lagi besok"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Sambungkan ke telinga kanan"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Sambungkan ke telinga kiri"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Sambungkan ke telinga satunya"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Sambungkan ke telinga kiri"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Setelan alat bantu dengar"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Pintasan, kompatibilitas alat bantu dengar (HAC)"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Preset"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Tidak dapat memperbarui preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Output audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Tentang output audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Batal"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Lain kali"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Lain kali"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Saya setuju"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Selengkapnya"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Buka kunci dengan wajah Anda"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Ingat"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Gunakan sidik jari untuk membuka ponsel atau menyetujui pembelian.\n\nCatatan: Anda tidak dapat menggunakan sidik jari untuk membuka perangkat ini. Untuk informasi selengkapnya, hubungi admin organisasi Anda."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Batal"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Lain kali"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Lain kali"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Saya setuju"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Lewati sidik jari?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Penyiapan sidik jari hanya memerlukan waktu 1 atau 2 menit. Jika melewati langkah ini sekarang, Anda dapat menambahkan sidik jari lain kali di Setelan."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Cara kerjanya"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Buka dengan Sidik Jari membuat model unik sidik jari untuk memverifikasi diri Anda. Untuk membuat model sidik jari ini selama penyiapan, Anda akan mengambil gambar sidik jari dari berbagai posisi."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Buka dengan Sidik Jari membuat model unik dari sidik jari anak Anda untuk memverifikasi dirinya. Untuk membuat model sidik jari ini selama penyiapan, dia akan mengambil gambar sidik jari dari berbagai posisi."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Untuk memperoleh hasil terbaik, gunakan pelindung layar yang bersertifikasi Made for Google. Jika pelindung layar lain digunakan, sidik jari Anda mungkin tidak akan berfungsi."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Untuk hasil terbaik, gunakan pelindung layar yang bersertifikasi Made for Google. Jika menggunakan pelindung layar lain, sidik jari Anda mungkin tidak akan berfungsi."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Untuk memperoleh hasil terbaik, gunakan pelindung layar yang bersertifikasi Made for Google. Jika pelindung layar lain digunakan, sidik jari anak Anda mungkin tidak akan berfungsi."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Buka dengan Smartwatch"</string>
@@ -557,11 +558,11 @@
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Buka dengan Sidik Jari untuk ruang privasi"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Buka dengan Wajah untuk ruang privasi"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Buka dengan Wajah & Sidik Jari untuk ruang privasi"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Menyiapkan fitur Buka dengan Sidik Jari untuk ruang privasi"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Menyiapkan Buka dengan Sidik Jari untuk ruang privasi"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Gunakan sidik jari untuk membuka ruang privasi atau memverifikasi diri Anda, seperti saat login ke aplikasi atau menyetujui pembelian"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Ruang privasi Anda dapat dibuka meski Anda tidak bermaksud membukanya, misalnya saat seseorang menempelkan ponsel Anda ke jari Anda."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Menggunakan sidik jari Anda untuk membuka ruang privasi Anda atau menyetujui pembelian"</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Menyiapkan fitur Buka dengan Wajah untuk ruang privasi"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Menyiapkan Buka dengan Wajah untuk ruang privasi"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Gunakan wajah Anda untuk membuka ruang privasi atau memverifikasi diri Anda, seperti saat login ke aplikasi atau menyetujui pembelian"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Dengan melihat ponsel, Anda dapat membuka ruang privasi meski tidak bermaksud melakukannya. Ruang privasi Anda juga dapat dibuka oleh seseorang yang sangat mirip dengan Anda, seperti saudara kembar identik, atau jika seseorang mengarahkan perangkat tersebut ke wajah Anda."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Menggunakan wajah Anda untuk membuka ruang privasi mungkin kurang aman dibandingkan dengan pola, PIN, atau sandi yang kuat"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Setiap kali perangkat terkunci"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 menit setelah waktu tunggu layar"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Hanya setelah perangkat dimulai ulang"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Sembunyikan ruang privasi"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Sembunyikan ruang privasi saat dikunci"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Agar orang lain tidak dapat melihat ruang privasi Anda di perangkat, Anda dapat menyembunyikannya dari daftar aplikasi"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Siapkan"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Ruang privasi"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Sembunyikan atau kunci aplikasi pribadi di ruang terpisah. Gunakan Akun Google khusus agar lebih aman."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Siapkan ruang privasi"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Pilih Akun Google untuk ruang privasi Anda"</b>\n"Menggunakan akun khusus dapat membantu menghentikan file, foto, dan email yang disinkronisasi muncul di luar ruang"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Cara kerjanya"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Buat Akun Google untuk ruang Anda"</b>\n"Jika Anda menggunakan akun khusus, akun tersebut dapat membantu agar file, foto, dan email yang disinkronkan tidak muncul di luar ruang Anda"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Setel kunci"</b>\n"Kunci ruang privasi Anda agar orang lain tidak dapat membukanya"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instal aplikasi"</b>\n"Ruang privasi memiliki Play Store sendiri untuk memudahkan Anda menginstal aplikasi."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Aplikasi di ruang privasi tidak akan muncul di pengelola izin, dasbor privasi, dan setelan lainnya saat ruang privasi Anda dikunci.\n\nRuang privasi Anda tidak dapat dipulihkan ke perangkat baru. Anda harus menyiapkan ruang privasi lain jika ingin menggunakannya di perangkat lain.\n\nSiapa pun yang menghubungkan perangkat Anda ke komputer atau menginstal aplikasi berbahaya ke perangkat Anda mungkin dapat mengakses ruang privasi Anda."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instal aplikasi"</b>\n"Instal aplikasi yang ingin Anda jadikan pribadi di ruang Anda"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Perlu diingat"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikasi berhenti saat Anda mengunci ruang"</b>\n"Saat Anda mengunci ruang, aplikasi di ruang Anda akan dihentikan dan Anda tidak akan menerima notifikasi dari aplikasi tersebut"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Pelajari lebih lanjut ruang privasi"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Proses ini perlu waktu beberapa saat"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Menyiapkan ruang privasi…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Anda dapat menyetel kunci baru hanya untuk ruang privasi, atau menggunakan kunci yang sama untuk membuka kunci perangkat"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Gunakan kunci layar"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Pilih kunci baru"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Tunggu sebentar…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Tunggu sebentar…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Semua siap"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Untuk menemukan ruang privasi, buka daftar aplikasi, lalu scroll ke bawah"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Selesai"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Setel PIN untuk ruang pribadi Anda"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Setel sandi untuk ruang pribadi Anda"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Setel pola untuk ruang pribadi Anda"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Buat Akun Google untuk membantu menjaga privasi data Anda"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Di layar berikutnya, Anda dapat login ke akun yang akan digunakan dengan ruang privasi"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Buat akun khusus untuk membantu mencegah data muncul di luar ruang privasi, seperti:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Foto, file, email, kontak, acara kalender, dan data lainnya yang disinkronkan"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Rekomendasi dan histori download aplikasi"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Histori penjelajahan, bookmark, dan sandi tersimpan"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Konten yang disarankan terkait aktivitas Anda di aplikasi ruang privasi"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Oke"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Kunci"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Sembunyikan"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Anda dapat menambahkan maksimal <xliff:g id="COUNT">%d</xliff:g> sidik jari"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sertifikat sistem"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Penyematan sertifikat"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detail jaringan"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Jaringan ini menggunakan protokol keamanan lama yang disebut WEP, yang kurang aman"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nama server"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Jenis"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Alamat MAC Wi-Fi perangkat"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Alamat bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Nomor seri"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Waktu aktif"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Waktu beroperasi"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Tanggal perakitan"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Tanggal penggunaan pertama"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Jumlah siklus"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Ketuk kanan bawah"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Ketuk pojok kanan bawah touchpad untuk melihat opsi lainnya"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Kecepatan kursor"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Gaya isian pointer"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Ubah gaya isian pointer ke warna hitam"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Ubah gaya isian pointer ke warna hijau"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Ubah gaya isian pointer ke warna kuning"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Ubah gaya isian pointer ke warna merah muda"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Ubah gaya isian pointer ke warna biru"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Pelajari gestur touchpad"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, kursor, scroll, geser, klik kanan, klik, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"klik kanan, ketuk"</string>
@@ -2030,7 +2033,7 @@
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"Warna dan gerakan"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Kontras warna"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Kontras yang lebih tinggi membuat teks, tombol, dan ikon tampak lebih jelas. Pilih kontras yang paling sesuai bagi Anda."</string>
- <string name="color_contrast_note" msgid="7592686603372566198">"Beberapa aplikasi mungkin tidak mendukung semua setelan kontras teks dan warna"</string>
+ <string name="color_contrast_note" msgid="7592686603372566198">"Beberapa aplikasi mungkin mendukung hanya sebagian setelan kontras teks dan warna"</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"Pratinjau"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 hari lalu"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Tidak ada}=1{1 jadwal disetel}other{# jadwal disetel}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Jangan Ganggu"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Mode Prioritas"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Hanya dapatkan notifikasi dari aplikasi dan orang yang penting"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Batasi gangguan"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Aktifkan mode Jangan Ganggu"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Edit"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Jadwal"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Jadwal"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Mengaktifkan secara otomatis"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Tambahkan kalender"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Gunakan kalender Anda"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Jadwal"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Setel jadwal"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Jadwal"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> jam, <xliff:g id="MINUTES">%2$d</xliff:g> mnt"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Jadwal"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Nonaktifkan notifikasi ponsel pada waktu tertentu"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Setel aturan Jangan Ganggu"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Aplikasi ini tidak mendukung setelan yang ditingkatkan"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Setelan lainnya"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Setelan lainnya tersedia di dalam aplikasi ini"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Periode tunggu"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Menggunakan Periode Tunggu"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Saat mendapatkan banyak notifikasi dalam waktu singkat, perangkat Anda akan memperkecil gangguan suara dan pop-up di layar. Panggilan, alarm, dan percakapan prioritas akan tetap memberikan peringatan seperti biasanya, dan semua notifikasi yang terkirim dapat ditemukan dengan mudah di Shade."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Terapkan pada profil kerja"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Diterapkan untuk aplikasi profil kerja"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Layanan bantuan VR"</string>
@@ -3742,7 +3749,7 @@
<string name="zen_mode_none_calls" msgid="2047166006414016327">"Tidak ada"</string>
<string name="zen_mode_none_messages" msgid="1386626352943268342">"Tidak ada"</string>
<string name="zen_mode_alarms" msgid="5989343060100771099">"Alarm"</string>
- <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Dari timer, alarm, sistem keamanan, dan aplikasi lainnya"</string>
+ <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Dari timer, alarm, sistem keamanan, dan aplikasi lain"</string>
<string name="zen_mode_alarms_list" msgid="334782233067365405">"alarm"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"Alarm"</string>
<string name="zen_mode_media" msgid="885017672250984735">"Suara media"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Aplikasi terpilih"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Tidak ada"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Semua"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Izinkan aplikasi mengganti"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikasi yang boleh menginterupsi"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Pilih aplikasi lain"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Ubah ke mode hanya alarm selama satu jam hingga {time}}other{Ubah ke mode hanya alarm selama # jam hingga {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Ubah ke mode hanya alarm hingga <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Ubah ke mode selalu ganggu"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Ganti nama"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Ubah ikon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Ubah ikon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Peringatan"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Tutup"</string>
<string name="device_feedback" msgid="5351614458411688608">"Kirim masukan tentang perangkat ini"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Kiri"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Kanan"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Casing"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Baterai"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel Setelan"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Paksa mode desktop"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Paksa mode desktop eksperimental di layar sekunder"</string>
@@ -4914,7 +4927,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Izinkan Modem Simulasi"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Izinkan perangkat ini menjalankan layanan Modem Simulasi untuk uji instrumentasi. Jangan aktifkan selama penggunaan normal ponsel"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Nonaktifkan perlindungan berbagi layar"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Menonaktifkan perlindungan sistem konten aplikasi yang sensitif untuk sesi berbagi layar mendatang"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Menonaktifkan perlindungan sistem untuk konten aplikasi yang sensitif pada sesi berbagi layar mendatang"</string>
<string name="media_controls_title" msgid="403271085636252597">"Media"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Sematkan pemutar media"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Untuk melanjutkan pemutaran dengan cepat, pemutar media tetap terbuka di Setelan Cepat"</string>
diff --git a/res/values-is/arrays.xml b/res/values-is/arrays.xml
index f13f517..1360f8c 100644
--- a/res/values-is/arrays.xml
+++ b/res/values-is/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index cd71388..bb42719 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Aftengja tæki?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Para nýtt tæki"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Kveikja sjálfkrafa aftur á morgun"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Para hægra eyra"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Para vinstra eyra"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Para hitt eyrað"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Para vinstra eyra"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Stillingar heyrnartækis"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Flýtileið, samhæfi við heyrnartæki"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Forstillingar"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Forstilling"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Tókst ekki að uppfæra forstillingu"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Hljóðúttak"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Um hljóðúttak"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Hætta við"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nei, takk"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ekki núna"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ég samþykki"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Meira"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Opna með andliti"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Hafðu í huga"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Notaðu fingrafarið til að taka símann úr lás eða staðfesta kaup.\n\nAthugaðu: Þú getur ekki notað fingrafarið til að taka lásinn af þessu tæki. Hafðu samband við kerfisstjóra fyrirtækisins þíns til að fá frekari upplýsingar."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Hætta við"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nei, takk"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ekki núna"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ég samþykki"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Viltu sleppa fingrafari?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Uppsetning fingrafars tekur bara eina eða tvær mínútur. Ef þú sleppir þessu skrefi geturðu bætt fingrafarinu við seinna í stillingunum."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Í hvert skipti sem tækið læsist"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 mínútum eftir að skjár slekkur á sér"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Aðeins eftir að tækið endurræsist"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Fela leynirými"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Fela leynirými þegar það er læst"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Til að aðrir sjái ekki að þú sért með leynirými í tækinu geturðu falið það á forritalistanum"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Setja upp"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Leynirými"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Feldu eða læstu einkaforritum í sérrými. Notaðu þar til gerðan Google-reikning til að auka öryggi."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Settu upp leynirými"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Veldu Google-reikning fyrir rýmið þitt"</b>\n"Með því að nota þar til gerðan Google-reikning hjálparðu til við að koma í veg fyrir að samstilltar skrár, myndir og tölvupóstar birtist utan rýmisins"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Svona virkar þetta"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Búðu til Google-reikning fyrir rýmið þitt"</b>\n"Ef þú notar sérstakan reikning hjálpar það til við að koma í veg fyrir að samstilltar skrár, myndir og tölvupóstur birtist fyrir utan rýmið þitt."</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Stilltu lás"</b>\n"Læstu rýminu til að koma í veg fyrir að aðrir geti opnað það"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Settu upp forrit"</b>\n"Leynirýmið þitt er með sína eigin Play Store svo þú getur sett upp forrit á einfaldan hátt."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Forrit í leynirýminu þínu birtast ekki í leyfisstjóra, á persónuverndarstjórnborði og í öðrum stillingum þegar leynirýmið er læst.\n\nEkki er hægt að endurheimta leynirými í öðru tæki. Þú þarft að setja upp nýtt leynirými ef þú vilt nota það í öðru tæki.\n\nHver sem er sem tengir tækið þitt við tölvu eða setur upp skaðleg forrit í tækinu gæti fengið aðgang að leynirýminu."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Settu upp forrit"</b>\n"Settu upp forrit sem þú vilt halda leyndum í rýminu þínu"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Hafðu í huga"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Forrit stöðvast þegar þú læsir rýminu þínu"</b>\n"Þegar þú læsir rýminu þínu eru forrit í því rými stöðvuð og þú færð ekki tilkynningar frá þeim"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Nánar um leynirými"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Þetta tekur stutta stund"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Setur upp leynirými…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Þú getur stillt nýjan lás bara fyrir leynirými, eða notað sama lás og þú notar til að opna tækið þitt"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Nota skjálás"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Velja nýjan lás"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Augnablik …"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Augnablik…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Allt tilbúið!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Farðu í forritalistann og flettu niður til að finna leynirýmið þitt"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Lokið"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Stilltu PIN-númer fyrir einkarýmið þitt"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Stilltu aðgangsorð fyrir leynirýmið þitt"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Stilltu mynstur fyrir einkarýmið þitt"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Stofnaðu Google-reikning til að hjálpa til við að halda gögnunum þínum lokuðum"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Á næstu síðu geturðu skráð þig inn á reikninginn sem þú vilt nota fyrir leynirýmið"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Stofnaðu þar til gerðan reikning til að hjálpa til við að koma í veg fyrir að gögnin þín birtist utan leynirýmis, s.s:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Samstilltar myndir, skrár, tölvupóstar, tengiliðir, dagatalsviðburðir og önnur gögn"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Niðurhalsferill og tillögur forrita"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Vafraferill, bókamerki og vistuð aðgangsorð"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Tillögur að efni sem tengist virkni þinni í forritum í leynirýminu"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Ég skil"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Læsa"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Fela"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Þú getur bætt við allt að <xliff:g id="COUNT">%d</xliff:g> fingraförum"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Kerfisvottorð"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Festing vottorðs"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Upplýsingar um net"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Þetta netkerfi notar eldri öryggissamskiptareglu sem kallast WEP, sem er ekki eins örugg"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Undirnetssía"</string>
<string name="server_name_title" msgid="7257095185810299066">"Heiti þjóns"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Gerð"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Wi‑Fi MAC-vistfang tækis"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-vistfang"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Raðnúmer"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Uppitími"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Notkunartími"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Framleiðsludagur"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Dagsetning fyrstu notkunar"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Fjöldi endurhleðslna"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Ýttu neðst til hægri"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Ýttu á hægra hornið neðst á snertifletinum til að sjá fleiri valkosti"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Hraði bendils"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Stíll bendilfyllingar"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Breyta stíl bendilfyllingar í svartan"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Breyta stíl bendilfyllingar í grænan"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Breyta stíl bendilfyllingar í gulan"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Breyta stíl bendilfyllingar í bleikan"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Breyta stíl bendilfyllingar í bláan"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Nánar um bendingar á snertifleti"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"snertiflötur, hljóðrásarhnappur, mús, bendill, fletta, strjúka, hægrismella, smella, bendill"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"hægrismella, ýta"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Engin}=1{1 áætlun stillt}one{# áætlun stillt}other{# áætlanir stilltar}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ónáðið ekki"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Forgangsstillingar"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Fáðu aðeins tilkynningar frá mikilvægum einstaklingum og forritum"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Takmarka truflanir"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Kveikja á „Ónáðið ekki“"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Breyta"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Áætlanir"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Áætlun"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Kveikja sjálfkrafa"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Bæta við dagatali"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Nota dagatalið þitt"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Áætlun"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Stilla áætlun"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Áætlun"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> klst. og <xliff:g id="MINUTES">%2$d</xliff:g> mín."</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Áætlun"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Þagga í símanum á vissum tíma"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Stilla reglur fyrir „Ónáðið ekki“"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Þetta forrit styður ekki endurbættar stillingar"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Fleiri stillingar"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Fleiri stillingar eru í boði í forritinu"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Fækkun"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Nota fækkun"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Þegar þú færð margar tilkynningar á skömmum tíma mun tækið þitt fækka hljóðtilkynningum og sprettigluggum á skjánum. Tilkynningar um símtöl, vekjara og forgangssamtöl munu enn birtast líkt og venjulega og auðvelt er að finna tilkynningar sem hafa borist í tilkynningaglugganum."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Nota fyrir vinnusnið"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Nota fyrir forrit á vinnusniði"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Hjálparþjónusta sýndarveruleika"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Valin forrit"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Engin"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Öll"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Leyfa forritum að hnekkja"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Forrit sem mega trufla"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Veldu fleiri forrit"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Skipta yfir í vekjara í aðeins eina klukkustund til kl. {time}}one{Skipta yfir í vekjara í aðeins # klukkustund til kl. {time}}other{Skipta yfir í vekjara í aðeins # klukkustundir til kl. {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Breyta í vekjara eingöngu til <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Breyta í truflanir alltaf"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Gefa nýtt heiti"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Breyta tákni"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Breyta tákni"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Viðvörun"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Loka"</string>
<string name="device_feedback" msgid="5351614458411688608">"Senda ábendingar um þetta tæki"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Vinstra"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Hægra"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Hulstur"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Rafhlaða"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Stillingasvæði"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Þvinga skjáborðsstillingu"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Þvinga tilraunaskjáborðsstillingu á öðrum skjá"</string>
@@ -4857,10 +4870,10 @@
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Ekki tókst að endursníða og strauja gagnaskiptinguna til að breyta henni í ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"16 kB-stilling krefst þess að ræsiforritið sé tekið úr lás"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Þú þarft að taka ræsiforrit tækisins úr lás áður en þú getur valið 16 kB-forritunarkostinn. Ekki er hægt að tryggja heilleika hugbúnaðarins í þessari stillingu og öll gögn símans kunna að vera í hættu á meðan ræsiforritið er ólæst. Öll notandagögn og stillingar verða straujaðar þegar 16 kB-stillingin er virkjuð. Þegar ræsiforritið hefur verið tekið úr lás mun virkjun 16 kB-stillingarinnar krefjast þess að tækið sé endurræst tvisvar sinnum. Þegar þú hefur virkjað þessa stillingu geturðu skipt á milli 4 kB- og 16 kB-stillinganna með því að endurræsa tækið einu sinni. Í þessum stillingum er slökkt á tilteknum eiginleikum og því munu einhver forrit ekki virka. Til að kveikja á framleiðslustillingu tækisins á ný þarftu að núllstilla tækið með því að skipta aftur yfir í 4 kB-stillingu og læsa ræsiforritinu. Taktu ræsiforritið úr lás og reyndu aftur. Leiðbeiningar um hvernig þetta er framkvæmt má finna á <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Notar 4 kB-stillingu óháðrar síðustillingar."</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Notar 4 kB-stillingu óháðrar síðustillingar"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Þú ert að nota 4 kB-stillingu óháðrar síðustillingar. Ekki er hægt að tryggja heilleika hugbúnaðarins í þessari stillingu og öll gögn símans kunna að vera í hættu á meðan ræsiforritið er ólæst. Í þessum stillingum er slökkt á tilteknum eiginleikum og því munu einhver forrit ekki virka. Til að kveikja á framleiðslustillingu tækisins á ný þarfðu að læsa ræsiforriti tækisins. Ýttu til að lesa meira."</string>
<string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Þú ert að nota 4 kB-stillingu óháðrar síðustillingar. Ekki er hægt að tryggja heilleika hugbúnaðarins í þessari stillingu og öll gögn símans kunna að vera í hættu á meðan ræsiforritið er ólæst. Í þessum stillingum er slökkt á tilteknum eiginleikum og því munu einhver forrit ekki virka. Til að kveikja á framleiðslustillingu tækisins á ný þarfðu að læsa ræsiforriti tækisins. Við þetta mun tækið núllstillast og kveikja á framleiðslustillingu á ný. Slökktu síðan á „Taka ræsiforrit úr lás“ í forritunarkostunum þegar tækið hefur ræst Android. Ef tækið er óstöðugt eða því tekst ekki að ræsa Android skaltu uppfæra tækið aftur með nýjustu útgáfu núllstillingarmynda af <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> eða fara á <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> og velja „Strauja tæki“, „Læsa ræsiforriti“ og „Þvinga uppfærslu allra deilda“."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Notar 16 kB-stillingu óháðrar síðustillingar."</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Notar 16 kB-stillingu óháðrar síðustillingar"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Þú ert að nota 16 kB-stillingu óháðrar síðustillingar. Ekki er hægt að tryggja heilleika hugbúnaðarins í þessari stillingu og öll gögn símans kunna að vera í hættu á meðan ræsiforritið er ólæst. Í þessum stillingum er slökkt á tilteknum eiginleikum og því munu einhver forrit ekki virka. Til að kveikja á framleiðslustillingu tækisins á ný þarftu að skipta aftur yfir í 4 kB-stillingu og læsa ræsiforriti tækisins. Ýttu til að lesa meira."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Þú ert að nota 16 kB-stillingu óháðrar síðustillingar. Ekki er hægt að tryggja heilleika hugbúnaðarins í þessari stillingu og öll gögn símans kunna að vera í hættu á meðan ræsiforritið er ólæst. Í þessum stillingum er slökkt á tilteknum eiginleikum og því munu einhver forrit ekki virka. Til að kveikja á framleiðslustillingu tækisins á ný þarftu að skipta aftur yfir í 4 kB-stillingu og læsa ræsiforriti tækisins. Við þetta mun tækið núllstillast og kveikja á framleiðslustillingu á ný. Slökktu síðan á „Taka ræsiforrit úr lás“ í forritunarkostunum þegar tækið hefur ræst Android. Ef tækið er óstöðugt eða því tekst ekki að ræsa Android skaltu uppfæra tækið aftur með nýjustu útgáfu núllstillingarmynda af <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> eða fara á <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> og velja „Strauja tæki“, „Læsa ræsiforriti“ og „Þvinga uppfærslu allra deilda“."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 kB-stilling óháðrar síðustillingar"</string>
@@ -4914,7 +4927,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Leyfa gervimótald"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Leyfðu þessu tæki að keyra gervimótaldsþjónustu fyrir prófun tækja. Ekki gera þetta virkt á meðan síminn er notaður á hefðbundinn hátt"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Slökkva á vörnum fyrir skjádeilingu"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Slökkva á kerfisvörnum fyrir viðkvæmt forritaefni fyrir væntanlegar skjádeilingarlotur"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Slökkva á kerfisvörnum gegn viðkvæmu forritaefni fyrir væntanlegar skjádeilingarlotur"</string>
<string name="media_controls_title" msgid="403271085636252597">"Margmiðlunarefni"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Festa efnisspilara"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Efnisspilarinn helst opinn í flýtistillingum svo hægt sé að ræsa spilun aftur í skyndi"</string>
diff --git a/res/values-it/arrays.xml b/res/values-it/arrays.xml
index 6b7b9fd..8263d22 100644
--- a/res/values-it/arrays.xml
+++ b/res/values-it/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index fb7b6aa..0e76def 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Scollegare il dispositivo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Accoppia nuovo dispositivo"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Riattiva automaticamente domani"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Accoppia orecchio dx"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Accoppia orecchio sx"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Accoppia l\'altro orecchio"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Accoppia orecchio sx"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Impostazioni protesi uditive"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Scorciatoia, compatibilità con apparecchi acustici"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Preset"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Impossibile aggiornare preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Uscita audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Informazioni su uscita audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Annulla"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"No, grazie"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Non ora"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Accetto"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Altro"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Sblocca con il volto"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Ricorda"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Utilizza la tua impronta per sbloccare il telefono o approvare un acquisto.\n\nNota: non puoi utilizzare la tua impronta per sbloccare questo dispositivo. Per ulteriori informazioni, contatta l\'amministratore dell\'organizzazione."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Annulla"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"No, grazie"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Non ora"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Accetto"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Saltare la configurazione?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"La configurazione dell\'impronta richiede solo un paio di minuti. Se salti questo passaggio, potrai aggiungere l\'impronta in seguito nelle impostazioni."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Come funziona"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Lo Sblocco con l\'Impronta crea un modello univoco della tua impronta per poter verificare la tua identità. Per creare il modello dell\'impronta durante la configurazione, dovrai acquisire immagini della tua impronta da diverse posizioni."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Lo Sblocco con l\'Impronta crea un modello univoco dell\'impronta di tuo figlio per poter verificare la sua identità. Per creare il modello dell\'impronta durante la configurazione, dovrà acquisire immagini della sua impronta da diverse posizioni."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Per risultati ottimali, usa una protezione per lo schermo con la certificazione Made For Google. Con altre protezioni per lo schermo la tua impronta potrebbe non funzionare."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Per risultati ottimali, usa una protezione per lo schermo con certificazione Made For Google. Con altre protezioni per lo schermo la tua impronta potrebbe non funzionare."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Per risultati ottimali, usa una protezione per lo schermo con la certificazione Made For Google. Con altre protezioni per lo schermo l\'impronta di tuo figlio potrebbe non funzionare."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Sblocco dall\'orologio"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Ogni volta che il dispositivo si blocca"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 min. dopo lo spegnimento dello schermo"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Solo dopo il riavvio del dispositivo"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Se usi un blocco diverso per lo spazio privato, potresti dover verificare la tua identità per aprire le app nello spazio privato."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Nascondi lo spazio privato"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Nascondi lo spazio privato quando è bloccato"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Per evitare che altre persone sappiano che hai uno spazio privato sul tuo dispositivo, puoi nasconderlo dal tuo elenco di app"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurazione"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Spazio privato"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Nascondi o blocca le app private in uno spazio separato. Usa un Account Google dedicato per una maggiore sicurezza."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configura il tuo spazio privato"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Scegli un Account Google per il tuo spazio"</b>\n"Utilizzando un account dedicato, le foto, le email e i file sincronizzati non verranno visualizzati al di fuori dello spazio."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Come funziona"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crea un Account Google per il tuo spazio"</b>\n"L\'utilizzo di un account dedicato consente di interrompere la sincronizzazione di file, foto e email al di fuori del tuo spazio"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Imposta un blocco"</b>\n"Blocca il tuo spazio per impedire ad altre persone di aprirlo."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installa app"</b>\n"Ogni spazio privato ha il suo Play Store, quindi puoi installare app con facilità."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Le app presenti nello spazio privato non vengono visualizzate nella gestione autorizzazioni, nella dashboard della privacy e in altre impostazioni quando lo spazio privato è bloccato.\n\nLo spazio privato non può essere ripristinato su un nuovo dispositivo. Dovrai configurare un altro spazio privato per poterlo usare su un altro dispositivo.\n\nChiunque colleghi il dispositivo a un computer o installi app dannose sul dispositivo potrebbe avere accesso al tuo spazio privato."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Installa le app"</b>\n"Installa le app che vuoi mantenere private nel tuo spazio"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Aspetti da considerare"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Le app vengono interrotte quando blocchi il tuo spazio"</b>\n"Quando blocchi il tuo spazio, le app al suo interno verranno interrotte e non ti invieranno notifiche"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Scopri di più sullo spazio privato"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"L\'operazione richiederà alcuni istanti"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configurazione dello spazio privato in corso…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Puoi impostare un nuovo blocco solo per lo spazio privato o mantenere lo stesso che usi per sbloccare il dispositivo"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Usa il blocco schermo"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Scegli un nuovo blocco"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Solo un secondo…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Solo un secondo…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Fatto."</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Per trovare il tuo spazio privato, vai all\'elenco delle app e scorri verso il basso"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Fine"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Imposta PIN per lo spazio privato"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Imposta password per lo spazio privato"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Imposta sequenza per lo spazio privato"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crea un Account Google per mantenere privati i tuoi dati"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Nella schermata successiva puoi accedere a un account da usare con lo spazio privato"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crea un account dedicato per impedire la visualizzazione dei dati al di fuori dello spazio privato, ad esempio:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Foto, file, contatti email, eventi nel calendario e altri dati sincronizzati"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Cronologia dei download delle app e consigli"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Cronologia di navigazione, preferiti e password salvate"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Contenuti suggeriti in base alla tua attività nelle app dello spazio privato"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Ok"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Blocca"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Nascondi"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Puoi aggiungere fino a <xliff:g id="COUNT">%d</xliff:g> impronte digitali"</string>
@@ -664,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Scegli un blocco schermo"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Scegli un nuovo blocco schermo"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Scegli un blocco per le app di lavoro"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Scegli nuovo blocco profilo di lavoro"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Scegli nuovo blocco per profilo lavoro"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Per maggiore sicurezza, imposta un blocco schermo alternativo"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Scegli il metodo di blocco schermo alternativo"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Se dimentichi il blocco schermo, l\'amministratore IT non può reimpostarlo."</string>
@@ -830,7 +827,7 @@
<string name="bluetooth_device_context_disconnect" msgid="4464167389972513232">"Disconnetti"</string>
<string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"Accoppia e connetti"</string>
<string name="bluetooth_empty_list_bluetooth_off" msgid="7326727272747345476">"Quando il Bluetooth è attivato, il tuo dispositivo può comunicare con altri dispositivi che si trovano nelle vicinanze"</string>
- <string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"Quando il Bluetooth è attivato, il tuo dispositivo può comunicare con altri dispositivi che si trovano nelle vicinanze. Funzionalità come Quick Share e Trova il mio dispositivo usano il Bluetooth."</string>
+ <string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"Quando il Bluetooth è attivato, il tuo dispositivo può comunicare con altri dispositivi Bluetooth che si trovano nelle vicinanze. Funzionalità come Quick Share e Trova il mio dispositivo usano il Bluetooth."</string>
<string name="bluetooth_scanning_on_info_message" msgid="786648535600075223">"Quando il Bluetooth è attivo, il dispositivo può comunicare con altri dispositivi Bluetooth nelle vicinanze.\n\nPer migliorare l\'esperienza sul dispositivo, app e servizi possono comunque cercare dispositivi nelle vicinanze in qualsiasi momento, anche quando il Bluetooth non è attivo. Questo può essere utile, ad esempio, per migliorare funzionalità e servizi basati sulla posizione. Puoi modificare questa opzione nelle impostazioni relative alla scansione Bluetooth."</string>
<string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"Quando il Bluetooth è attivato, il tuo dispositivo può comunicare con altri dispositivi Bluetooth che si trovano nelle vicinanze. Funzionalità come Quick Share e Trova il mio dispositivo usano il Bluetooth.\n\nApp e servizi possono comunque cercare dispositivi nelle vicinanze in qualsiasi momento, anche quando il Bluetooth non è attivo. Questo può essere utile, ad esempio, per migliorare funzionalità e servizi basati sulla posizione. Puoi modificare questa opzione nelle impostazioni di ricerca di dispositivi Bluetooth."</string>
<string name="bluetooth_scan_change" msgid="1744636222637390367">"Modifica"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificato di sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Blocco dei certificati"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Dettagli rete"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Questa rete utilizza un protocollo di sicurezza meno recente chiamato WEP, che è meno sicuro"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nome server"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipo"</string>
@@ -1178,7 +1176,7 @@
<string name="display_settings" msgid="7197750639709493852">"Display"</string>
<string name="accelerometer_title" msgid="7745991950833748909">"Rotazione automatica dello schermo"</string>
<string name="auto_rotate_option_off" msgid="2788096269396290731">"Off"</string>
- <string name="auto_rotate_option_on" msgid="5776678230808498171">"On"</string>
+ <string name="auto_rotate_option_on" msgid="5776678230808498171">"Attiva"</string>
<string name="auto_rotate_option_face_based" msgid="3438645484087953174">"On - Rotazione basata sul viso"</string>
<string name="auto_rotate_switch_face_based" msgid="9116123744601564320">"Riconoscimento facciale"</string>
<string name="auto_rotate_link_a11y" msgid="5146188567212233286">"Scopri di più sulla rotazione automatica"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Indirizzo MAC Wi‑Fi del dispositivo"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Indirizzo Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Numero di serie"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tempo di attività"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Tempo di attività"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data di produzione"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data del primo utilizzo"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Conteggio dei cicli"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Tocco in basso a destra"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Per più opzioni tocca l\'angolo destro in basso del touchpad"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocità del puntatore"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Stile riempimento puntatore"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Cambia riempim. puntatore in nero"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Cambia riempim. puntatore in verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Cambia riempim. puntatore in giallo"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Cambia riempim. puntatore in rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Cambia riempim. puntatore in blu"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Impara i gesti con il touchpad"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursore, scorrimento, scorrere, clic con il tasto destro del mouse, clic, puntatore"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"clic con il tasto destro del mouse, tocco"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nessuna}=1{1 pianificazione impostata}other{# pianificazioni impostate}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Non disturbare"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modalità priorità"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Ricevi soltanto le notifiche di app e persone importanti"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitare le interruzioni"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Attiva Non disturbare"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Aggiungi un calendario"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Utilizza il calendario"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programma"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Imposta una programmazione"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Programmazione"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> h, <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Pianificazione"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Disattiva la suoneria in orari specifici"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Imposta regole Non disturbare"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Questa app non supporta le impostazioni avanzate"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Altre impostazioni"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Altre impostazioni sono disponibili all\'interno di quest\'app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Attenuazione"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Usa l\'attenuazione"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Quando ricevi molte notifiche in un breve lasso di tempo, il tuo dispositivo ridurrà al minimo le interruzioni audio e i popup sullo schermo. Continuerai a ricevere avvisi relativi a chiamate, sveglie e conversazioni prioritarie, che potrai trovare facilmente nell\'area notifiche."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Applica ai profili di lavoro"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Applica alle app del profilo di lavoro"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Servizi di supporto VR"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"App selezionate"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nessuna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Tutti"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Consenti alle app di ignorarla"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"App che possono interrompere"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Seleziona altre app"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Passa alla modalità Solo sveglie per un\'ora, fino alle ore {time}}other{Passa alla modalità Solo sveglie per # ore, fino alle ore {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Cambia su Solo sveglie fino alle <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Cambia su Interrompi sempre"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Rinomina"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Modifica icona"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Modifica icona"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Avviso"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Chiudi"</string>
<string name="device_feedback" msgid="5351614458411688608">"Invia feedback sul dispositivo"</string>
@@ -4007,7 +4024,7 @@
<string name="system_alert_window_settings" msgid="6458633954424862521">"Mostra sopra altre app"</string>
<string name="permit_draw_overlay" msgid="4468994037192804075">"Consenti la visualizzazione sopra altre app"</string>
<string name="allow_overlay_description" msgid="1607235723669496298">"Consenti di mostrare questa app sopra le altre app in uso. Questa app potrà rilevare dove tocchi o cambiare gli elementi visualizzati sullo schermo."</string>
- <string name="media_routing_control_title" msgid="6402800638960066807">"Cambia uscita conten. multim."</string>
+ <string name="media_routing_control_title" msgid="6402800638960066807">"Cambia uscita multimediale"</string>
<string name="allow_media_routing_control" msgid="4907036637509360616">"Consenti ad app cambio uscita conten. multim."</string>
<string name="allow_media_routing_description" msgid="8343709701298051207">"Consenti a questa app di scegliere quale dispositivo collegato riproduce l\'audio o il video di altre app. Se lo consenti, questa app può accedere a un elenco di dispositivi disponibili, come cuffie e speaker, e scegliere quale dispositivo di output utilizzare per lo streaming o la trasmissione di audio o video."</string>
<string name="manage_external_storage_title" msgid="8024521099838816100">"Accesso a tutti i file"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Sinistra"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Destra"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Custodia"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batteria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Riquadro delle impostazioni"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forza la modalità desktop"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forza la modalità desktop sperimentale su display secondari"</string>
diff --git a/res/values-iw/arrays.xml b/res/values-iw/arrays.xml
index 44c7e80..5054fd8 100644
--- a/res/values-iw/arrays.xml
+++ b/res/values-iw/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 37d4af4..8692cee 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"לנתק את המכשיר?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"התאמה של מכשיר חדש"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"החיבור יופעל שוב אוטומטית מחר"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"התאמה באוזן ימין"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"התאמה באוזן שמאל"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"התאמה באוזן השנייה"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"התאמה באוזן שמאל"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ההגדרות של מכשיר השמיעה"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"קיצור דרך, תאימות למכשירי שמיעה"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"הגדרות קבועות מראש"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"הגדרה קבועה מראש"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"לא ניתן לעדכן את ההגדרה הקבועה מראש"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"פלט אודיו"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"מידע על פלט האודיו"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ביטול"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"לא, תודה"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"בפעם אחרת"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"בסדר"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"עוד"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ביטול נעילה באמצעות אימות פנים"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"חשוב לזכור"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"שימוש בטביעת אצבע כדי לבטל את הנעילה של הטלפון או לאשר רכישות.\n\nהערה: לא ניתן להשתמש בטביעת אצבע כדי לבטל את הנעילה של המכשיר הזה. לקבלת מידע נוסף, אפשר לפנות למנהל המערכת של הארגון."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ביטול"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"לא תודה"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"בפעם אחרת"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"בסדר"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"לא להגדיר טביעת אצבע עכשיו?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ההגדרה של טביעת האצבע אורכת דקה או שתיים. אם מדלגים עליה, אפשר להוסיף את טביעת האצבע מאוחר יותר בהגדרות."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"איך זה עובד"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"הפיצ\'ר \'ביטול הנעילה בטביעת אצבע\' יוצר תבנית ייחודית של טביעת האצבע שלך כדי לאמת את זהותך. תהליך היצירה של תבנית לטביעת האצבע כולל צילום תמונות של טביעת האצבע שלך מזוויות שונות."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"הפיצ\'ר \'ביטול הנעילה בטביעת אצבע\' יוצר תבנית ייחודית של טביעת האצבע של הילד או הילדה כדי לאמת את זהותם. כדי ליצור את התבנית הזו לטביעת האצבע במהלך ההגדרה, יהיה עליהם לצלם תמונות של טביעת האצבע מזוויות שונות."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"לקבלת התוצאות הטובות ביותר, כדאי להשתמש במגן מסך בעל אישור Made for Google. טביעת האצבע שלך עלולה לא לעבוד עם מגיני מסך אחרים."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"לקבלת התוצאות הטובות ביותר, כדאי להשתמש במגן מסך שקיבל אישור Made for Google. יכול להיות שטביעת האצבע שלך לא תעבוד עם מגני מסך אחרים."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"לקבלת התוצאות הטובות ביותר, כדאי להשתמש במגן מסך בעל אישור Made for Google. טביעת האצבע של הילד או הילדה עלולה לא לעבוד עם מגני מסך אחרים."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"ביטול נעילה עם השעון"</string>
@@ -555,13 +556,13 @@
<string name="private_space_face_title" msgid="3290402865367663079">"פתיחה ע\"י זיהוי הפנים"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"אפשר להקיש כדי להגדיר"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"הגדרת ביטול הנעילה בטביעת אצבע למרחב הפרטי"</string>
- <string name="private_space_face_unlock_title" msgid="462248384776453613">"הגדרת פתיחה ע\"י זיהוי הפנים למרחב הפרטי"</string>
+ <string name="private_space_face_unlock_title" msgid="462248384776453613">"הגדרה של פתיחת המרחב הפרטי על ידי זיהוי הפנים"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"ביטול נעילה בטביעת אצבע ובזיהוי הפנים למרחב הפרטי"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"הגדרה של ביטול הנעילה בטביעת אצבע למרחב הפרטי"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"אפשר להשתמש בטביעת האצבע כדי לבטל את הנעילה של המרחב הפרטי או כדי לאמת את הזהות שלך, למשל בכניסה לאפליקציות או באישור רכישה"</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"נעילת המרחב הפרטי עלולה להתבטל גם כשאין רצון בכך, למשל כשמישהו מחזיק את הטלפון בצמוד לאצבע שלך."</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"נעילת המרחב הפרטי עלולה להתבטל גם כשלא רוצים, למשל כשמישהו מחזיק את הטלפון בצמוד לאצבע שלך."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"אפשר להשתמש בטביעת אצבע כדי לבטל את הנעילה של המרחב הפרטי או כדי לאשר רכישות"</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"הגדרה של פתיחה ע\"י זיהוי הפנים למרחב הפרטי"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"הגדרה של פתיחת המרחב הפרטי על ידי זיהוי הפנים"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"אפשר להשתמש בזיהוי פנים כדי לבטל את הנעילה של המרחב הפרטי או כדי לאמת זהות, למשל בכניסה לאפליקציות או באישור רכישה"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"מבט לטלפון עשוי לבטל את הנעילה של המרחב הפרטי בלי כוונה. יכול להיות שהנעילה של המרחב הפרטי תתבטל גם אם מישהו שמאוד דומה לך (למשל אח או אחות תאומים) יסתכל במכשיר, או אם מישהו יחזיק את המכשיר מול הפנים שלך."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"ביטול הנעילה של המרחב הפרטי באמצעות זיהוי הפנים עלול להיות פחות בטוח משימוש בקו ביטול נעילה, בסיסמה או בקוד אימות חזקים"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"בכל פעם שהמכשיר ננעל"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 דקות אחרי הזמן הקצוב לכיבוי המסך"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"רק לאחר הפעלה מחדש של המכשיר"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"אם יש לך מנעול אחר למרחב הפרטי, יכול להיות שיהיה עליך לאמת את הזהות שלך כדי לפתוח אפליקציות במרחב הפרטי שלך."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"הסתרת המרחב הפרטי"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"הסתרת המרחב הפרטי כשהוא נעול"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"כדי למנוע מאנשים אחרים לדעת שיש לך מרחב פרטי במכשיר, אפשר להסתיר אותו מרשימת האפליקציות"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"הגדרה"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"המרחב הפרטי"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"אפשר להסתיר או לנעול אפליקציות פרטיות במרחב נפרד. מומלץ להשתמש בחשבון Google ייעודי לאבטחה נוספת."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"הגדרת המרחב הפרטי שלך"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548">""<b>"בחירת חשבון Google לשימוש במרחב הפרטי"</b>\n"שימוש בחשבון ייעודי עוזר למנוע הופעה של קבצים, תמונות ואימיילים מסונכרנים מחוץ למרחב הפרטי"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"איך זה עובד"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320">""<b>"יצירת חשבון Google למרחב הפרטי"</b>\n"אם משתמשים בחשבון ייעודי למרחב הפרטי, אפשר למנוע מקבצים, תמונות ואימיילים מסונכרנים להופיע מחוץ למרחב"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"הגדרת נעילה"</b>\n"אפשר לנעול את המרחב הפרטי כדי למנוע מאנשים אחרים לפתוח אותו"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498">""<b>"התקנת אפליקציות"</b>\n"למרחב הפרטי שלך יש חנות Play משלו כך שאפשר להתקין אפליקציות בקלות."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"אפליקציות במרחב הפרטי לא יופיעו בניהול ההרשאות, במרכז הבקרה להגדרות הפרטיות ובהגדרות אחרות כשהמרחב הפרטי נעול.\n\nלא ניתן לשחזר את נתוני המרחב הפרטי במכשיר חדש. כדי להשתמש במרחב פרטי במכשיר אחר, צריך להגדיר מרחב פרטי חדש.\n\nכל מי שיחבר את המכשיר שלך למחשב או יתקין אפליקציות זדוניות במכשיר שלך יוכל לגשת למרחב הפרטי שלך."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"התקנת אפליקציות"</b>\n"במרחב הפרטי אפשר להתקין אפליקציות שרוצים שיישארו פרטיות"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"חשוב לזכור"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"האפליקציות מפסיקות לפעול כשהמרחב הפרטי ננעל"</b>\n"כשנועלים את המרחב הפרטי, האפליקציות במרחב מפסיקות לפעול ולא נשלחות מהן התראות"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"מידע נוסף על המרחב הפרטי"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"הפעולה הזו תימשך כמה רגעים"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"הגדרת המרחב הפרטי מתבצעת…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"אפשר להגדיר שיטת נעילה חדשה למרחב הפרטי בלבד, או להשתמש באותה שיטה שמשמשת לביטול נעילת המכשיר"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"שימוש בביטול נעילת המסך"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"בחירת נעילה חדשה"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"רק רגע…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"רק רגע…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"הכול מוכן!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"כדי למצוא את המרחב הפרטי שלך, עליך לעבור לרשימת האפליקציות ואז לגלול למטה"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"סיום"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"הגדרת קוד אימות למרחב הפרטי"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"הגדרת סיסמה למרחב הפרטי"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"הגדרת קו ביטול נעילה למרחב הפרטי"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"מומלץ ליצור חשבון Google כדי לשמור על פרטיות הנתונים"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"במסך הבא אפשר להיכנס לחשבון שישמש למרחב הפרטי"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"כדאי ליצור חשבון ייעודי כדי שנתונים לא יופיעו מחוץ למרחב הפרטי, למשל:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"תמונות מסונכרנות, קבצים, אימיילים, אנשי קשר, אירועים ביומן ונתונים אחרים"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"היסטוריית ההורדות של אפליקציות והמלצות"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"היסטוריית הגלישה, סימניות וסיסמאות שמורות"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"תוכן מוצע שקשור לפעילות שלך באפליקציות המרחב הפרטי"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"הבנתי"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"נעילה"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"הסתרה"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"אפשר להוסיף עד <xliff:g id="COUNT">%d</xliff:g> טביעות אצבע"</string>
@@ -664,12 +661,12 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"בחירה של נעילת מסך"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"בחירה של נעילת מסך חדשה"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"נעילת אפליקציות לעבודה"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"בחירת נעילה חדשה לעבודה"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"בחירת נעילה חדשה לפרופיל העבודה"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"לשיפור האבטחה, מומלץ להגדיר שיטת גיבוי לנעילת המסך"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"יש לבחור את שיטת הגיבוי לנעילת המסך"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"אם שכחת איך לבטל את נעילת המסך, מנהל ה-IT לא יוכל לאפס אותה."</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"אפשר להגדיר נעילה נפרדת לפרופיל העבודה"</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"שכחת את הנעילה הזו? עליך לבקש ממנהל ה-IT לאפס אותה"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"שכחת את הנעילה הזו? צריך לבקש מאדמין ב-IT לאפס אותה"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"אפשרויות לנעילת המסך"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"אפשרויות לנעילת המסך"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"ביטול נעילה באמצעות אישור אוטומטי"</string>
@@ -830,9 +827,9 @@
<string name="bluetooth_device_context_disconnect" msgid="4464167389972513232">"התנתקות"</string>
<string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"התאמה וחיבור"</string>
<string name="bluetooth_empty_list_bluetooth_off" msgid="7326727272747345476">"עם Bluetooth מופעל, המכשיר יכול לתקשר עם מכשירי Bluetooth אחרים בקרבת מקום"</string>
- <string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"כשחיבור ה-Bluetooth מופעל, המכשיר יכול לתקשר עם מכשירי Bluetooth אחרים בקרבת מקום. תכונות כמו \'שיתוף מהיר\' ו\'איפה המכשיר שלי\' משתמשות ב-Bluetooth."</string>
+ <string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"כשה-Bluetooth מופעל, המכשיר יכול לתקשר עם מכשירי Bluetooth אחרים בקרבת מקום. תכונות כמו \'שיתוף מהיר\' ו\'איפה המכשיר שלי\' מתבססות על Bluetooth."</string>
<string name="bluetooth_scanning_on_info_message" msgid="786648535600075223">"כשה-Bluetooth מופעל, המכשיר יכול לתקשר עם מכשירי Bluetooth אחרים שנמצאים בקרבת מקום.\n\nכדי לשפר את חוויית השימוש במכשיר, אפליקציות ושירותים יכולים לסרוק אחר מכשירים בקרבת מקום בכל שלב, גם כשה-Bluetooth כבוי. אפשר להשתמש בכך, למשל, כדי לשפר תכונות ושירותים שמבוססים על מיקום. ניתן לשנות זאת בהגדרות הסריקה של Bluetooth."</string>
- <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"כשחיבור ה-Bluetooth מופעל, המכשיר יכול לתקשר עם מכשירי Bluetooth אחרים בקרבת מקום. תכונות כמו \'שיתוף מהיר\' ו\'איפה המכשיר שלי\' משתמשות ב-Bluetooth.\n\nאפליקציות ושירותים עדיין יכולים לסרוק כדי למצוא מכשירים קרובים בכל שלב, גם כשחיבור ה-Bluetooth מושבת. זה יכול לשמש, למשל, כדי לשפר תכונות ושירותים מבוססי מיקום. אפשר לשנות את זה בהגדרות של סריקת Bluetooth."</string>
+ <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"כשה-Bluetooth מופעל, המכשיר יכול לתקשר עם מכשירי Bluetooth אחרים בקרבת מקום. תכונות כמו \'שיתוף מהיר\' ו\'איפה המכשיר שלי\' מתבססות על Bluetooth.\n\nאפליקציות ושירותים עדיין יכולים לסרוק כדי למצוא מכשירים קרובים בכל שלב, גם כשה-Bluetooth מושבת. זה יכול לשמש, למשל, כדי לשפר תכונות ושירותים מבוססי מיקום. אפשר לשנות את זה בהגדרות של סריקת Bluetooth."</string>
<string name="bluetooth_scan_change" msgid="1744636222637390367">"שינוי"</string>
<string name="device_details_title" msgid="1155622417516195481">"פרטי המכשיר"</string>
<string name="bluetooth_device_keyboard_settings_preference_title" msgid="3411693160917620519">"הגדרות מקלדת"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"אישור של המערכת"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"הצמדת האישור"</string>
<string name="wifi_details_title" msgid="222735438574597493">"פרטי הרשת"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"הרשת הזו משתמשת בפרוטוקול אבטחה יותר ישן ופחות מאובטח בשם WEP"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"מסכה של רשת משנה"</string>
<string name="server_name_title" msgid="7257095185810299066">"שם השרת"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"סוג"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"כתובת MAC של Wi-Fi של המכשיר"</string>
<string name="status_bt_address" msgid="6919660304578476547">"כתובת Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"מספר סידורי"</string>
- <string name="status_up_time" msgid="1274778533719495438">"זמן פעולה"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"זמן פעולה תקינה"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"תאריך הייצור"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"תאריך השימוש הראשון"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"מספר מחזורי הטעינה"</string>
@@ -1735,7 +1733,7 @@
<string name="forgot_password_text" msgid="2583194470767613163">"ניתן לקבל ממנו עזרה באיפוס קוד האימות, קו ביטול הנעילה או הסיסמה"</string>
<string name="advanced_settings" msgid="2368905204839169094">"הגדרות מתקדמות"</string>
<string name="advanced_settings_summary" msgid="1823765348195530035">"הפעלת אפשרויות הגדרה נוספות."</string>
- <string name="application_info_label" msgid="1015706497694165866">"פרטי אפליקציה"</string>
+ <string name="application_info_label" msgid="1015706497694165866">"פרטי האפליקציה"</string>
<string name="storage_label" msgid="2522307545547515733">"אחסון"</string>
<string name="auto_launch_label" msgid="4069860409309364872">"פתיחה כברירת מחדל"</string>
<string name="auto_launch_label_generic" msgid="5033137408273064599">"ברירות מחדל"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"מקישים על הפינה הימנית התחתונה"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"מקישים על הפינה הימנית התחתונה של לוח המגע לאפשרויות נוספות"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"מהירות המצביע"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"סגנון המילוי של המצביע"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"שינוי סגנון המילוי של המצביע לשחור"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"שינוי סגנון המילוי של המצביע לירוק"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"שינוי סגנון המילוי של המצביע לצהוב"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"שינוי סגנון המילוי של המצביע לוורוד"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"שינוי סגנון המילוי של המצביע לכחול"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"מידע על התנועות בלוח המגע"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"משטח-מגע, משטח מגע, עכבר, סמן, גלילה, החלקה, לחיצה ימנית, לחיצה, מצביע"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"לחיצה ימנית, הקשה"</string>
@@ -2157,8 +2161,8 @@
<string name="accessibility_shortcut_edit_dialog_summary_quick_settings" msgid="739883998754165940">"{count,plural, =1{מחליקים למטה מהחלק העליון של המסך}one{מחליקים למטה עם # אצבעות מהחלק העליון של המסך}two{מחליקים למטה עם # אצבעות מהחלק העליון של המסך}other{מחליקים למטה עם # אצבעות מהחלק העליון של המסך}}"</string>
<string name="accessibility_shortcut_edit_dialog_summary_quick_settings_suw" msgid="4216628328191609785">"{count,plural, =1{מחליקים למטה מהחלק העליון של המסך. קיצור הדרך יהיה זמין כשהגדרת המכשיר תסתיים.}one{מחליקים למטה עם # אצבעות מהחלק העליון של המסך. קיצור הדרך יהיה זמין כשהגדרת המכשיר תסתיים.}two{מחליקים למטה עם # אצבעות מהחלק העליון של המסך. קיצור הדרך יהיה זמין כשהגדרת המכשיר תסתיים.}other{מחליקים למטה עם # אצבעות מהחלק העליון של המסך. קיצור הדרך יהיה זמין כשהגדרת המכשיר תסתיים.}}"</string>
<string name="accessibility_feature_shortcut_setting_summary_quick_settings" msgid="7006526933552889373">"הגדרות מהירות"</string>
- <string name="accessibility_shortcut_edit_dialog_title_hardware" msgid="844089763968552142">"מקשי עוצמת הקול"</string>
- <string name="accessibility_shortcut_hardware_keyword" msgid="2483152542320987022">"מקשי עוצמת הקול"</string>
+ <string name="accessibility_shortcut_edit_dialog_title_hardware" msgid="844089763968552142">"לחצני עוצמת הקול"</string>
+ <string name="accessibility_shortcut_hardware_keyword" msgid="2483152542320987022">"לחצני עוצמת הקול"</string>
<string name="accessibility_shortcut_edit_dialog_summary_hardware" msgid="2503134386397991634">"יש ללחוץ לחיצה ארוכה על שני הלחצנים של עוצמת הקול"</string>
<string name="accessibility_shortcut_edit_dialog_title_two_finger_double_tap" msgid="2271778556854020996">"מקישים הקשה כפולה על המסך עם שתי אצבעות"</string>
<string name="accessibility_shortcut_edit_screen_title_two_finger_double_tap" msgid="8952595692906527694">"הקשה כפולה עם %1$d אצבעות"</string>
@@ -2317,7 +2321,7 @@
<string name="accessibility_hearing_device_about_title" msgid="7883758309646288250">"מידע על מכשירי שמיעה"</string>
<string name="accessibility_hearing_device_footer_summary" msgid="256061045064940818">"כדי למצוא מכשירי שמיעה אחרים שלא נתמכים על ידי ASHA או LE Audio, צריך להקיש על "<b>"התאמה של מכשיר חדש"</b>" > "<b>"הצגת מכשירים נוספים"</b></string>
<string name="accessibility_hearing_device_pairing_page_title" msgid="6608901091770850295">"התאמה של מכשיר השמיעה"</string>
- <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"בעמוד הזה אפשר להתאים מכשירי שמיעה של ASHA ו-LE Audio. צריך לוודא שמכשיר השמיעה מופעל ומוכן להתאמה."</string>
+ <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"כאן אפשר להתאים בין הטלפון למכשירי שמיעה של ASHA ו-LE Audio. לפני שמתחילים צריך לוודא שמכשיר השמיעה מופעל ומוכן להתאמה."</string>
<string name="accessibility_found_hearing_devices" msgid="637407580358386553">"מכשירי שמיעה זמינים"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"לא רואה את מכשיר השמיעה שלך?"</string>
<string name="accessibility_list_all_devices_title" msgid="161495343959211216">"הצגת מכשירים נוספים"</string>
@@ -2542,7 +2546,7 @@
<string name="battery_missing_link_message" msgid="6021565067124898074"></string>
<string name="battery_missing_link_a11y_message" msgid="3310971406602316323">"יש להקיש לקבלת מידע נוסף על השגיאה הזו"</string>
<string name="power_screen" msgid="4596900105850963806">"מסך"</string>
- <string name="power_cpu" msgid="1820472721627148746">"CPU"</string>
+ <string name="power_cpu" msgid="1820472721627148746">"(CPU) מעבד"</string>
<string name="power_flashlight" msgid="8993388636332573202">"פנס"</string>
<string name="power_camera" msgid="4778315081581293923">"מצלמה"</string>
<string name="power_gps" msgid="6352380895542498164">"GPS"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{אין}=1{הוגדר לוח זמנים אחד}one{הוגדרו # לוחות זמנים}two{הוגדרו # לוחות זמנים}other{הוגדרו # לוחות זמנים}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"נא לא להפריע"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"מצבי עדיפות"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"קבלת התראות רק מאפליקציות ומאנשים חשובים"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"הגבלת הפרעות"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"הפעלת מצב \'נא לא להפריע\'"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"הוספת יומן"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"שימוש ביומן"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"לוח זמנים"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"לוח זמנים"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"השתקת הטלפון בזמנים מסוימים"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"הגדרת כללים ל\'נא לא להפריע\'"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"האפליקציה הזו לא תומכת בהגדרות המשופרות"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"הגדרות נוספות"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"הגדרות נוספות זמינות בתוך האפליקציה הזו"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"הפחתת התראות"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"שימוש בהפחתת התראות"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"כשמתקבלות הרבה התראות בפרק זמן קצר, המכשיר יצמצם את כמות ההפרעות הקוליות והחלונות הקופצים במסך. המכשיר ימשיך לשלוח התראות כרגיל על שיחות, שעונים מעוררים ושיחות בעדיפות גבוהה. אפשר למצוא בקלות את כל ההתראות שנמסרו בלוח ההתראות."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"הפעלה בפרופילי העבודה"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"הפעלה באפליקציות של פרופיל העבודה"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"שירותי סיוע של VR"</string>
@@ -3665,7 +3680,7 @@
<string name="notification_badge_title" msgid="6854537463548411313">"הצגה של סימן ההתראות"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"הצגה של סימן ההתראות"</string>
<string name="app_notification_override_dnd_title" msgid="3769539356442226691">"התעלמות ממצב \'נא לא להפריע\'"</string>
- <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"ההתראות האלה יוכלו להמשיך ולהפריע כשמצב \'נא לא להפריע\' מופעל"</string>
+ <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"ההתראות האלה יוכלו להמשיך ולהפריע גם כשמצב \'נא לא להפריע\' מופעל"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"מסך נעילה"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"אישור"</string>
<string name="notification_show_lights_title" msgid="5564315979007438583">"אור מהבהב"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"אפליקציות שנבחרו"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"אף אחת מהאפשרויות"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"הכול"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ניתן לאפשר לאפליקציות לבטל הגדרה זו"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"אפליקציות שיכולות להפריע"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"בחירת אפליקציות נוספות"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{החלפה למצב \'התראות בלבד\' למשך שעה אחת עד {time}}one{החלפה למצב \'התראות בלבד\' למשך # שעות עד {time}}two{החלפה למצב \'התראות בלבד\' למשך שעתיים (#) עד {time}}other{החלפה למצב \'התראות בלבד\' למשך # שעות עד {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"מעבר למצב \'התראות בלבד\' עד <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"שינוי ל\'הפרעות בכל מצב\'"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"אזהרה"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"סגירה"</string>
<string name="device_feedback" msgid="5351614458411688608">"שליחת משוב על המכשיר הזה"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"שמאל"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ימין"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"נרתיק"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"סוללה"</string>
<string name="settings_panel_title" msgid="346363079938069215">"חלונית ההגדרות"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"אילוץ מצב שולחן עבודה"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"אילוץ מצב שולחן עבודה ניסיוני במסכים משניים"</string>
@@ -4854,7 +4878,7 @@
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"לפני השימוש באפשרות למפתחים של 16KB, צריך לבטל את הנעילה של תוכנת האתחול במכשיר הזה. לא ניתן להבטיח את תקינות התוכנה במצב הזה. כל הנתונים שמאוחסנים בטלפון בזמן שתוכנת האתחול לא נעולה עלולים להיות בסיכון. כל נתוני המשתמש וההגדרות יאופסו בהפעלת מצב 16KB. לאחר ביטול הנעילה של תוכנת האתחול יידרשו שתי הפעלות מחדש כדי שמצב 16KB ייכנס לתוקף. מהמצב הזה, אפשר לעבור בין מצב 4KB למצב 16KB בהפעלה אחת מחדש. חלק מהתכונות יושבתו במצבים האלה, כך שחלק מהאפליקציות לא יפעלו. כדי להחזיר את המכשיר למצב ייצור, צריך לחזור למצב 4KB ואז לנעול את תוכנת האתחול או את מצב ה-OEM של המכשיר (המכשיר יאופס להגדרות המקוריות). צריך לבטל את הנעילה של תוכנת האתחול ולנסות שוב. הוראות לביצוע הפעולה זמינות בכתובת <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"שימוש במצב לא מותאם לדף של 4KB"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"הפעילות שלך מתרחשת במצב לא מותאם לדף של 4KB. לא ניתן להבטיח את תקינות התוכנה במצב הזה. כל הנתונים שמאוחסנים בטלפון בזמן שתוכנת האתחול לא נעולה עלולים להיות בסיכון. חלק מהתכונות יושבתו במצבים האלה, כך שחלק מהאפליקציות לא יפעלו. כדי להיכנס שוב למצב ייצור, עליך לנעול את תוכנת האתחול של המכשיר. אפשר להקיש כדי לקרוא עוד."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"הפעילות שלך מתרחשת במצב לא מותאם לדף של 4KB. לא ניתן להבטיח את תקינות התוכנה במצב הזה. כל הנתונים שמאוחסנים בטלפון בזמן שתוכנת האתחול לא נעולה עלולים להיות בסיכון. חלק מהתכונות יושבתו במצבים האלה, כך שחלק מהאפליקציות לא יפעלו. כדי להיכנס שוב למצב ייצור, עליך לנעול את תוכנת האתחול של המכשיר. הפעולה הזו תאפס שוב את המכשיר להגדרות המקוריות ותשחזר את הגדרות הייצור. אחרי שהמכשיר מאותחל ל-Android, צריך להשבית את מצב OEM באפשרויות למפתחים. אם לא ניתן לאתחל את המכשיר ל-Android או שהוא לא יציב, צריך לעדכן במכשיר את גיבויי הקושחה בכתובת <a href=\"https://developers.google.com/android/images\">https://developers .google.com/android/images</a> או להשתמש ב-<a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ולבחור באפשרות \'איפוס נתונים במכשיר\' > \'נעילת תוכנת האתחול\' > \'כפיית עדכון על כל המחיצות\'."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"הפעילות שלך מתרחשת במצב 4KB השייך למצב שבו גודל הדף לא נקבע מראש על ידי מערכת ההפעלה. לא ניתן להבטיח את תקינות התוכנה במצב הזה. כל הנתונים שמאוחסנים בטלפון בזמן שתוכנת האתחול לא נעולה עלולים להיות בסיכון. חלק מהתכונות יושבתו במצבים האלה, כך שחלק מהאפליקציות לא יפעלו. כדי להיכנס שוב למצב ייצור, עליך לנעול את תוכנת האתחול של המכשיר. הפעולה הזו תאפס שוב את המכשיר להגדרות המקוריות ותשחזר את הגדרות הייצור. אחרי שהמכשיר מאותחל ל-Android, צריך להשבית את מצב OEM באפשרויות למפתחים. אם לא ניתן לאתחל את המכשיר ל-Android או שהוא לא יציב, צריך לעדכן במכשיר את גיבויי הקושחה בכתובת <a href=\"https://developers.google.com/android/images\">https://developers .google.com/android/images</a> או להשתמש ב-<a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ולבחור באפשרות \'איפוס נתונים במכשיר\' > \'נעילת תוכנת האתחול\' > \'כפיית עדכון על כל המחיצות\'."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"שימוש במצב מותאם לדף של 16KB"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"הפעילות שלך מתרחשת במצב לא מותאם לדף של 16KB. לא ניתן להבטיח את תקינות התוכנה במצב הזה. כל הנתונים שמאוחסנים בטלפון בזמן שתוכנת האתחול לא נעולה עלולים להיות בסיכון. חלק מהתכונות יושבתו במצבים האלה, כך שחלק מהאפליקציות לא יפעלו. כדי להיכנס שוב למצב ייצור, עליך לחזור למצב 4K ואז לנעול את תוכנת האתחול של המכשיר. אפשר להקיש כדי לקרוא עוד."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"מצב העבודה הנוכחי שלך הוא 16KB של מצב עבודה לא מותאם. אי אפשר להבטיח את תקינות התוכנה במצב הזה. כל הנתונים שמאוחסנים בטלפון בזמן שתוכנת האתחול לא נעולה עלולים להיות בסיכון. חלק מהתכונות יושבתו במצבים האלה, כך שחלק מהאפליקציות לא יפעלו. כדי להיכנס שוב למצב ייצור, עליך לחזור למצב 4K ואז לנעול את תוכנת האתחול של המכשיר. הפעולה הזו תאפס שוב את המכשיר להגדרות המקוריות ותשחזר את הגדרות הייצור. אחרי שהמכשיר מאותחל ל-Android, צריך להשבית את מצב OEM באפשרויות למפתחים. אם לא ניתן לאתחל את המכשיר ל-Android או שהוא לא יציב, צריך לעדכן במכשיר את גיבויי הקושחה בכתובת <a href=\"https://developers.google.com/android/images\">https://developers .google.com/android/images</a> או להשתמש ב-<a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ולבחור באפשרות \'איפוס נתונים במכשיר\' > \'נעילת תוכנת האתחול\' > \'כפיית עדכון על כל המחיצות\'."</string>
diff --git a/res/values-ja/arrays.xml b/res/values-ja/arrays.xml
index ceafd68..685af9f 100644
--- a/res/values-ja/arrays.xml
+++ b/res/values-ja/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 3dbc9b4..bff0a15 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"デバイスの接続を解除しますか?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"新しいデバイスとペア設定"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"明日自動的に ON に戻す"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"右耳をペア設定"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"左耳をペア設定"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"もう一方の耳をペア設定"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"左耳をペア設定"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"補聴器の設定"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ショートカット、補聴器両立性"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"プリセット"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"プリセット"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"プリセットを更新できませんでした"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"音声出力"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"音声出力について"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"キャンセル"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"使用しない"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"後で"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"同意する"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"もっと見る"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"顔認証でロックを解除"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"注意事項"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"指紋を使ってスマートフォンのロック解除や購入の承認を行えるようにします。\n\n注: 指紋を使ってこのデバイスのロックを解除することはできません。詳しくは、組織の管理者にお問い合わせください。"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"キャンセル"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"利用しない"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"後で"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"同意する"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"指紋の設定をスキップしますか?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"指紋の設定にかかる時間は 1~2 分です。スキップした場合は、後で設定から指紋を追加できます。"</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"仕組み"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"指紋認証は、さまざまな角度から指紋の画像を撮影して固有モデルを作成して、本人確認に使用します。"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"指紋認証は、お子様の指紋の固有モデルを作成し、本人確認に使用します。モデルの作成では、さまざまな角度から指紋の画像を撮影します。"</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"最適な結果を得るには、Made For Google 認定の画面保護シートを使用してください。認定されていないシートを使うと、指紋が認識されない可能性があります。"</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"最適な結果を得るには、Made For Google 認定の画面保護シートを使用してください。これ以外の画面保護シートを使うと、指紋が認識されないおそれがあります。"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"最適な結果を得るには、Made For Google 認定の画面保護シートを使用してください。認定されていないシートを使うと、お子様の指紋が認識されない可能性があります。"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"ウォッチ認証"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"デバイスのロック時は毎回"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"画面が自動消灯してから 5 分後"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"デバイスの再起動後のみ"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"プライベート スペース用に別のロックを使用するには、プライベート スペースでアプリを開くための本人確認が必要となることがあります。"</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"プライベート スペースを非表示にする"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ロックされているプライベート スペースを非表示にする"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"プライベート スペースがデバイスにあることを秘密にするために、アプリのリストで非表示にできます"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"設定"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"プライベート スペース"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"隔離スペースでプライベート アプリを非表示またはロックできます。セキュリティを強化するには、専用の Google アカウントを使用します。"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"プライベート スペースを設定する"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"スペース用の Google アカウントを選択する"</b>\n"専用のアカウントを使用することで、同期済みのファイル、写真、メールがスペースの外部で表示されないようにできます"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"仕組み"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"スペース用の Google アカウントを作成する"</b>\n"専用のアカウントを使用することで、同期済みのファイル、写真、メールがスペースの外部で表示されないようにできます"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ロックを設定する"</b>\n"スペースをロックして、他のユーザーが開けないようにできます"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"アプリをインストールする"</b>\n"プライベート スペース専用の Google Play ストアを使って、アプリを簡単にインストールできます。"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"プライベート スペースがロックされている場合、プライベート スペースにあるアプリは、権限マネージャ、プライバシー ダッシュボード、その他の設定に表示されません。\n\nプライベート スペースを新しいデバイスに復元することはできません。別のデバイスで使用したい場合は、別のプライベート スペースを設定する必要があります。\n\nお使いのデバイスをパソコンに接続したり、デバイスに悪意のあるアプリをインストールしたりしたユーザーが、あなたのプライベート スペースにアクセスできる可能性があります。"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"アプリをインストールする"</b>\n"スペース内で非公開にするアプリをインストールします"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"注意事項"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"スペースをロックするとアプリが停止する"</b>\n"スペースをロックするとアプリが停止して、アプリからの通知が届かなくなります"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"プライベート スペースの詳細"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"しばらくお待ちください"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"プライベート スペースを設定しています…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"プライベート スペース専用のロックを新しく設定するか、デバイスのロック解除と同じロックを使用することができます"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"画面ロックを使用"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"新しいロックを設定"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"お待ちください…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"お待ちください…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"設定完了"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"プライベート スペースを探すには、アプリのリストに移動してから下にスクロールします"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"完了"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"プライベート スペースの PIN を設定"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"プライベート スペースのパスワードの設定"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"プライベート スペースのパターンを設定"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"データのプライバシーを保護するために Google アカウントを作成してください"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"次の画面で、プライベート スペースで使用するアカウントにログインできます"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"専用のアカウントを作成して、以下のようなデータがプライベート スペースの外部で表示されないようにします: "</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"同期済みの写真、ファイル、メール、連絡先、カレンダーの予定、その他のデータ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"アプリのダウンロード履歴とおすすめ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"閲覧履歴、ブックマーク、保存したパスワード"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"プライベート スペース アプリでのアクティビティに関連したおすすめのコンテンツ"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ロック"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"非表示"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"最大で <xliff:g id="COUNT">%d</xliff:g> 件の指紋を追加できます"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"システムの証明書"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"証明書の固定"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ネットワークの詳細"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"このネットワークは安全性の低い旧式のセキュリティ プロトコルである WEP を使用しています"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"サブネット マスク"</string>
<string name="server_name_title" msgid="7257095185810299066">"サーバー名"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"タイプ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"デバイスの Wi‑Fi MAC アドレス"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth アドレス"</string>
<string name="status_serial_number" msgid="9060064164331466789">"シリアル番号"</string>
- <string name="status_up_time" msgid="1274778533719495438">"稼働時間"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"稼働時間"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"製造日"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"初回使用日"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"サイクル回数"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"右下をタップ"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"タッチパッドの右下をタップすると他のオプションが表示されます"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"ポインタの速度"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"ポインターの塗りつぶしスタイル"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"ポインターの塗りつぶしを黒色に変更"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"ポインターの塗りつぶしを緑色に変更"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"ポインターの塗りつぶしを黄色に変更"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"ポインターの塗りつぶしを桃色に変更"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"ポインターの塗りつぶしを青色に変更"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"タッチパッド操作を見る"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"トラックパッド, マウス, カーソル, スクロール, スワイプ, 右クリック, クリック, ポインタ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"右クリック, タップ"</string>
@@ -2320,7 +2324,7 @@
<string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"このページで ASHA と LE Audio 補聴器をペア設定できます。補聴器の電源が入っていて、ペア設定できる状態であることをご確認ください。"</string>
<string name="accessibility_found_hearing_devices" msgid="637407580358386553">"使用可能な補聴器"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"補聴器が表示されない場合"</string>
- <string name="accessibility_list_all_devices_title" msgid="161495343959211216">"他の機器を見る"</string>
+ <string name="accessibility_list_all_devices_title" msgid="161495343959211216">"他のデバイスを見る"</string>
<string name="accessibility_audio_adjustment_title" msgid="1332113739136802997">"音声の調整"</string>
<string name="accessibility_toggle_audio_description_preference_title" msgid="8916473886256061220">"音声による説明"</string>
<string name="accessibility_audio_description_summary" msgid="2554789094873781056">"対応する映画や番組にて、画面の表示内容の説明を読み上げます"</string>
@@ -2584,7 +2588,7 @@
<string name="battery_saver_turn_on_summary" msgid="1433919417587171160">"電池を長持ちさせる"</string>
<string name="battery_saver_sticky_title_new" msgid="5942813274115684599">"充電時に OFF にする"</string>
<string name="battery_saver_sticky_title_percentage" msgid="1178162022087559148">"<xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g> 充電されたら OFF にする"</string>
- <string name="battery_saver_sticky_description_new" msgid="8543277078136947874">"バッテリー セーバーは、バッテリー残量が <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g> を超えると OFF になります"</string>
+ <string name="battery_saver_sticky_description_new" msgid="8543277078136947874">"バッテリーの充電率が <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g> を超えたらバッテリー セーバーを OFF にします"</string>
<!-- no translation found for battery_saver_seekbar_title (3712266470054006641) -->
<skip />
<string name="battery_saver_seekbar_title_placeholder" msgid="7141264642540687540">"ON にする"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{なし}=1{1 件のスケジュールが有効}other{# 件のスケジュールが有効}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"サイレント モード"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"優先モード"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"大切な人やアプリからの通知のみ受け取ります"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"割り込みを制限する"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"サイレント モードを ON にする"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"カレンダーの追加"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"カレンダーを使用する"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"スケジュール"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"スケジュール"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"一時的にスマートフォンを消音"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"サイレント モード ルールの設定"</string>
@@ -3371,7 +3383,7 @@
<string name="zen_mode_restrict_notifications_enable_custom" msgid="4303255634151330401">"カスタム設定の有効化"</string>
<string name="zen_mode_restrict_notifications_disable_custom" msgid="5062332754972217218">"カスタム設定の削除"</string>
<string name="zen_mode_restrict_notifications_summary_muted" msgid="2826459087306271381">"通知の表示"</string>
- <string name="zen_mode_restrict_notifications_summary_custom" msgid="6455811408721183198">"通知の一部非表示"</string>
+ <string name="zen_mode_restrict_notifications_summary_custom" msgid="6455811408721183198">"通知の一部を表示しない"</string>
<string name="zen_mode_restrict_notifications_summary_hidden" msgid="2157279412167366119">"通知の非表示"</string>
<string name="zen_mode_what_to_block_title" msgid="5692710098205334164">"表示オプションをカスタマイズ"</string>
<string name="zen_mode_block_effects_screen_on" msgid="8780668375194500987">"画面が ON のとき"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"このアプリは拡張設定に対応していません"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"その他の設定"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"このアプリ内でその他の設定を利用できます"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"クールダウン"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"クールダウンの使用"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"短時間に多くの通知が届いた場合、通知を知らせる音と画面上のポップアップがデバイスで最小限に抑えられます。通話、アラーム、優先度の高い会話については、通常どおり通知が届きます。受け取った通知はすべて [シェード] で簡単に確認できます。"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"仕事用プロファイルに適用する"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"仕事用プロファイルのアプリに適用する"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR ヘルパー サービス"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"選択したアプリ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"なし"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"すべて"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"アプリのオーバーライドを許可"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"割り込み可能なアプリ"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"他のアプリを選択"</string>
@@ -3779,12 +3796,12 @@
<string name="zen_mode_people_none" msgid="4613147461974255046">"割り込み可能なユーザーはいません"</string>
<string name="zen_mode_people_some" msgid="9101872681298810281">"一部のユーザーが割り込み可能"</string>
<string name="zen_mode_people_all" msgid="311036110283015205">"すべてのユーザーが割り込み可能"</string>
- <string name="zen_mode_repeat_callers" msgid="2270356100287792138">"同一発信者による再着信"</string>
- <string name="zen_mode_repeat_callers_title" msgid="8016699240338264781">"同一発信者による再着信に割り込みを許可"</string>
+ <string name="zen_mode_repeat_callers" msgid="2270356100287792138">"同一番号からの再着信"</string>
+ <string name="zen_mode_repeat_callers_title" msgid="8016699240338264781">"同一番号からの再着信に割り込みを許可"</string>
<string name="zen_mode_all_callers" msgid="8104755389401941875">"全員"</string>
<string name="zen_mode_contacts_callers" msgid="5429267704011896833">"連絡先"</string>
<string name="zen_mode_starred_callers" msgid="1002370699564211178">"スター付きの連絡先"</string>
- <string name="zen_mode_repeat_callers_list" msgid="181819778783743847">"同一発信者による再着信"</string>
+ <string name="zen_mode_repeat_callers_list" msgid="181819778783743847">"同一番号からの再着信"</string>
<!-- no translation found for zen_mode_calls_summary_one (1928015516061784276) -->
<skip />
<string name="zen_mode_calls_summary_two" msgid="6351563496898410742">"<xliff:g id="CALLER_TYPE_0">%1$s</xliff:g>、<xliff:g id="CALLER_TYPE_1">%2$s</xliff:g>"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time}まで1時間、アラームのみに変更します}other{{time}まで#時間、アラームのみに変更します}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g>までアラームのみに変更します"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"常に割り込みに変更します"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"警告"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"閉じる"</string>
<string name="device_feedback" msgid="5351614458411688608">"このデバイスについてフィードバックを送信"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"左"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"右"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"ケース"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"バッテリー"</string>
<string name="settings_panel_title" msgid="346363079938069215">"設定パネル"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"デスクトップ モードに強制的に切り替え"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"セカンダリ ディスプレイで試験運用版デスクトップ モードに強制的に切り替えます"</string>
@@ -4909,7 +4933,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Mock Modem の許可"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"インストルメンテーション テストで Mock Modem サービスを実行することをこのデバイスに許可します。スマートフォンの通常の使用中はこの設定を有効にしないでください"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"画面共有の保護を無効にする"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"まもなく開始する画面共有セッションでアプリのデリケートなコンテンツに対するシステム保護を OFF にします"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"開始予定の画面共有セッションでアプリのデリケートなコンテンツに対するシステム保護を OFF にします"</string>
<string name="media_controls_title" msgid="403271085636252597">"メディア"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"メディア プレーヤーを固定する"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"再生をすばやく再開できるよう、[クイック設定] にメディア プレーヤーを開いたままにします"</string>
@@ -5114,7 +5138,7 @@
<string name="bluetooth_details_permissions_sync_title" msgid="7277580382321003521">"スマートフォンから権限を同期する"</string>
<string name="bluetooth_details_permissions_sync_summary" msgid="8125037984381432059">"このスマートフォンで許可したものと同じアプリの権限をスマートウォッチに付与してください"</string>
<string name="bluetooth_details_audio_device_types_title" msgid="1889644189800180316">"オーディオ機器の種類"</string>
- <string name="bluetooth_details_audio_device_type_unknown" msgid="5299284975435974206">"未設定"</string>
+ <string name="bluetooth_details_audio_device_type_unknown" msgid="5299284975435974206">"未指定"</string>
<string name="bluetooth_details_audio_device_type_speaker" msgid="3706227767994792124">"スピーカー"</string>
<string name="bluetooth_details_audio_device_type_headphones" msgid="7644588291215033798">"ヘッドフォン"</string>
<string name="bluetooth_details_audio_device_type_hearing_aid" msgid="6311786545025321187">"補聴器"</string>
diff --git a/res/values-ka/arrays.xml b/res/values-ka/arrays.xml
index e70a3e3..0ac0960 100644
--- a/res/values-ka/arrays.xml
+++ b/res/values-ka/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index b595cf5..46eb7b7 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"გსურთ მოწყობილობის დაკავშირების გაწყვეტა?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"ახალი მოწყობილობის დაწყვილება"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"ხელახლა ავტომატურად ჩართვა ხვალ"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"დააწყვილეთ მარჯვენა დინამიკი"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"მარცხენა დინამიკის დაკავშირება"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"დააწყვილეთ სხვა დინამიკი"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"მარცხენა დინამიკის დაკავშირება"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"სმენის აპარატის პარამეტრები"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"მალსახმობი, სმენის აპარატებთან თავსებადობა"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"წინასწარ დაყენებულები"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"წინასწარ დაყენებული"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"წინასწარ დაყენებულის განახლება ვერ მოხერხდა"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"გამომავალი აუდიო"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"აუდიოს გამოსატანის შესახებ"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"გაუქმება"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"არა, გმადლობთ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ახლა არა"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ვეთანხმები"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"მეტი"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"განბლოკეთ სახის მეშვეობით"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"გაითვალისწინეთ"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"გამოიყენეთ თქვენი თითის ანაბეჭდი ტელეფონის განსაბლოკად ან შენაძენების დასადასტურებლად.\n\nგაითვალისწინეთ: თითის ანაბეჭდს ამ მოწყობილობის განსაბლოკად ვერ გამოიყენებთ. დამატებითი ინფორმაციისთვის დაუკავშირდით თქვენი ორგანიზაციის ადმინისტრატორს."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"გაუქმება"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"არა, გმადლობთ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ახლა არა"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"თანახმა ვარ"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"გსურთ თითის ანაბეჭდის დაყენების გამოტოვება?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"თითის ანაბეჭდის დაყენებას მხოლოდ რამდენიმე წუთი სჭირდება. თუ ამ ეტაპს გამოტოვებთ, თითის ანაბეჭდის მოგვიანებით დამატებას პარამეტრებში შეძლებთ."</string>
@@ -563,11 +564,11 @@
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"გამოიყენეთ თქვენი თითის ანაბეჭდი, რათა განბლოკოთ თქვენი კერძო სივრცე ან დაადასტუროთ შენაძენები"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"კერძო სივრცისთვის სახით განბლოკვის დაყენება"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"გამოიყენეთ თქვენი სახე კერძო სივრცის განსაბლოკად ან ვინაობის დასადასტურებლად ისეთ შემთხვევებში, როცა აპებში შედიხართ ან შეძენას ადასტურებთ"</string>
- <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"ტელეფონზე შეხედვას შეუძლია განბლოკოს კერძო სივრცე, თუნდაც ამის განზრახვა არ გქონდეთ. თქვენი კერძო სივრცის განბლოკვა შეუძლია ისეთ პირსაც, რომელიც ძალიან გგავთ, მაგალითად, ტყუპისცალმა, ან თუ ვინმე მოწყობილობას თქვენს სახესთან მიიტანს."</string>
+ <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"ტელეფონზე შეხედვას შეუძლია განბლოკოს კერძო სივრცე, თუნდაც ამის განზრახვა არ გქონდეთ. თქვენი კერძო სივრცის განბლოკვა შეუძლია ისეთ პირსაც, რომელიც ძალიან გგავთ, მაგალითად, ტყუპისცალს, ან თუ ვინმე მოწყობილობას თქვენს სახესთან მიიტანს."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"თქვენი კერძო სივრცის სახით განბლოკვა, შესაძლოა, ძლიერ ნიმუშზე, PIN-კოდსა და პაროლზე ნაკლებად დაცული იყოს"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"კერძო სივრცის განსაბლოკად თვალები გახელილი უნდა გქონდეთ. საუკეთესო შედეგის მისაღებად მოიხსენით მზის სათვალე."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"ახლა უკვე შეგიძლიათ სახით კერძო სივრცის განბლოკვა.\n\nგახსოვდეთ:\nერთდროულად მხოლოდ ერთი სახის დაყენება შეიძლება. სხვა სახის დასაყენებლად, წაშალეთ მიმდინარე.\n\nტელეფონზე დახედვამ შეიძლება უნებლიეთ განბლოკოს ის, თქვენი სურვილის საწინააღმდეგოდ.\n\nთქვენი კერძო სივრცე შეიძლება განბლოკოს უცხო პირმა, თუ მოწყობილობას სახესთან მოგიტანთ.\n\nთქვენი კერძო სივრცე შეიძლება განბლოკოს უცხო პირმა, მაგალითად, ტყუპისცალმა."</string>
- <string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"სახით განბლოკვის გამოყენებისას ყოველთვის მოითხოვეთ დადასტურების ნაბიჯი"</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"ახლა უკვე შეგიძლიათ სახით კერძო სივრცის განბლოკვა.\n\nგახსოვდეთ:\nერთდროულად მხოლოდ ერთი სახის დაყენება შეიძლება. სხვა სახის დასაყენებლად, წაშალეთ მიმდინარე.\n\nტელეფონზე დახედვამ შეიძლება უნებლიეთ განბლოკოს ის, თქვენი სურვილის საწინააღმდეგოდ.\n\nთქვენი კერძო სივრცე შეიძლება განბლოკოს უცხო პირმა, თუ მოწყობილობას სახესთან მოგიტანთ.\n\nთქვენი კერძო სივრცე შეიძლება განბლოკოს პირმა, ვინც ძალიან გგავთ, მაგ., ტყუპისცალმა."</string>
+ <string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"სახით განბლოკვის გამოყენებისას ყოველთვის მოითხოვეთ დადასტურება"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"განბლოკვის ხერხები"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"მოწყობილობის იდენტური ეკრანის დაბლოკვის მეთოდი"</string>
<string name="private_space_new_lock_title" msgid="9056139964133004094">"კერძო სივრცისთვის ახალი საკეტის არჩევა"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ყოველთვის, როდესაც მოწყობილობა ჩაიკეტება"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"ეკრანის ავტომატურად გამორთვიდან 5 წუთში"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"მხოლოდ მოწყობილობის გადატვირთვის შემდეგ"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"კერძო სივრცის დამალვა"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"კერძო სივრცის დამალვა ჩაკეტვის დროს"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"თუ არ გსურთ, სხვებმა იცოდნენ, რომ თქვენს მოწყობილობაზე კერძო სივრცე გაქვთ, შეგიძლიათ, დამალოთ იგი თქვენი აპების გვერდიდან"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"დაყენება"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"კერძო სივრცე"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"დამალეთ ან ჩაკეტეთ პირადი აპები ცალკე სივრცეში. დამატებითი უსაფრთხოებისთვის გამოიყენეთ სპეციალური Google ანგარიში."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"თქვენი კერძო სივრცის დაყენება"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Google ანგარიშის არჩევა თქვენი სივრცისთვის"</b>\n"სპეციალური ანგარიშის გამოყენება სინქრონიზებული ფაილების, ფოტოებისა და ელფოსტის თქვენი სივრცის გარეთ გამოჩენას შეუშლის ხელს"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"მუშაობის პრინციპი"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Google ანგარიშის შექმნა თქვენი სივრცისთვის"</b>\n"სპეციალურად გამოყოფილი ანგარიშის გამოყენებისას სინქრონიზებული ფაილები, ფოტოები და ელფოსტა თქვენი სივრცის გარეთ აღარ გამოჩნდება"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ჩაკეტვის დაყენება"</b>\n"ჩაკეტეთ თქვენი სივრცე, რათა სხვებმა არ გახსნან"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"აპების ინსტალაცია"</b>\n"თქვენს კერძო სივრცეს თავისი Play Store აქვს, შესაბამისად, აპების ინსტალაცია მარტივად შეგიძლიათ."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"თქვენს კერძო სივრცეში არსებული აპები არ გამოჩნდება ნებართვების მმართველში, კონფიდენციალურობის საინფორმაციო დაფასა და სხვა პარამეტრებში, როდესაც თქვენი კერძო სივრცე ჩაკეტილია.\n\nთქვენი კერძო სივრცის ახალ მოწყობილობაში აღდგენა შეუძლებელია. თქვენ უნდა დააყენოთ სხვა კერძო სივრცე, თუ გსურთ მისი სხვა მოწყობილობაზე გამოყენება.\n\nნებისმიერს, ვინც თქვენს მოწყობილობას აკავშირებს კომპიუტერთან ან დააინსტალირებს მავნე აპებს თქვენს მოწყობილობაზე, შეიძლება ჰქონდეს წვდომა თქვენს კერძო სივრცეზე."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"აპების ინსტალაცია"</b>\n"დააინსტალირეთ აპები, რომლებიც გსურთ კონფიდენციალურად შეინახოთ თქვენს სივრცეში"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"გაითვალისწინეთ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"აპების მუშაობის შეწყვეტა თქვენი კერძო სივრცის ჩაკეტვისას"</b>\n"თქვენს კერძო სივრცეში არსებული აპების ჩაკეტვისას, ისინი შეწყვეტენ მუშაობას და მათგან შეტყობინებებს აღარ მიიღებთ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"შეიტყვეთ მეტი კერძო სივრცის შესახებ"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ამას ცოტა ხანი დასჭირდება"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"მიმდინარეობს პირადი სივრცის დაყენება…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"შეგიძლიათ დააყენოთ ახალი ჩაკეტვა მხოლოდ კერძო სივრცისთვის, ან გამოიყენოთ იგივე ჩაკეტვა, რომელსაც იყენებთ თქვენი მოწყობილობის განბლოკვისთვის"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"გამოიყენეთ ეკრანის დაბლოკვა"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"აირჩიეთ ახალი საკეტი"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ერთი წამით…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ერთი წამით…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"მზადაა!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"თქვენი კერძო სივრცის სანახავად გადადით თქვენი აპების სიაში, შემდეგ გადაადგილდით ქვემოთ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"მზადაა"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"დააყენეთ PIN თქვენი კერძო სივრცისთვის"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"დააყენეთ პაროლი თქვენი კერძო სივრცისთვის"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"დააყენეთ ნიმუში თქვენი კერძო სივრცისთვის"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"შექმენით Google ანგარიში თქვენი მონაცემების კონფიდენციალურობის შენარჩუნებისთვის"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"შემდეგ ეკრანზე შეგიძლიათ შეხვიდეთ ანგარიშში, რათა გამოიყენოთ ის თქვენს კერძო სივრცესთან ერთად"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"შექმენით სპეციალური ანგარიში, რომელიც დაგეხმარებათ შეაჩეროთ თქვენი კერძო სივრცის გარეთ შემდეგი მონაცემების გამოჩენა:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"სინქრონიზებული ფოტოები, ელფოსტები, კონტაქტები, კალენდარის მოვლენები და სხვა ინფორმაცია"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"აპლიკაციების ჩამოტვირთვების ისტორია და რეკომენდაციები"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"დათვალიერების ისტორია, სანიშნეები და შენახული პაროლები"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"კერძო სივრცის აპლიკაციებში თქვენი აქტივობის შესაბამისი შემოთავაზებული კონტენტი"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"გასაგებია"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ჩაკეტვა"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"დამალვა"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"შეგიძლიათ დაამატოთ მაქსიმუმ <xliff:g id="COUNT">%d</xliff:g> თითის ანაბეჭდი"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"სისტემის სერტიფიკატი"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"სერტიფიკატის ჩამაგრება"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ქსელის დეტალები"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ეს ქსელი იყენებს დაცვის შედარებით ძველ პროტოკოლს, სახელწოდებით WEP, რომელიც ნაკლებად დაცულია"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"ქვექსელის ნიღაბი"</string>
<string name="server_name_title" msgid="7257095185810299066">"სერვერის სახელი"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ტიპი"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"მოწყობილობის Wi‑Fi MAC მისამართი"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth მისამართი"</string>
<string name="status_serial_number" msgid="9060064164331466789">"სერიული ნომერი"</string>
- <string name="status_up_time" msgid="1274778533719495438">"მუშაობის დრო"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"მუშაობის დრო"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"წარმოების თარიღი"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"პირველი გამოყენების თარიღი"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ციკლების რაოდენობა"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ქვედა მარჯვენა მხარეს შეხება"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"სხვა ვარიანტ. შეეხეთ სენს. პანელის ქვედა მარჯვენა მხარეს"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"მანიშნებლის სიჩქარე"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"კურსორის სტილი"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"კურსორის სტილის შეცვლა შავად"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"კურსორის სტილის შეცვლა მწვანედ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"კურსორის სტილის შეცვლა ყვითლად"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"კურსორის სტილის შეცვლა ვარდისფრად"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"კურსორის სტილის შეცვლა ლურჯად"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"გაეცანით სენსორული ეკრანის ჟესტებს"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ტრეკპედი, ტრეკ პედი, მაუსი, კურსორი, გადაადგილება, გადაფურცვლა, მარჯვენა დაწკაპუნება, დაწკაპუნება, მანიშნებელი"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"მარჯვენა დაწკაპუნება, შეხება"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{არცერთი}=1{დაყენებულია 1 განრიგი}other{დაყენებულია # განრიგი}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"არ შემაწუხოთ"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"პრიორიტეტული რეჟიმები"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"შეტყობინებების მიღება მხოლოდ მნიშვნელოვანი ხალხისგან და აპებიდან"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"წყვეტების შეზღუდვა"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"„არ შემაწუხოთ“ რეჟიმის ჩართვა"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"რედაქტირება"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"განრიგები"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"განრიგი"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"ავტომატურად ჩართვა"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"კალენდრის დამატება"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"თქვენი კალენდრის გამოყენება"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"განრიგი"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"განრიგი"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ტელეფონის დადუმება გარკვეულ მომენტებში"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"ამ აპს არ აქვს გაძლიერებული პარამეტრების მხარდაჭერა"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"დამატებითი პარამეტრები"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"მეტი პარამეტრი ხელმისაწვდომია ამ აპში"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"განტვირთვის პერიოდი"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"განტვირთვის პერიოდის გამოყენება"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"როცა მცირე დროის განმავლობაში ბევრ შეტყობინებას იღებთ, თქვენი მოწყობილობა შეამცირებს ხმოვან შეფერხებებს და ეკრანზე ამომხტარ ფანჯრებს. ზარების, მაღვიძარების და პრიორიტეტული საუბრების გაფრთხილებები კვლავ ჩვეულ რეჟიმში იმუშავებს და ყველა მოწოდებული შეტყობინების პოვნა მარტივად შეგიძლიათ Shade-ში."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"გამოიყენეთ სამსახურის პროფილზე"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"სამსახურის პროფილის აპებზე გავრცელება"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"ვირტ. რეალობის დამხმარე სერვისები"</string>
@@ -3762,10 +3772,12 @@
<string name="zen_mode_events_list" msgid="7191316245742097229">"მოვლენები"</string>
<string name="zen_mode_events_list_first" msgid="7425369082835214361">"მოვლენები"</string>
<string name="zen_mode_apps_title" msgid="1691010857014041183">"აპები"</string>
- <string name="zen_mode_apps_category" msgid="4082380323683889391">"აპები, რომლებსაც შეწყვეტა შეუძლია"</string>
+ <string name="zen_mode_apps_category" msgid="4082380323683889391">"აპები, რომლებსაც შეწყვეტა შეუძლიათ"</string>
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"არჩეული აპები"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"არცერთი"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ყველა"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"აპებისთვის უგულებელყოფის დაშვება"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"აპები, რომლებსაც შეწყვეტა შეუძლია"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"მეტი აპის არჩევა"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{შეცვალეთ სიგნალიზაცია მხოლოდ ერთი საათის განმავლობაში {time}-მდე}other{მაღვიძარების შეცვლა მხოლოდ # საათის განმავლობაში {time}-მდე}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"მაღვიძარებზე მხოლოდ <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>-მდე გადაყვანა"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"„მუდმივად შეწყვეტის“ რეჟიმზე გადაყვანა"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"შენიშვნა"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"დახურვა"</string>
<string name="device_feedback" msgid="5351614458411688608">"გამოხმაურება ამ მოწყობილობის შესახებ"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"მარცხენა"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"მარჯვენა"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"ფუტლარი"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ბატარეა"</string>
<string name="settings_panel_title" msgid="346363079938069215">"პარამეტრების პანელი"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"დესკტოპის რეჟიმის იძულებით გააქტიურება"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"დესკტოპის ექსპერიმენტული რეჟიმის იძულებით გააქტიურება მეორეულ ეკრანებზე"</string>
diff --git a/res/values-kk/arrays.xml b/res/values-kk/arrays.xml
index ba44902..bc70f23 100644
--- a/res/values-kk/arrays.xml
+++ b/res/values-kk/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index fcc0eb5..1fd98f7 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Құрылғы ажыратылсын ба?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Жаңа құрылғымен жұптастыру"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Ертең автоматты түрде қосылсын"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Оң құлақты жұптау"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Сол құлақты жұптау"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Екінші құлақты жұптау"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Сол құлақты жұптау"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Есту құрылғысының параметрлері"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Жылдам пәрмен, есту аппаратының үйлесімділігі"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Параметрлер жинағы"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Параметрлер жинағы"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Параметрлер жинағы жаңартылмады."</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудио шығысы"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Аудио шығысы туралы"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Бас тарту"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Жоқ, рақмет"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Қазір емес"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Келісемін"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Әрі қарай"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Құлыпты бет көрсетіп ашу"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Есте сақтаңыз"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Саусақ ізімен телефон құлпын ашуға, тауар сатып алуға болады.\n\nЕскертпе: бұл құрылғының құлпын саусақ ізімен ашу мүмкін емес. Қосымша ақпарат алу үшін ұйым әкімшісіне хабарласыңыз."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Бас тарту"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Жоқ, рақмет"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Қазір емес"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Келісемін"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Саусақ ізі өткізіп жіберілсін бе?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Саусақ ізін реттеу бір не екі минутты ғана алады. Егер мұны өткізіп жіберсеңіз, саусағыңыздың ізін параметрлерден кейінірек қосуға болады."</string>
@@ -556,7 +557,7 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Реттеу үшін түртіңіз"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Құпия кеңістік үшін саусақ ізімен ашу функциясын пайдалану"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Құпия кеңістік үшін бет тану функциясын пайдалану"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Құпия кеңістікке арналған бет тану және саусақ ізімен ашу функциялары"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Құпия кеңістік үшін бет тану және саусақ ізімен ашу"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Құпия кеңістік үшін саусақ ізімен ашу функциясын реттеңіз"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Құпия кеңістік құлпын ашу немесе жеке басыңызды растау үшін (мысалы, қолданбаларға кіргенде не сатып алу транзакциясын растағанда) саусақ ізін пайдаланыңыз."</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Құпия кеңістік құлпын ашқыңыз келмесе де, біреу телефоныңызды саусағыңызға тақап тұрған кезде, ол ашылып кетуі мүмкін."</string>
@@ -566,7 +567,7 @@
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Әдейі істемесеңіз де, телефонға қараған кезде, құпия кеңістік құлпы ашылып кетуі мүмкін. Оның құлпын өзіңізге ұқсайтын біреу (мысалы, егіз бауырыңыз) ашып алуы мүмкін. Басқа адам құрылғыны бетіңізге тақаған кезде де құлып ашылады."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Құпия кеңістік құлпын бет үлгісін пайдаланып ашу қауіпсіздік тұрғысынан күштірек PIN кодына, құпия сөзге немесе өрнекке қарағанда әлсіздеу болуы мүмкін."</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Құпия кеңістік құлпын ашу үшін көзіңізді ашып тұру керек. Күннен қорғайтын көзілдірікті шешкен дұрыс болады."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Құпия кеңістік құлпын ашу үшін бет үлгісін пайдаланыңыз.\n\nЕсіңізде болсын:\nбір уақытта тек бір бет үлгісін реттей аласыз. Басқа бет үлгісін қосу үшін қазіргісін жойыңыз.\n\nӘдейі істемесеңіз де, телефонға қараған кезде, оның құлпы ашылып кетуі мүмкін.\n\nБасқа біреу құрылғыңызды бетіңізге жақындатып ұстап тұрып та, құпия кеңістік құлпын аша алады.\n\nОның құлпын өзіңізге ұқсайтын біреу (мысалы, егіз бауырыңыз) ашып алуы мүмкін."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Құпия кеңістік құлпын ашу үшін бет үлгісін пайдаланыңыз.\n\nЕсіңізде болсын:\nБір уақытта тек бір бет үлгісін реттей аласыз. Басқа бет үлгісін қосу үшін қазіргісін жойыңыз.\n\nӘдейі істемесеңіз де, телефонға қараған кезде, оның құлпы ашылып кетуі мүмкін.\n\nБасқа біреу құрылғыңызды бетіңізге жақындатып ұстап тұрып та, құпия кеңістік құлпын аша алады.\n\nОның құлпын өзіңізге ұқсайтын біреу (мысалы, егіз бауырыңыз) ашып алуы мүмкін."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Бет тану функциясын пайдаланғанда, үнемі растау қадамын сұрау"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Құлыпты ашу тәсілдері"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"Құрылғының экран құлпымен бірдей"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Құрылғы құлыпталған сайын"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Экран өшкеннен соң 5 минуттан кейін"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Құрылғы өшіріп қосылған соң ғана"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Құпия кеңістікті жасыру"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Құпия кеңістікті құлыптаған кезде жасыру"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Құрылғыңызда құпия кеңістік бар екенін басқа адамдар білмеуі үшін, оны қолданбалар тізімінен жасыруыңызға болады."</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Реттеу"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Құпия кеңістік"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Жеке қолданбаларыңызды бөлек кеңістікке жасырып қоюға немесе құлыппен жауып қоюға болады. Қосымша қауіпсіздік үшін арнайы Google аккаунтын пайдаланыңыз."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Құпия кеңістікті орнату"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Кеңістігіңізге Google аккаунтын таңдау"</b>\n"Арнайы аккаунтты пайдалансаңыз, синхрондалған файлдар, фотосуреттер мен электрондық хаттар кеңістігіңізден тыс көрсетілмейді."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Бұл қалай жұмыс істейді?"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Кеңістіңіз үшін Google аккаунтын жасау"</b>\n"Арнайы аккаунтты пайдалансаңыз, синхрондалған файлдар, фотосуреттер мен электрондық хаттар кеңістігіңізден тыс көрсетілмейді."</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Құлыптау функциясын орнату"</b>\n"Кеңістігіңізді басқа адамдар ашып алмауы үшін, оны құлыптаңыз."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Қолданбаларды орнату"</b>\n"Құпия кеңістігіңізде жеке Play Store болады, сондықтан қолданбаларды оңай орната аласыз."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Құпия кеңістік құлыпталып тұрған кезде, ондағы қолданбалар \"Рұқсаттарды басқару\" бөлімінде, құпиялық тақтасында және басқа параметрлерде көрсетілмейді.\n\nҚұпия кеңістікті жаңа құрылғыда қалпына келтіруге болмайды. Оны басқа құрылғыда пайдаланғыңыз келсе, басқа бір құпия кеңістікті реттеуіңіз керек.\n\nҚұрылғыңызды компьютерге жалғаған немесе оған зиянды қолданбалар орнатқан кез келген адам құпия кеңістікке кіре алады."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Қолданбалар орнату"</b>\n"Кеңістігіңізге құпия сақтағыңыз келетін қолданбаларды орнатуға болады."</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Есте сақтаңыз"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Кеңістігіңізді құлыптасаңыз, қолданбалардың жұмысы тоқтайды."</b>\n"Кеңістікті құлыптаған кезде, ондағы қолданбалар жұмысын тоқтатады және олардан хабарландырулар алмайсыз."</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Құпия кеңістік туралы толық ақпарат"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Бұған бірнеше минут кетеді."</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Құпия кеңістік реттеліп жатыр…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Құпия кеңістіктің өзіне жаңа құлып орната аласыз немесе құрылғыңыздың құлпын ашу үшін пайдаланатын құлыпты пайдалана аласыз."</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Экран құлпын пайдалану"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Жаңа құлып таңдау"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Күте тұрыңыз…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Күте тұрыңыз…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Бәрі дайын!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Құпия кеңістігіңізді табу үшін қолданбалар тізіміне өтіп, төмен айналдырыңыз."</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Дайын"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Жеке кеңістік үшін PIN кодын орнату"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Жеке кеңістік үшін құпия сөз орнату"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Жеке кеңістік үшін өрнек орнату"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Деректерді құпия ұстауға көмектесетін Google аккаунтын жасау"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Келесі экранда құпия кеңістікке пайдаланатын аккаунтқа кіре аласыз."</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Деректер құпия кеңістіктен тыс шығып кетпеуі үшін арнайы аккаунт жасаңыз:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Синхрондалған фотосуреттер, файлдар, электрондық хаттар, контактілер, күнтізбедегі іс-шаралар және тағы басқа деректер"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Қолданба жүктеп алу тарихы және ұсыныстар"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Браузерді қолдану тарихы, бетбелгілер және сақталған құпия сөздер"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Құпия кеңістік қолданбаларындағы әрекетке қатысты ұсынылған контент"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Түсінікті"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Құлыптау"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Жасыру"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"<xliff:g id="COUNT">%d</xliff:g> саусақ ізіне дейін қосуға болады"</string>
@@ -796,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{Кемінде 1 әріптік емес таңба болуы керек.}other{Кемінде # әріптік емес таңба болуы керек.}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{Кемінде 1 цифрлық емес таңба болуы керек.}other{Кемінде # цифрлық емес таңба болуы керек.}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"Құрылғы әкімшісі жуықтағы құпиясөзді қолдануға рұқсат бермейді"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Сандардың артатын, кемитін немесе қайталанатын ретіне рұқсат берілмейді"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Сандардың артатын, кемитін немесе қайталанатын ретіне рұқсат берілмейді."</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"Растау"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"Өшіру"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"Экран құлпы әлдеқашан өзгертілген. Жаңа экран құлпымен әрекетті қайталаңыз."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Жүйе сертификаты"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Сертификаттарды бекіту"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Желі мәліметі"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Бұл желіде WEP деп аталатын ескі қауіпсіздік протоколы пайдаланылады. Оның қауіпсіздік деңгейі төмен."</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Қосалқы желі маскасы"</string>
<string name="server_name_title" msgid="7257095185810299066">"Сервер атауы"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Түрі"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Құрылғының Wi‑Fi MAC мекенжайы"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth мекенжайы"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Сериялық нөмірі"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Қосылғаннан бергі жұмыс уақыты"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Қосылғаннан бергі жұмыс уақыты"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Жасалған уақыты"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Алғаш пайдаланылған уақыты"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Цикл саны"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Төменгі оң жақты түрту"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Қосымша опцияларды көру үшін сенсорлық тақтаның төменгі оң жақ бұрышын түртіңіз."</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Меңзер жылдамдығы"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Меңзердің бояу стилі"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Меңзердің бояу стилін қара түске өзгертеді."</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Меңзердің бояу стилін жасыл түске өзгертеді."</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Меңзердің бояу стилін сары түске өзгертеді."</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Меңзердің бояу стилін қызғылт түске өзгертеді."</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Меңзердің бояу стилін көк түске өзгертеді."</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Сенсорлық тақта қимылдарын үйрену"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"сенсорлық тақта, тінтуір, курсор, айналдыру, сырғыту, тінтуірдің оң жақ түймесін басу, басу, клик, меңзер"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"тінтуірдің оң жақ түймесін басу, түрту"</string>
@@ -2028,9 +2031,9 @@
<string name="general_category_title" msgid="6298579528716834157">"Жалпы"</string>
<string name="display_category_title" msgid="6638191682294461408">"Дисплей"</string>
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"Түс және қозғалыс"</string>
- <string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Түс конрасты"</string>
+ <string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Түс конрасы"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Жоғары контраст мәтінді, түймелерді және белгішелерді ерекшелейді. Өзіңізге ұнайтын контрасты таңдаңыз."</string>
- <string name="color_contrast_note" msgid="7592686603372566198">"Кейбір қолданбалар барлық түс және мәтін контрасты параметрін қолдамауы мүмкін."</string>
+ <string name="color_contrast_note" msgid="7592686603372566198">"Кейбір қолданбалар түс және мәтін контрасының барлық параметрін қолдамауы мүмкін."</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"Алғы көрініс"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Хелен, Адам"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 күн бұрын"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Жоқ}=1{1 кесте қойылған}other{# кесте қойылған}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Мазаламау"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Басымдылық режимдері"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Хабарландыруды маңызды адамдардан және қолданбалардан ғана алу"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Хабарландыруларды шектеу"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Мазаламау режимін қосу"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Өзгерту"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Кестелер"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Кесте"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Автоматты түрде қосу"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Күнтізбе қосыңыз"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Өз күнтізбеңізді пайдаланыңыз"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Жоспарлау"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Кесте"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Телефонды үнсіз режимге қою"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Бұл қолданбада жақсартылған параметрлерге қолдау көрсетілмейді."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Қосымша параметрлер"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Қолданбада қосымша параметрлер қолжетімді."</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Дыбысты азайту"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Дыбысты азайту параметрін пайдалану"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Қысқа уақыт аралығында көп хабарландыру алсаңыз, құрылғыңыз кедергі келтіретін дыбыстар мен экранда шығатын қалқымалы терезелер санын азайтады. Қоңыраулар, оятқыштар мен маңызды әңгімелер туралы хабарландырулар әдеттегідей келе береді. Жіберілген барлық хабарландыруды \"Shade\" бөлімінен оңай табуға болады."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Жұмыс профильдеріне қолдану"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Жұмыс профиліндегі қолданбаларға қолдану"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Көмекші VR қызметтері"</string>
@@ -3742,7 +3752,7 @@
<string name="zen_mode_none_calls" msgid="2047166006414016327">"Ешқандай қоңырауға рұқсат жоқ"</string>
<string name="zen_mode_none_messages" msgid="1386626352943268342">"Жоқ"</string>
<string name="zen_mode_alarms" msgid="5989343060100771099">"Оятқыштар"</string>
- <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Таймерден, оятқыштан, қауіпсіздік жүйесінен және басқа қолданбалардан шығатын дабыл"</string>
+ <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"Таймерлерден, оятқыштардан, қауіпсіздік жүйелерінен және басқа қолданбалардан шығатын сигнал"</string>
<string name="zen_mode_alarms_list" msgid="334782233067365405">"оятқыштар"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"Оятқыштар"</string>
<string name="zen_mode_media" msgid="885017672250984735">"Mультимeдиа дыбыстары"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Таңдалған қолданбалар"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Жоқ"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Барлығы"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Қолданбаларға қайта анықтауға рұқсат беру"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Тоқтата алатын қолданбалар"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Басқа да қолданбаларды таңдаңыз"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Мына уақытқа дейін оятқышқа бір сағатқа өзгерту: {time}}other{Мына уақытқа дейін оятқышқа # сағатқа өзгерту: {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> дейін \"дабылдар ғана\" режиміне өзгерту"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Әрқашан тоқтатуға өзгерту"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Ескерту"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Жабу"</string>
<string name="device_feedback" msgid="5351614458411688608">"Осы құрылғы туралы пікір жіберу"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Сол жақ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Оң жақ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Корпус"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Батарея"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Параметрлер панелі"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Жұмыс үстелінің режимін мәжбүрлеп қосу"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Қосымша дисплейлерде эксперименттік жұмыс үстелі режимін мәжбүрлеп қосу"</string>
@@ -4914,7 +4933,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Mock Modem қызметіне рұқсат беру"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Құрылғыға құралдарды сынау үшін Mock Modem қызметін іске қосуға рұқсат бересіз. Мұны телефонды әдеттегідей пайдаланған кезде қоспаңыз."</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Экранды көрсетуден қорғау функцияларын өшіру"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Экранды көрсетудің алдағы сеанстарындағы қолданбадағы құпия контентті қорғайтын жүйелік құралдар өшіріледі."</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Экранды көрсетудің алдағы сеанстарында қолданбадағы құпия контентті қорғайтын жүйелік құралдар өшіріледі."</string>
<string name="media_controls_title" msgid="403271085636252597">"Мультимедиа"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Медиа ойнатқышты бекіту"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Ойнатуды оңай жалғастыру үшін медиа ойнатқыш \"Жылдам параметрлер\" мәзірінде ашық тұрады."</string>
diff --git a/res/values-km/arrays.xml b/res/values-km/arrays.xml
index 2500cdd..7e896af 100644
--- a/res/values-km/arrays.xml
+++ b/res/values-km/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index 57dcd60..ce6fa44 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ផ្ដាច់ឧបករណ៍?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"ផ្គូផ្គងឧបករណ៍ថ្មី"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ប៊្លូធូស"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"បើកដោយស្វ័យប្រវត្តិម្ដងទៀតនៅថ្ងៃស្អែក"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"ផ្គូផ្គងឧបករណ៍ជំនួយការស្ដាប់ខាងស្ដាំ"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ផ្គូផ្គងឧបករណ៍ជំនួយការស្ដាប់ខាងឆ្វេង"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"ផ្គូផ្គងឧបករណ៍ជំនួយការស្ដាប់ម្ខាងទៀតរបស់អ្នក"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ផ្គូផ្គងឧបករណ៍ជំនួយការស្ដាប់ខាងឆ្វេង"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ការកំណត់ឧបករណ៍ជំនួយការស្ដាប់"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ផ្លូវកាត់ ភាពត្រូវគ្នាជាមួយនឹងឧបករណ៍ជំនួយការស្ដាប់"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"កំណត់ជាមុន"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"កំណត់ជាមុន"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"មិនអាចប្ដូរការកំណត់ជាមុនបានទេ"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ឧបករណ៍បញ្ចេញសំឡេង"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"អំពីឧបករណ៍បញ្ចេញសំឡេង"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"បោះបង់"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"ទេ អរគុណ!"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"កុំទាន់"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ខ្ញុំយល់ព្រម"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"ច្រើនទៀត"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ដោះសោដោយប្រើមុខរបស់អ្នក"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"សូមចងចាំ"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"ប្រើស្នាមម្រាមដៃរបស់អ្នកដើម្បីដោះសោទូរសព្ទរបស់អ្នក ឬយល់ព្រមលើការទិញ។\n\nចំណាំ៖ អ្នកមិនអាចប្រើស្នាមម្រាមដៃរបស់អ្នក ដើម្បីដោះសោឧបករណ៍នេះឡើយ។ សម្រាប់ព័ត៌មានបន្ថែម សូមទាក់ទងអ្នកគ្រប់គ្រងរបស់ស្ថាប័នអ្នក។"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"បោះបង់"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"ទេ អរគុណ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"កុំទាន់"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ខ្ញុំយល់ព្រម"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"រំលងស្នាមម្រាមដៃឬ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ការរៀបចំស្នាមម្រាមដៃចំណាយពេលត្រឹមតែមួយទៅពីរនាទីប៉ុណ្ណោះ។ ប្រសិនបើអ្នករំលងវា អ្នកអាចបញ្ចូលស្នាមម្រាមដៃរបស់អ្នកក្នុងការកំណត់នៅពេលក្រោយបាន។"</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"របៀបដែលវាដំណើរការ"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"ការដោះសោដោយស្កេនស្នាមម្រាមដៃបង្កើតគំរូស្នាមម្រាមដៃរបស់អ្នកខុសប្លែកពីគេ ដើម្បីផ្ទៀងផ្ទាត់ថាជាអ្នក។ ដើម្បីបង្កើតគំរូស្នាមម្រាមដៃនេះក្នុងអំឡុងពេលរៀបចំ អ្នកនឹងត្រូវថតរូបស្នាមម្រាមដៃរបស់អ្នកពីផ្នែកខុសៗគ្នា។"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"ការដោះសោដោយប្រើស្នាមម្រាមដៃបង្កើតគំរូស្នាមម្រាមដៃរបស់កូនអ្នកខុសប្លែកពីគេ ដើម្បីផ្ទៀងផ្ទាត់ថាជាគាត់។ ដើម្បីបង្កើតគំរូស្នាមម្រាមដៃនេះក្នុងអំឡុងពេលរៀបចំ គាត់នឹងត្រូវថតរូបស្នាមម្រាមដៃរបស់គាត់ពីផ្នែកខុសៗគ្នា។"</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ដើម្បីទទួលបានលទ្ធផលល្អបំផុត សូមប្រើកញ្ចក់ការពារអេក្រង់ដែលបានទទួលស្គាល់ពី Made for Google។ តាមរយៈកញ្ចក់ការពារអេក្រង់ផ្សេងទៀត ស្នាមម្រាមដៃរបស់អ្នកអាចមិនដំណើរការ។"</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ដើម្បីទទួលបានលទ្ធផលល្អបំផុត សូមប្រើកញ្ចក់ការពារអេក្រង់ដែលបានទទួលស្គាល់ពី Made for Google។ បើប្រើកញ្ចក់ការពារអេក្រង់ផ្សេងទៀត ស្នាមម្រាមដៃរបស់អ្នកអាចមិនដំណើរការ។"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ដើម្បីទទួលបានលទ្ធផលល្អបំផុត សូមប្រើកញ្ចក់ការពារអេក្រង់ដែលបានទទួលស្គាល់ពី Made for Google។ តាមរយៈកញ្ចក់ការពារអេក្រង់ផ្សេងទៀត ស្នាមម្រាមដៃរបស់អ្នកអាចមិនដំណើរការ។"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"ការដោះសោដោយប្រើនាឡិកា"</string>
@@ -565,7 +566,7 @@
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"ប្រើមុខរបស់អ្នក ដើម្បីដោះសោលំហឯកជនរបស់អ្នក ឬផ្ទៀងផ្ទាត់ថាជាអ្នកដូចជា នៅពេលអ្នកចូលកម្មវិធី ឬយល់ព្រមលើការទិញជាដើម"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"ការមើលទូរសព្ទអាចដោះសោលំហឯកជនបាន ទោះបីជាអ្នកមិនមានបំណងដោះសោក៏ដោយ។ អ្នកដែលមានមុខមាត់ស្រដៀងអ្នកខ្លាំង ដូចជាបងប្អូនភ្លោះ ឬប្រសិនបើនរណាម្នាក់លើកឧបករណ៍ឡើងចំពីមុខអ្នក ក៏អាចដោះសោលំហឯកជនរបស់អ្នកបានដែរ។"</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"ការប្រើមុខរបស់អ្នក ដើម្បីដោះសោលំហឯកជនរបស់អ្នកអាចមិនសូវមានសុវត្ថិភាពដូចការប្រើលំនាំ, កូដ PIN ឬពាក្យសម្ងាត់ដែលខ្លាំងនោះទេ"</string>
- <string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"ដើម្បីដោះសោលំហឯកជន ភ្នែករបស់អ្នកត្រូវតែបើក។ ដើម្បីទទួលបានលទ្ធផលល្អបំផុត សូមដោះវ៉ែនតាចេញ។"</string>
+ <string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"ដើម្បីដោះសោលំហឯកជន អ្នកត្រូវតែបើកភ្នែក។ ដើម្បីទទួលបានលទ្ធផលល្អបំផុត សូមដោះវ៉ែនតាការពារពន្លឺថ្ងៃចេញ។"</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"ប្រើមុខរបស់អ្នក ដើម្បីដោះសោលំហឯកជនរបស់អ្នក។\n\nសូមចងចាំថា៖\nអ្នកអាចរៀបចំមុខបានតែមួយប៉ុណ្ណោះក្នុងមួយលើក។ ដើម្បីបញ្ចូលមុខផ្សេងទៀត សូមលុបមុខបច្ចុប្បន្នចេញ។\n\nការមើលទៅទូរសព្ទអាចដោះសោឧបករណ៍នេះបាន សូម្បីពេលអ្នកមិនមានបំណងដោះសោក៏ដោយ។\n\nអ្នកផ្សេងអាចដោះសោលំហឯកជនរបស់អ្នក ប្រសិនបើឧបករណ៍របស់អ្នកដាក់នៅចំពីមុខរបស់អ្នក។\n\nអ្នកដែលមានមុខមាត់ស្រដៀងអ្នកខ្លាំង ដូចជាបងប្អូនភ្លោះ អាចដោះសោលំហឯកជនរបស់អ្នកបាន។"</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"តម្រូវឱ្យមានជំហានបញ្ជាក់ជានិច្ច នៅពេលប្រើការដោះសោដោយស្កេនមុខ"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"វិធីដោះសោ"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"រាល់ពេលឧបកណ៍ចាក់សោ"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 នាទីបន្ទាប់ពីរយៈពេលទម្រាំអេក្រង់បិទ"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"បន្ទាប់ពីឧបករណ៍ចាប់ផ្ដើមឡើងវិញតែប៉ុណ្ណោះ"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"ប្រសិនបើអ្នកប្រើសោផ្សេងសម្រាប់លំហឯកជនរបស់អ្នក នោះអ្នកអាចនឹងត្រូវផ្ទៀងផ្ទាត់ថាពិតជាអ្នកមែន ដើម្បីបើកកម្មវិធីនៅក្នុងលំហឯកជនរបស់អ្នក។"</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"លាក់លំហឯកជន"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"លាក់លំហឯកជន នៅពេលវាត្រូវបានចាក់សោ"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"ដើម្បីបញ្ឈប់អ្នកដទៃកុំឱ្យដឹងថា អ្នកមានលំហឯកជននៅលើឧបករណ៍របស់អ្នក អ្នកអាចលាក់លំហនោះពីបញ្ជីកម្មវិធីរបស់អ្នក"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"រៀបចំ"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"លំហឯកជន"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"លាក់ ឬចាក់សោកម្មវិធីឯកជននៅក្នុងលំហដាច់ដោយឡែក។ ប្រើគណនី Google ដាច់ដោយឡែកសម្រាប់សុវត្ថិភាពបន្ថែម។"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"រៀបចំលំហឯកជនរបស់អ្នក"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"ជ្រើសរើសគណនី Google សម្រាប់លំហរបស់អ្នក"</b>\n"ការប្រើគណនីដាច់ដោយឡែកជួយបញ្ឈប់ឯកសារ រូបថត និងអ៊ីមែលដែលបានធ្វើសមកាលកម្ម ដែលបង្ហាញនៅខាងក្រៅលំហរបស់អ្នក"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"របៀបដែលវាដំណើរការ"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"បង្កើតគណនី Google សម្រាប់លំហរបស់អ្នក"</b>\n"ប្រសិនបើអ្នកប្រើគណនីដាច់ដោយឡែក ការធ្វើបែបនេះជួយបញ្ឈប់ឯកសារ រូបថត និងអ៊ីមែលដែលបានធ្វើសមកាលកម្ម មិនឱ្យបង្ហាញឡើងនៅខាងក្រៅលំហរបស់អ្នក"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"កំណត់សោ"</b>\n"ចាក់សោលំហរបស់អ្នក ដើម្បីកុំឱ្យអ្នកដទៃបើកវាបាន"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ដំឡើងកម្មវិធី"</b>\n"លំហឯកជនរបស់អ្នកមាន Play Store របស់ខ្លួនផ្ទាល់ ដូច្នេះអ្នកអាចដំឡើងកម្មវិធីបានយ៉ាងងាយស្រួល។"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"កម្មវិធីនៅក្នុងលំហឯកជនរបស់អ្នកនឹងមិនបង្ហាញនៅក្នុងមុខងារគ្រប់គ្រងការអនុញ្ញាត ផ្ទាំងគ្រប់គ្រងឯកជនភាព និងការកំណត់ផ្សេងទៀតទេ នៅពេលលំហឯកជនរបស់អ្នកត្រូវបានចាក់សោ។\n\nមិនអាចស្ដារលំហឯកជនរបស់អ្នកទៅឧបករណ៍ថ្មីបានទេ។ អ្នកនឹងត្រូវរៀបចំលំហឯកជនមួយទៀត ប្រសិនបើអ្នកចង់ប្រើវាលើឧបករណ៍មួយទៀត។\n\nគ្រប់គ្នាដែលភ្ជាប់ឧបករណ៍របស់អ្នកទៅនឹងកុំព្យូទ័រ ឬដំឡើងកម្មវិធីគ្រោះថ្នាក់នៅលើឧបករណ៍របស់អ្នក ប្រហែលអាចចូលប្រើប្រាស់លំហឯកជនរបស់អ្នកបាន។"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ដំឡើងកម្មវិធី"</b>\n"ដំឡើងកម្មវិធីដែលអ្នកចង់រក្សាឱ្យមានភាពឯកជននៅក្នុងលំហរបស់អ្នក"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"សូមចងចាំ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"កម្មវិធីឈប់នៅពេលអ្នកចាក់សោលំហរបស់អ្នក"</b>\n"នៅពេលអ្នកចាក់សោលំហរបស់អ្នក កម្មវិធីនៅក្នុងលំហរបស់អ្នកត្រូវបានបញ្ឈប់ ហើយអ្នកនឹងមិនទទួលបានការជូនដំណឹងពីកម្មវិធីទាំងនេះទេ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ស្វែងយល់បន្ថែមអំពីលំហឯកជន"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"សកម្មភាពនេះនឹងចំណាយពេលបន្តិច"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"កំពុងរៀបចំលំហឯកជន…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"អ្នកអាចកំណត់សោថ្មីសម្រាប់លំហឯកជន ឬប្រើសោដូចគ្នាដែលអ្នកប្រើដើម្បីដោះសោឧបករណ៍របស់អ្នក"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ប្រើការចាក់សោអេក្រង់"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"ជ្រើសរើសការចាក់សោថ្មី"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"សូមរង់ចាំមួយភ្លែត…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"សូមរង់ចាំមួយភ្លែត…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"រួចហើយ!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"ដើម្បីរកលំហឯកជនរបស់អ្នក សូមចូលទៅកាន់បញ្ជីកម្មវិធីរបស់អ្នក រួចរំកិលចុះ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"រួចរាល់"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"កំណត់កូដ PIN សម្រាប់លំហឯកជនរបស់អ្នក"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"កំណត់ពាក្យសម្ងាត់សម្រាប់លំហឯកជនរបស់អ្នក"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"កំណត់លំនាំសម្រាប់លំហឯកជនរបស់អ្នក"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"បង្កើតគណនី Google ដើម្បីជួយរក្សាទិន្នន័យរបស់អ្នកឱ្យមានលក្ខណៈឯកជន"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"អ្នកអាចចូលគណនីណាមួយ ដើម្បីប្រើជាមួយលំហឯកជនរបស់អ្នកនៅលើអេក្រង់បន្ទាប់"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"បង្កើតគណនីដាច់ដោយឡែក ដើម្បីជួយបញ្ឈប់ទិន្នន័យមិនឱ្យបង្ហាញនៅខាងក្រៅលំហឯកជន ដូចជា៖"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"រូបថត ឯកសារ អ៊ីមែល ទំនាក់ទំនង ព្រឹត្តិការណ៍ក្នុងប្រតិទិន និងទិន្នន័យដែលបានធ្វើសមកាលកម្មផ្សេងទៀត"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ការណែនាំ និងប្រវត្តិទាញយកកម្មវិធី"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ប្រវត្តិរុករកតាមអ៊ីនធឺណិត ចំណាំ និងពាក្យសម្ងាត់ដែលបានរក្សាទុក"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ខ្លឹមសារដែលបានណែនាំពាក់ព័ន្ធនឹងសកម្មភាពរបស់អ្នកនៅក្នុងកម្មវិធីលំហឯកជន"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"យល់ហើយ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ចាក់សោ"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"លាក់"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"អ្នកអាចបញ្ចូលស្នាមម្រាមដៃបានត្រឹម <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -795,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{ត្រូវតែមានតួដែលមិនមែនជាអក្សរយ៉ាងហោចណាស់ 1}other{ត្រូវតែមានតួដែលមិនមែនជាអក្សរយ៉ាងហោចណាស់ #}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{ត្រូវតែមានតួដែលមិនមែនជាលេខយ៉ាងហោចណាស់ 1}other{ត្រូវតែមានតួដែលមិនមែនជាលេខយ៉ាងហោចណាស់ #}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"អ្នកគ្រប់គ្រងឧបករណ៍មិនអនុញ្ញាតឲ្យប្រើពាក្យសម្ងាត់បច្ចុប្បន្នទេ"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"មិនអនុញ្ញាតឲ្យមានលំដាប់ឡើង ចុះ ឬច្រំដែលទេ"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"មិនអនុញ្ញាតឲ្យមានលំដាប់ឡើង ចុះ ឬដដែលៗទេ"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"បញ្ជាក់"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"លុប"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"ចាក់សោអេក្រង់ត្រូវបានផ្លាស់ប្ដូរហើយ។ សូមព្យាយាមម្ដងទៀត ដោយប្រើការចាក់សោអេក្រង់ថ្មី។"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"វិញ្ញាបនបត្រប្រព័ន្ធ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"ការខ្ទាស់វិញ្ញាបនបត្រ"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ព័ត៌មានបណ្ដាញ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"បណ្ដាញនេះប្រើប្រូតូកូលសុវត្ថិភាពចាស់ដែលហៅថា WEP ដែលមិនសូវមានសុវត្ថិភាព"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"របាំងបណ្តាញរង"</string>
<string name="server_name_title" msgid="7257095185810299066">"ឈ្មោះម៉ាស៊ីនមេ"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ប្រភេទ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"អាសយដ្ឋាន MAC Wi‑Fi ឧបករណ៍"</string>
<string name="status_bt_address" msgid="6919660304578476547">"អាសយដ្ឋានប៊្លូធូស"</string>
<string name="status_serial_number" msgid="9060064164331466789">"លេខស៊េរី"</string>
- <string name="status_up_time" msgid="1274778533719495438">"រយៈពេលបើក"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ម៉ោងដំណើរការ"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"កាលបរិច្ឆេទផលិត"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"កាលបរិច្ឆេទនៃការប្រើដំបូង"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ចំនួនវដ្ដ"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ការចុចខាងស្ដាំផ្នែកខាងក្រោម"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"ចុចជ្រុងខាងស្ដាំផ្នែកខាងក្រោមនៃផ្ទាំងប៉ះសម្រាប់ជម្រើសបន្ថែម"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"ល្បឿនទស្សន៍ទ្រនិច"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"ស្តាយល៍បំពេញរបស់ព្រួញ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"ប្ដូរស្តាយល៍បំពេញរបស់ព្រួញទៅខ្មៅ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"ប្ដូរស្តាយល៍បំពេញរបស់ព្រួញទៅបៃតង"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"ប្ដូរស្តាយល៍បំពេញរបស់ព្រួញទៅលឿង"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"ប្ដូរស្តាយល៍បំពេញរបស់ព្រួញទៅផ្កាឈូក"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"ប្ដូរស្តាយល៍បំពេញរបស់ព្រួញទៅខៀវ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ស្វែងយល់អំពីចលនាផ្ទាំងប៉ះ"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ផ្ទាំងប៉ះ, ផ្ទាំងសម្រាប់ប៉ះ, ម៉ៅស៍, ទស្សន៍ទ្រនិច, រំកិល, អូស, ចុចម៉ៅស៍ខាងស្ដាំ, ចុច, ទ្រនិចរំកិល"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ចុចម៉ៅស៍ខាងស្ដាំ, ចុច"</string>
@@ -2028,13 +2032,13 @@
<string name="display_category_title" msgid="6638191682294461408">"បង្ហាញ"</string>
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"ពណ៌ និងចលនា"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"កម្រិតរំលេចពណ៌"</string>
- <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"កម្រិតពណ៌កាន់តែខ្ពស់ធ្វើឱ្យអក្សរ ប៊ូតុង និងរូបតំណាងកាន់តែលេចធ្លោ។ សូមជ្រើសរើសកម្រិតពណ៌ដែលមើលទៅល្អបំផុតសម្រាប់អ្នក។"</string>
+ <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"កម្រិតរំលេចពណ៌កាន់តែខ្ពស់ធ្វើឱ្យអក្សរ ប៊ូតុង និងរូបតំណាងកាន់តែលេចធ្លោ។ សូមជ្រើសរើសកម្រិតរំលេចពណ៌ដែលមើលទៅល្អបំផុតសម្រាប់អ្នក។"</string>
<string name="color_contrast_note" msgid="7592686603372566198">"កម្មវិធីមួយចំនួនប្រហែលជាមិនអាចប្រើការកំណត់កម្រិតពណ៌ និងកម្រិតរំលេចពណ៌អក្សរទាំងអស់បានទេ"</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"មើលសាកល្បង"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 ថ្ងៃមុន"</string>
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"ទាក់ទងបន្តឬ?"</string>
- <string name="color_contrast_preview_email_title" msgid="198712116139754823">"របាយការណ៍អំពីការធ្វើដំណើរបែបធុរកិច្ច"</string>
+ <string name="color_contrast_preview_email_title" msgid="198712116139754823">"របាយការណ៍អំពីដំណើរធុរកិច្ច"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"សម្រាប់ជំនួយបន្ថែម សូមទាក់ទងមកខ្ញុំផ្ទាល់ ឬ Helen។ របាយការណ៍នេះនឹង"</string>
<string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Client Expenses"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"អំពីកម្រិតរំលេចពណ៌"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{គ្មាន}=1{បានកំណត់កាលវិភាគ 1}other{បានកំណត់កាលវិភាគ #}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"កុំរំខាន"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ម៉ូដអាទិភាព"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"ទទួលការជូនដំណឹងពីកម្មវិធី និងមនុស្សសំខាន់ៗតែប៉ុណ្ណោះ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"កាត់បន្ថយការរំខាន"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"បើកមុខងារកុំរំខាន"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"បញ្ចូលប្រតិទិន"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ប្រើប្រតិទិនរបស់អ្នក"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"កាលវិភាគ"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"កាលវិភាគ"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"បិទសំឡេងទូរសព្ទក្នុងពេលជាក់លាក់"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"កំណត់ច្បាប់សម្រាប់មុខងារកុំរំខាន"</string>
@@ -3359,7 +3371,7 @@
<string name="mode_dark_theme_title_secondary_list" msgid="4761262694149772845">"បើកទម្រង់រចនាងងឹត"</string>
<string name="mode_dark_theme_summary" msgid="8428887193785431898">"ប្ដូរប្រព័ន្ធប្រតិបត្តិការ និងកម្មវិធីទៅអក្សរពណ៌ស្រាលដែលចង់ប្រើនៅលើផ្ទៃខាងក្រោយងងឹត ដែលអាចមានភាពងាយស្រួលជាងមុនសម្រាប់ភ្នែក និងជួយសន្សំថ្មបានច្រើននៅលើឧបករណ៍មួយចំនួន"</string>
<string name="mode_display_settings_summary" msgid="5929234706883482380">"{count,plural,offset:2 =0{មិនមានការផ្លាស់ប្ដូរចំពោះផ្ទាំងអេក្រង់ទេ}=1{{effect_1}}=2{{effect_1} និង {effect_2}}=3{{effect_1}, {effect_2} និង {effect_3}}other{{effect_1}, {effect_2} និង # ទៀត}}"</string>
- <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"ជម្រើសផ្ទាំងអេក្រង់សម្រាប់ការជូនដំណឹងដែលបានត្រង"</string>
+ <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"ជម្រើសបង្ហាញសម្រាប់ការជូនដំណឹងដែលបានត្រង"</string>
<string name="zen_mode_restrict_notifications_category" msgid="5870944770935394566">"នៅពេលបើកមុខងារកុំរំខាន"</string>
<string name="zen_mode_restrict_notifications_mute" msgid="6692072837485018287">"គ្មានសំឡេងពីការជូនដំណឹង"</string>
<string name="zen_mode_restrict_notifications_mute_summary" msgid="966597459849580949">"អ្នកនឹងឃើញការជូនដំណឹងនៅលើអេក្រង់របស់អ្នក"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"កម្មវិធីនេះមិនស្គាល់ការកំណត់ដែលប្រសើរឡើងទេ"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"ការកំណត់ច្រើនទៀត"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"អាចប្រើការកំណត់បានច្រើនទៀតនៅក្នុងកម្មវិធីនេះ"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"ឥទ្ធិពលក្រោយមក"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"ប្រើឥទ្ធិពលក្រោយមក"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"នៅពេលអ្នកទទួលបានការជូនដំណឹងច្រើនក្នុងរយៈពេលខ្លី ឧបករណ៍របស់អ្នកនឹងកាត់បន្ថយការរំខានដោយសំឡេង និងផ្ទាំងលោតឡើងនៅលើអេក្រង់។ ការហៅទូរសព្ទ ម៉ោរោទ៍ និងការសន្ទនាអាទិភាពនឹងនៅតែជូនដំណឹងជាធម្មតា ហើយការជូនដំណឹងដែលបានបញ្ជូនទាំងអស់ងាយស្រួលស្វែងរកនៅក្នុងផ្ទាំង។"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ដាក់ប្រើលើកម្រងព័ត៌មានការងារ"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ដាក់ប្រើលើកម្មវិធីកម្រងព័ត៌មានការងារ"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"សេវាកម្មជំនួយ VR"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"កម្មវិធីដែលបានជ្រើសរើស"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"គ្មាន"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ទាំងអស់"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"អនុញ្ញាតឱ្យកម្មវិធីលុបពីលើ"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"កម្មវិធីដែលអាចផ្អាកបាន"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"ជ្រើសរើសកម្មវិធីច្រើនទៀត"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{ប្ដូរទៅម៉ោងរោទ៍រយៈពេលតែមួយម៉ោងប៉ុណ្ណោះរហូតដល់ {time}}other{ប្ដូរទៅម៉ោងរោទ៍រយៈពេលតែ # ម៉ោងប៉ុណ្ណោះរហូតដល់ {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"ប្តូរទៅម៉ោងរោទិ៍រហូតទាល់តែដល់ <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> ប៉ុណ្ណោះ"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ប្តូរទៅរំខានជានិច្ច"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"ការព្រមាន"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"បិទ"</string>
<string name="device_feedback" msgid="5351614458411688608">"ផ្ដល់មតិកែលម្អអំពីឧបករណ៍នេះ"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ឆ្វេង"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ស្ដាំ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"ស្រោម"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ថ្ម"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ផ្ទាំងការកំណត់"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"បង្ខំមុខងារអេក្រង់ដើម"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"បង្ខំមុខងារអេក្រង់ដើមសាកល្បងនៅលើអេក្រង់ទីពីរ"</string>
@@ -4955,7 +4979,7 @@
<string name="default_active_sim_calls" msgid="2390973682556353558">"ការហៅទូរសព្ទ"</string>
<string name="default_active_sim_sms" msgid="8041498593025994921">"SMS"</string>
<string name="default_active_sim_mobile_data" msgid="6798083892814045301">"ទិន្នន័យទូរសព្ទចល័ត"</string>
- <string name="wifi_scan_notify_message" msgid="1331238142061476869">"ដើម្បីកែលម្អបទពិសោធន៍ប្រើប្រាស់ឧបករណ៍ កម្មវិធី និងសេវាកម្មនៅតែអាចស្កេនរកបណ្តាញ Wi-Fi បានគ្រប់ពេល ទោះបីជានៅពេលបិទ Wi-Fi ក៏ដោយ។ សកម្មភាពនេះអាចត្រូវបានប្រើដើម្បីកែលម្អមុខងារ និងសេវាកម្មដែលផ្អែកលើទីតាំងជាដើម។ អ្នកអាចប្ដូរវាបាននៅក្នុងការកំណត់ការស្កេន Wi‑Fi។"</string>
+ <string name="wifi_scan_notify_message" msgid="1331238142061476869">"ដើម្បីកែលម្អបទពិសោធប្រើប្រាស់ឧបករណ៍ កម្មវិធី និងសេវាកម្មនៅតែអាចស្កេនរកបណ្តាញ Wi-Fi បានគ្រប់ពេល ទោះបីជានៅពេលបិទ Wi-Fi ក៏ដោយ។ សកម្មភាពនេះអាចត្រូវបានប្រើដើម្បីកែលម្អមុខងារ និងសេវាកម្មដែលផ្អែកលើទីតាំងជាដើម។ អ្នកអាចប្ដូរវាបាននៅក្នុងការកំណត់ការស្កេន Wi‑Fi។"</string>
<string name="wifi_scan_change" msgid="8438320311511852918">"ផ្លាស់ប្ដូរ"</string>
<string name="preference_summary_default_combination" msgid="4643585915107796253">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="NETWORKMODE">%2$s</xliff:g>"</string>
<string name="mobile_data_connection_active" msgid="2422223108911581552">"បានភ្ជាប់"</string>
diff --git a/res/values-kn/arrays.xml b/res/values-kn/arrays.xml
index f8f2930..2cfc81f 100644
--- a/res/values-kn/arrays.xml
+++ b/res/values-kn/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index 9f0a4fe..274428f 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ಸಾಧನದ ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸುವುದೇ?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"ಹೊಸ ಸಾಧನ ಪೇರ್ ಮಾಡಿ"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ಬ್ಲೂಟೂತ್"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"ನಾಳೆ ಪುನಃ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಆನ್ ಮಾಡಿ"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"ಬಲಕಿವಿಯ ಶ್ರವಣ ಸಾಧನವನ್ನು ಜೋಡಿಸಿ"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ಎಡಕಿವಿಯ ಶ್ರವಣ ಸಾಧನವನ್ನು ಜೋಡಿಸಿ"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"ನಿಮ್ಮ ಮತ್ತೊಂದು ಕಿವಿಯ ಸಾಧನವನ್ನು ಜೋಡಿಸಿ"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ಎಡಕಿವಿಯ ಶ್ರವಣ ಸಾಧನವನ್ನು ಜೋಡಿಸಿ"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ಶ್ರವಣ ಸಾಧನದ ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ಶಾರ್ಟ್ಕಟ್, ಶ್ರವಣ ಸಾಧನ ಹೊಂದಾಣಿಕೆ"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"ಪ್ರಿಸೆಟ್ಗಳು"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ಪ್ರಿಸೆಟ್"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"ಪ್ರಿಸೆಟ್ ಅನ್ನು ಅಪ್ಡೇಟ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ಆಡಿಯೋ ಔಟ್ಪುಟ್"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ಆಡಿಯೋ ಔಟ್ಪುಟ್ ಕುರಿತು"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ರದ್ದುಮಾಡಿ"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"ಬೇಡ ಧನ್ಯವಾದಗಳು"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ಈಗ ಬೇಡ"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ನಾನು ಸಮ್ಮತಿಸುತ್ತೇನೆ"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"ಇನ್ನಷ್ಟು"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ನಿಮ್ಮ ಮುಖ ಬಳಸಿ ಅನ್ಲಾಕ್ ಮಾಡಿ"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ನೆನಪಿನಲ್ಲಿಡಿ"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"ನಿಮ್ಮ ಫೋನ್ ಅನ್ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ಖರೀದಿಗಳನ್ನು ಅನುಮೋದಿಸಲು ನಿಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಬಳಸಿ.\n\nಗಮನಿಸಿ: ಈ ಸಾಧನವನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ನಿಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ನು ನೀವು ಬಳಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ಹೆಚ್ಚಿನ ಮಾಹಿತಿಗಾಗಿ, ನಿಮ್ಮ ಸಂಸ್ಥೆಯ ನಿರ್ವಾಹಕರನ್ನು ಸಂಪರ್ಕಿಸಿ."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ರದ್ದುಮಾಡಿ"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"ಬೇಡ, ಧನ್ಯವಾದಗಳು"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ಈಗ ಬೇಡ"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ನಾನು ಸಮ್ಮತಿಸುತ್ತೇನೆ"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸ್ಕಿಪ್ ಮಾಡಬೇಕೇ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸೆಟಪ್ ಮಾಡಲು ಕೇವಲ ಒಂದು ಅಥವಾ ಎರಡು ನಿಮಿಷ ಸಾಕು. ನೀವು ಇದನ್ನು ಸ್ಕಿಪ್ ಮಾಡಿದರೆ, ನಂತರ ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ ನಿಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸೇರಿಸಬಹುದು."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"ಇದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ಲಾಕ್, ದೃಢೀಕರಣದ ಸಮಯದಲ್ಲಿ ನಿಮ್ಮನ್ನು ಗುರುತಿಸಲು ನಿಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ನ ವಿಶಿಷ್ಟ ಮಾಡೆಲ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ. ಸೆಟಪ್ ಮಾಡುವ ಸಮಯದಲ್ಲಿ ಈ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಮಾಡೆಲ್ ಅನ್ನು ರಚಿಸಲು, ನಿಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ನ ಚಿತ್ರಗಳನ್ನು ನೀವು ವಿವಿಧ ಸ್ಥಾನಗಳಿಂದ ತೆಗೆದುಕೊಳ್ಳುತ್ತೀರಿ."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"ದೃಢೀಕರಣದ ಸಮಯದಲ್ಲಿ ಗುರುತಿಸಲು ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ಲಾಕ್ ನಿಮ್ಮ ಮಗುವಿನ ಫಿಂಗರ್ಪ್ರಿಂಟ್ನ ವಿಶಿಷ್ಟ ಮಾಡೆಲ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ. ಸೆಟಪ್ ಸಮಯದಲ್ಲಿ ಈ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಮಾಡೆಲ್ ಅನ್ನು ರಚಿಸಲು, ಅವರು ತಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಚಿತ್ರಗಳನ್ನು ವಿವಿಧ ಆಯಾಮಗಳಲ್ಲಿ ತೆಗೆದುಕೊಳ್ಳುತ್ತಾರೆ."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ಉತ್ತಮ ಫಲಿತಾಂಶಗಳಿಗಾಗಿ, Google ಗಾಗಿ ಮಾಡಲಾಗಿದೆ ಎಂದು ಪ್ರಮಾಣೀಕರಿಸಿದ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ ಅನ್ನು ಬಳಸಿ. ಇತರ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ಗಳನ್ನು ಬಳಸಿದರೆ ನಿಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ಉತ್ತಮ ಫಲಿತಾಂಶಗಳಿಗಾಗಿ, Google ಗಾಗಿ ತಯಾರಿಸಲಾಗಿದೆ ಎಂದು ಪ್ರಮಾಣೀಕರಿಸಿದ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ ಅನ್ನು ಬಳಸಿ. ಇತರ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ಗಳನ್ನು ಬಳಸಿದರೆ ನಿಮ್ಮ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ಉತ್ತಮ ಫಲಿತಾಂಶಗಳಿಗಾಗಿ, Google ಗಾಗಿ ತಯಾರಿಸಲಾಗಿದೆ ಎಂದು ಪ್ರಮಾಣೀಕರಿಸಿದ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ ಅನ್ನು ಬಳಸಿ. ಇತರ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ಗಳನ್ನು ಬಳಸಿದರೆ ನಿಮ್ಮ ಮಗುವಿನ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"ವಾಚ್ ಅನ್ಲಾಕ್"</string>
@@ -559,7 +560,7 @@
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ಗೆ ಫೇಸ್ ಮತ್ತು ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ಲಾಕ್"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ಗೆ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ಲಾಕ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಿ"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"ನೀವು ಆ್ಯಪ್ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವಂತೆ ಅಥವಾ ಖರೀದಿಯನ್ನು ಅನುಮೋದಿಸುವಂತೆಯೇ, ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ನಿಮ್ಮ ಗುರುತನ್ನು ದೃಢೀಕರಿಸಲು ನಿಮ್ಮ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಅನ್ನು ಬಳಸಿ"</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ನೀವು ಬಯಸದಿದ್ದರೂ ಸಹ, ನಿಮ್ಮ ಬೆರಳ ತುದಿಗೆ ಫೋನ್ ಅನ್ನು ತರುವ ಮೂಲಕ ಯಾರಾದರೂ ಅದನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಬಹುದು."</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ನೀವು ಅನ್ಲಾಕ್ ಮಾಡಲು ಬಯಸದಿದ್ದರೂ ಸಹ, ನಿಮ್ಮ ಫೋನ್ ಅನ್ನು ನಿಮ್ಮ ಬೆರಳಿಗೆ ಟಚ್ ಮಾಡುವ ಮೂಲಕ ಯಾರಾದರೂ ಅದನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಬಹುದು."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ಖರೀದಿಗಳನ್ನು ಅನುಮೋದಿಸಲು ನಿಮ್ಮ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಅನ್ನು ಬಳಸಿ"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ಗೆ ಫೇಸ್ ಅನ್ಲಾಕ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಿ"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ನೀವು ಆ್ಯಪ್ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವಾಗ ಅಥವಾ ಖರೀದಿಯೊಂದನ್ನು ಅನುಮೋದಿಸುವಾಗ ನಿಮ್ಮ ಗುರುತನ್ನು ದೃಢೀಕರಿಸಲು ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ಪ್ರತಿ ಬಾರಿ ಸಾಧನ ಲಾಕ್ ಆಗುತ್ತದೆ"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"ಸ್ಕ್ರೀನ್ ಟೈಮ್ಔಟ್ ಆದ 5 ನಿಮಿಷಗಳ ನಂತರ"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"ಸಾಧನ ಮರುಪ್ರಾರಂಭವಾದ ನಂತರ ಮಾತ್ರ"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ಗಾಗಿ ನೀವು ಬೇರೆ ಲಾಕ್ ಅನ್ನು ಬಳಸಿದರೆ, ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ನಲ್ಲಿನ ಆ್ಯಪ್ಗಳನ್ನು ತೆರೆಯಲು ಇದು ನೀವೇ ಎಂದು ನೀವು ಪರಿಶೀಲಿಸಬೇಕಾಗಬಹುದು."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಮರೆಮಾಡಿ"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಲಾಕ್ ಆಗಿರುವಾಗ ಅದನ್ನು ಮರೆಮಾಡಿ"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"ನಿಮ್ಮ ಸಾಧನದಲ್ಲಿ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಇದೆ ಎಂಬುದು ಇತರರಿಗೆ ತಿಳಿಯುವುದನ್ನು ತಪ್ಪಿಸಲು, ನಿಮ್ಮ ಆ್ಯಪ್ಗಳ ಪಟ್ಟಿಯಿಂದ ನೀವು ಅದನ್ನು ಮರೆಮಾಡಬಹುದು"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"ಸೆಟಪ್ ಮಾಡಿ"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ಪ್ರೈವೆಟ್ ಆ್ಯಪ್ಗಳನ್ನು ಪ್ರತ್ಯೇಕ ಸ್ಪೇಸ್ನಲ್ಲಿ ಮರೆಮಾಡಿ ಅಥವಾ ಲಾಕ್ ಮಾಡಿ. ಹೆಚ್ಚುವರಿ ಭದ್ರತೆಗಾಗಿ ಸಮರ್ಪಿತ Google ಖಾತೆಯನ್ನು ಬಳಸಿ."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಿ"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"ನಿಮ್ಮ ಸ್ಪೇಸ್ಗಾಗಿ Google ಖಾತೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ"</b>\n"ಸಮರ್ಪಿತ ಖಾತೆಯನ್ನು ಬಳಸಿದರೆ, ಸಿಂಕ್ ಮಾಡಿದ ಫೈಲ್ಗಳು, ಫೋಟೋಗಳು ಮತ್ತು ಇಮೇಲ್ಗಳು ನಿಮ್ಮ ಸ್ಪೇಸ್ನ ಹೊರಗೆ ಕಾಣಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಲು ನೆರವಾಗುತ್ತದೆ"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"ಅದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"ನಿಮ್ಮ ಸ್ಪೇಸ್ಗಾಗಿ Google ಖಾತೆಯನ್ನು ರಚಿಸಿ"</b>\n"ನೀವು ಮೀಸಲಿರುವ ಖಾತೆಯನ್ನು ಬಳಸಿದರೆ, ಸಿಂಕ್ ಮಾಡಿದ ಫೈಲ್ಗಳು, ಫೋಟೋಗಳು ಮತ್ತು ಇಮೇಲ್ಗಳು ನಿಮ್ಮ ಸ್ಪೇಸ್ನ ಹೊರಗೆ ಕಾಣಿಸಿಕೊಳ್ಳುವುದನ್ನು ನಿಲ್ಲಿಸುವುದಕ್ಕೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ಲಾಕ್ ಅನ್ನು ಸೆಟ್ ಮಾಡಿ"</b>\n"ಇತರ ಜನರು ನಿಮ್ಮ ಸ್ಪೇಸ್ ತೆರೆಯುವುದನ್ನು ತಡೆಯಲು ಅದನ್ನು ಲಾಕ್ ಮಾಡಿ"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ಆ್ಯಪ್ಗಳನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿ"</b>\n"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್, ತನ್ನದೇ ಆದ Play Store ಅನ್ನು ಹೊಂದಿದೆ, ಹಾಗಾಗಿ ನೀವು ಆ್ಯಪ್ಗಳನ್ನು ಸುಲಭವಾಗಿ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಬಹುದು."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಲಾಕ್ ಮಾಡಿರುವಾಗ ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ನಲ್ಲಿರುವ ಆ್ಯಪ್ಗಳು ಅನುಮತಿ ನಿರ್ವಾಹಕ, ಗೌಪ್ಯತೆ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಮತ್ತು ಇತರ ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ ಗೋಚರಿಸುವುದಿಲ್ಲ.\n\nನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಹೊಸ ಸಾಧನದಲ್ಲಿ ಮರುಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ನೀವು ಮತ್ತೊಂದು ಸಾಧನದಲ್ಲಿ ಅದನ್ನು ಬಳಸಲು ಬಯಸಿದರೆ, ನೀವು ಇನ್ನೊಂದು ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ.\n\nನಿಮ್ಮ ಸಾಧನವನ್ನು ಕಂಪ್ಯೂಟರ್ಗೆ ಕನೆಕ್ಟ್ ಮಾಡುವ ಅಥವಾ ನಿಮ್ಮ ಸಾಧನದಲ್ಲಿ ದುರುದ್ದೇಶಪ್ರೇರಿತ ಆ್ಯಪ್ಗಳನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡುವ ಯಾರಾದರೂ ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಆ್ಯಕ್ಸೆಸ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಬಹುದು."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ಆ್ಯಪ್ಗಳನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿ"</b>\n"ನಿಮ್ಮ ಸ್ಪೇಸ್ನಲ್ಲಿ ನೀವು ಖಾಸಗಿಯಾಗಿ ಇರಿಸಿಕೊಳ್ಳಲು ಬಯಸುವ ಆ್ಯಪ್ಗಳನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿ"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ನೆನಪಿನಲ್ಲಿಡಿ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"ನಿಮ್ಮ ಸ್ಪೇಸ್ ಅನ್ನು ನೀವು ಲಾಕ್ ಮಾಡಿದಾಗ ಆ್ಯಪ್ಗಳು ಸ್ಥಗಿತಗೊಳ್ಳುತ್ತವೆ"</b>\n"ನಿಮ್ಮ ಸ್ಪೇಸ್ ಅನ್ನು ಲಾಕ್ ಮಾಡಿದಾಗ, ನಿಮ್ಮ ಸ್ಪೇಸ್ನಲ್ಲಿರುವ ಆ್ಯಪ್ಗಳು ಸ್ಥಗಿತಗೊಳ್ಳುತ್ತವೆ ಮತ್ತು ಅವುಗಳಿಂದ ನೀವು ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ಸ್ವೀಕರಿಸುವುದಿಲ್ಲ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಕುರಿತು ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ಇದು ಕೆಲವು ಕ್ಷಣಗಳ ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"ಖಾಸಗಿ ಸ್ಪೇಸ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"ನೀವು ಕೇವಲ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ಗಾಗಿ ಹೊಸ ಲಾಕ್ ಅನ್ನು ಸೆಟ್ ಮಾಡಬಹುದು ಅಥವಾ ನಿಮ್ಮ ಸಾಧನವನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ನೀವು ಬಳಸುವ ಅದೇ ಲಾಕ್ ಅನ್ನು ಬಳಸಬಹುದು"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ಸ್ಕ್ರೀನ್ ಲಾಕ್ ಅನ್ನು ಬಳಸಿ"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"ಹೊಸ ಲಾಕ್ ಆರಿಸಿ"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ಒಂದೇ ಒಂದು ಕ್ಷಣ ಕಾಯಿರಿ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ಒಂದೇ ಒಂದು ಕ್ಷಣ ಕಾಯಿರಿ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"ಎಲ್ಲವೂ ಸಿದ್ಧವಾಗಿದೆ!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಅನ್ನು ಹುಡುಕಲು, ನಿಮ್ಮ ಆ್ಯಪ್ಗಳ ಪಟ್ಟಿಗೆ ಹೋಗಿ ನಂತರ ಕೆಳಕ್ಕೆ ಸ್ಕ್ರಾಲ್ ಮಾಡಿ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"ಮುಗಿದಿದೆ"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ನಿಮ್ಮ ಪ್ರೈವೇಟ್ ಸ್ಪೇಸ್ಗೆ ಪಿನ್ ಸೆಟ್ ಮಾಡಿ"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ಪ್ರೈವೇಟ್ ಸ್ಪೇಸ್ಗೆ ಪಾಸ್ವರ್ಡ್ ಸೆಟ್ ಮಾಡಿ"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ಪ್ರೈವೇಟ್ ಸ್ಪೇಸ್ಗೆ ಪ್ಯಾಟರ್ನ್ ಸೆಟ್ ಮಾಡಿ"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಖಾಸಗಿಯಾಗಿಡುವುದಕ್ಕೆ ಸಹಾಯ ಮಾಡಲು Google ಖಾತೆಯನ್ನು ರಚಿಸಿ"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"ಮುಂದಿನ ಸ್ಕ್ರೀನ್ನಲ್ಲಿ ನಿಮ್ಮ ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಮೂಲಕ ಬಳಸಲು ನೀವು ಖಾತೆಗೆ ಸೈನ್ ಇನ್ ಮಾಡಬಹುದು"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ನ ಹೊರಗೆ ಡೇಟಾ ಕಾಣಿಸಿಕೊಳ್ಳುವುದನ್ನು ನಿಲ್ಲಿಸುವುದಕ್ಕೆ ಸಹಾಯ ಮಾಡಲು ಮೀಸಲಿರುವ ಖಾತೆಯನ್ನು ರಚಿಸಿ, ಉದಾಹರಣೆಗೆ:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"ಸಿಂಕ್ ಮಾಡಿದ ಫೋಟೋಗಳು, ಫೈಲ್ಗಳು, ಇಮೇಲ್ಗಳು, ಸಂಪರ್ಕಗಳು, ಕ್ಯಾಲೆಂಡರ್ ಈವೆಂಟ್ಗಳು ಮತ್ತು ಇತರ ಡೇಟಾ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ಆ್ಯಪ್ ಡೌನ್ಲೋಡ್ ಇತಿಹಾಸ ಮತ್ತು ಶಿಫಾರಸುಗಳು"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ಬ್ರೌಸಿಂಗ್ ಇತಿಹಾಸ, ಬುಕ್ಮಾರ್ಕ್ ಹಾಗೂ ಸೇವ್ ಮಾಡಿದ ಪಾಸ್ವರ್ಡ್"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್ ಆ್ಯಪ್ಗಳಲ್ಲಿ ನಿಮ್ಮ ಚಟುವಟಿಕೆಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ಸೂಚಿಸಲಾದ ಕಂಟೆಂಟ್"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"ಅರ್ಥವಾಯಿತು"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ಲಾಕ್"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"ಮರೆಮಾಡಿ"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"ನೀವು ಗರಿಷ್ಠ <xliff:g id="COUNT">%d</xliff:g> ಫಿಂಗರ್ಪ್ರಿಂಟ್ಗಳನ್ನು ಸೇರಿಸಬಹುದು"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"ಸಿಸ್ಟಂ ಪ್ರಮಾಣಪತ್ರ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"ಪ್ರಮಾಣಪತ್ರದ ಪಿನ್ ಮಾಡುವಿಕೆ"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ನೆಟ್ವರ್ಕ್ ವಿವರಗಳು"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ಈ ನೆಟ್ವರ್ಕ್ WEP ಎಂಬ ಹಳೆಯ ಭದ್ರತಾ ಪ್ರೊಟೊಕಾಲ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಇದು ಕಡಿಮೆ ಸುರಕ್ಷಿತವಾಗಿದೆ"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"ಸಬ್ನೆಟ್ ಮಾಸ್ಕ್"</string>
<string name="server_name_title" msgid="7257095185810299066">"ಸರ್ವರ್ ಹೆಸರು"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ಪ್ರಕಾರ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ಸಾಧನದ ವೈ-ಫೈ MAC ವಿಳಾಸ"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ಬ್ಲೂಟೂತ್ ವಿಳಾಸ"</string>
<string name="status_serial_number" msgid="9060064164331466789">"ಕ್ರಮ ಸಂಖ್ಯೆ"</string>
- <string name="status_up_time" msgid="1274778533719495438">"ಕಾರ್ಯನಿರತ ಸಮಯ"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ಹೆಚ್ಚುವರಿ ಸಮಯ"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"ಉತ್ಪಾದನಾ ದಿನಾಂಕ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ಮೊದಲು ಬಳಸಿದ ದಿನಾಂಕ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ಆವರ್ತನ ಎಣಿಕೆ"</string>
@@ -1619,9 +1617,9 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"ಲೋಡ್ ಆಗುತ್ತಿದೆ..."</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"ಲೋಡ್ ಆಗುತ್ತಿದೆ..."</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"ಪಾಸ್ವರ್ಡ್ ಸೆಟ್ ಮಾಡಿ"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"ಕೆಲಸದ ಪಾಸ್ವರ್ಡ್ ಹೊಂದಿಸಿ"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"ಕೆಲಸದ ಪಾಸ್ವರ್ಡ್ ಸೆಟ್ ಮಾಡಿ"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ಪಿನ್ ಸೆಟ್ ಮಾಡಿ"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ಕೆಲಸದ ಪಿನ್ ಹೊಂದಿಸಿ"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ಕೆಲಸದ ಪಿನ್ ಸೆಟ್ ಮಾಡಿ"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ಪ್ಯಾಟರ್ನ್ ಸೆಟ್ ಮಾಡಿ"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ಹೆಚ್ಚಿನ ಭದ್ರತೆಗಾಗಿ, ಸಾಧನವನ್ನು ಅನ್ಲಾಕ್ ಮಾಡುವುದಕ್ಕಾಗಿ ಪ್ಯಾಟರ್ನ್ ಅನ್ನು ಸೆಟ್ ಮಾಡಿ"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ಕೆಲಸದ ಪ್ಯಾಟರ್ನ್ ಹೊಂದಿಸಿ"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ಕೆಳಗಿನ ಬಲಕ್ಕೆ ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"ಇನ್ನಷ್ಟು ಆಯ್ಕೆಗೆ ಟಚ್ಪ್ಯಾಡ್ನ ಕೆಳ ಬಲ ಮೂಲೆಯನ್ನು ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"ಪಾಯಿಂಟರ್ ವೇಗ"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"ಪಾಯಿಂಟರ್ ಫಿಲ್ ಶೈಲಿ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"ಬ್ಲಾಕ್ಗೆ ಪಾಯಿಂಟರ್ ಫಿಲ್ ಶೈಲಿ ಬದಲಿಸಿ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"ಹಸಿರಿಗೆ ಪಾಯಿಂಟರ್ ಫಿಲ್ ಶೈಲಿ ಬದಲಿಸಿ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"ಹಳದಿಗೆ ಪಾಯಿಂಟರ್ ಫಿಲ್ ಶೈಲಿ ಬದಲಿಸಿ"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"ಪಿಂಕ್ಗೆ ಪಾಯಿಂಟರ್ ಫಿಲ್ ಶೈಲಿ ಬದಲಿಸಿ"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"ನೀಲಿಗೆ ಪಾಯಿಂಟರ್ ಫಿಲ್ ಶೈಲಿ ಬದಲಿಸಿ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ಟಚ್ಪ್ಯಾಡ್ ಗೆಸ್ಚರ್ಗಳನ್ನು ಕಲಿಯಿರಿ"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ಟ್ರ್ಯಾಕ್ಪ್ಯಾಡ್, ಟ್ರ್ಯಾಕ್ ಪ್ಯಾಡ್, ಮೌಸ್, ಕರ್ಸರ್, ಸ್ಕ್ರಾಲ್, ಸ್ವೈಪ್, ಬಲ-ಕ್ಲಿಕ್, ಕ್ಲಿಕ್, ಪಾಯಿಂಟರ್"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ಬಲ ಕ್ಲಿಕ್, ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
@@ -2317,7 +2321,7 @@
<string name="accessibility_hearing_device_about_title" msgid="7883758309646288250">"ಶ್ರವಣ ಸಾಧನಗಳ ಕುರಿತು"</string>
<string name="accessibility_hearing_device_footer_summary" msgid="256061045064940818">"ASHA ಅಥವಾ LE ಆಡಿಯೋ ಮೂಲಕ ಬೆಂಬಲಿಸದಿರುವ ಇತರ ಹಿಯರಿಂಗ್ ಸಾಧನಗಳನ್ನು ಹುಡುಕಲು, "<b>"ಹೊಸ ಸಾಧನವನ್ನು ಪೇರ್ ಮಾಡಿ"</b>" ಎಂಬುದನ್ನು ಟ್ಯಾಪ್ ಮಾಡಿ ಮತ್ತು "<b>"ಇನ್ನಷ್ಟು ಸಾಧನಗಳನ್ನು ನೋಡಿ"</b></string>
<string name="accessibility_hearing_device_pairing_page_title" msgid="6608901091770850295">"ಶ್ರವಣ ಸಾಧನವನ್ನು ಪೇರ್ ಮಾಡಿ"</string>
- <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"ನೀವು ಈ ಪುಟದಲ್ಲಿ ASHA ಮತ್ತು LE ಆಡಿಯೋ ಹಿಯರಿಂಗ್ ಸಾಧನಗಳನ್ನು ಪೇರ್ ಮಾಡಬಹುದು. ನಿಮ್ಮ ಹಿಯರಿಂಗ್ ಸಾಧನವನ್ನು ಆನ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಪೇರ್ ಮಾಡಲು ಸಿದ್ಧವಾಗಿದೆ ಎಂಬುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ."</string>
+ <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"ನೀವು ಈ ಪುಟದಲ್ಲಿ ASHA ಮತ್ತು LE ಆಡಿಯೋ ಶ್ರವಣ ಸಾಧನಗಳನ್ನು ಪೇರ್ ಮಾಡಬಹುದು. ನಿಮ್ಮ ಶ್ರವಣ ಸಾಧನವನ್ನು ಆನ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಅದು ಪೇರ್ ಮಾಡಲು ಸಿದ್ಧವಾಗಿದೆ ಎಂಬುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ."</string>
<string name="accessibility_found_hearing_devices" msgid="637407580358386553">"ಲಭ್ಯವಿರುವ ಶ್ರವಣ ಸಾಧನಗಳು"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"ನಿಮ್ಮ ಶ್ರವಣ ಸಾಧನ ಕಾಣಿಸುತ್ತಿಲ್ಲವೇ?"</string>
<string name="accessibility_list_all_devices_title" msgid="161495343959211216">"ಹೆಚ್ಚಿನ ಸಾಧನಗಳನ್ನು ನೋಡಿ"</string>
@@ -2696,7 +2700,7 @@
<string name="adaptive_connectivity_switch_on" msgid="3653067561620745493">"ಆನ್"</string>
<string name="adaptive_connectivity_switch_off" msgid="5076172560836115265">"ಆಫ್"</string>
<string name="adaptive_connectivity_main_switch_title" msgid="261045483524512420">"ಅಡಾಪ್ಟಿವ್ ಕನೆಕ್ಟಿವಿಟಿ ಬಳಸಿ"</string>
- <string name="cellular_security_title" msgid="5562899485544677941">"ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ಸೆಕ್ಯೂರಿಟಿ"</string>
+ <string name="cellular_security_title" msgid="5562899485544677941">"ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ಭದ್ರತೆ"</string>
<string name="cellular_security_summary" msgid="1893770670709928113">"ನೆಟ್ವರ್ಕ್ ಪ್ರಕಾರ, ಎನ್ಕ್ರಿಪ್ಶನ್, ನೋಟಿಫಿಕೇಶನ್ ಕಂಟ್ರೋಲ್ಗಳು"</string>
<string name="cellular_security_top_intro" msgid="6749166804080092892">"ಈ ಸೆಟ್ಟಿಂಗ್ ನಿಮ್ಮ ಕರೆಗಳು, ಸಂದೇಶಗಳು ಮತ್ತು ಡೇಟಾವನ್ನು ಹಳೆಯದಾದ ಅಥವಾ ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡದ ನೆಟ್ವರ್ಕ್ಗಳಿಂದ ರಕ್ಷಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ ಅದು ನಿಮ್ಮನ್ನು ಡೇಟಾ ಕಳ್ಳತನ ಅಥವಾ ಕಣ್ಗಾವಲಿಗೆ ಒಡ್ಡಬಹುದು."</string>
<string name="cellular_security_settings_title" msgid="7779141923670352595">"ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ಭದ್ರತೆ"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ಯಾವುದೂ ಇಲ್ಲ}=1{1 ವೇಳಾಪಟ್ಟಿಯನ್ನು ಸೆಟ್ ಮಾಡಲಾಗಿದೆ}one{# ವೇಳಾಪಟ್ಟಿಗಳನ್ನು ಸೆಟ್ ಮಾಡಲಾಗಿದೆ}other{# ವೇಳಾಪಟ್ಟಿಗಳನ್ನು ಸೆಟ್ ಮಾಡಲಾಗಿದೆ}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ಆದ್ಯತೆಯ ಮೋಡ್ಗಳು"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"ಪ್ರಮುಖ ಜನರು ಮತ್ತು ಆ್ಯಪ್ಗಳಿಂದ ಮಾತ್ರ ನೋಟಿಫಿಕೇಶನ್ ಪಡೆಯಿರಿ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"ಅಡಚಣೆಗಳನ್ನು ಮಿತಿಗೊಳಿಸಿ"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಅನ್ನು ಆನ್ ಮಾಡಿ"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"ಕ್ಯಾಲೆಂಡರ್ ಅನ್ನು ಸೇರಿಸಿ"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ನಿಮ್ಮ ಕ್ಯಾಲೆಂಡರ್ ಅನ್ನು ಬಳಸಿ"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"ವೇಳಾಪಟ್ಟಿ"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"ವೇಳಾಪಟ್ಟಿಯನ್ನು ಸೆಟ್ ಮಾಡಿ"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"ವೇಳಾಪಟ್ಟಿ"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> ಗಂ, <xliff:g id="MINUTES">%2$d</xliff:g> ನಿಮಿ"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"ಅವಧಿ"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ಕೆಲವು ಸಮಯ ಫೋನ್ ನಿಶ್ಯಬ್ಧವಾಗಿಸಿ"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ನಿಯಮ ಹೊಂದಿಸಿ"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"ವರ್ಧಿತ ಸೆಟ್ಟಿಂಗ್ಗಳಿಗೆ ಈ ಆ್ಯಪ್ ಬೆಂಬಲಿಸುವುದಿಲ್ಲ"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"ಇನ್ನಷ್ಟು ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"ಇನ್ನಷ್ಟು ಸೆಟ್ಟಿಂಗ್ಗಳು ಈ ಆ್ಯಪ್ನ ಒಳಗೆ ಲಭ್ಯವಿವೆ"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"ಕೂಲ್ಡೌನ್"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"ಕೂಲ್ಡೌನ್ ಬಳಸಿ"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"ಅಲ್ಪಾವಧಿಯೊಳಗೆ ನೀವು ಅನೇಕ ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ಪಡೆದಾಗ, ನಿಮ್ಮ ಸಾಧನವು ಸ್ಕ್ರೀನ್ನ ಮೇಲೆ ಧ್ವನಿ ಅಡಚಣೆಗಳು ಮತ್ತು ಪಾಪ್-ಅಪ್ಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. ಕರೆಗಳು, ಅಲಾರಾಂಗಳು ಮತ್ತು ಆದ್ಯತೆಯ ಸಂಭಾಷಣೆಗಳನ್ನು ಎಂದಿನಂತೆ ಸೂಚಿಸುವುದನ್ನು ಮುಂದುವರಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಡೆಲಿವರಿ ಮಾಡಲಾದ ಎಲ್ಲಾ ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ಶೇಡ್ನಲ್ಲಿ ಹುಡುಕಲು ಸುಲಭವಾಗಿದೆ."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ಉದ್ಯೋಗದ ಪ್ರೊಫೈಲ್ಗಳಿಗೆ ಅನ್ವಯಿಸಿ"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ಉದ್ಯೋಗ ಪ್ರೊಫೈಲ್ ಆ್ಯಪ್ಗಳಿಗೆ ಅನ್ವಯಿಸಿ"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR ಸಹಾಯ ಸೇವೆಗಳು"</string>
@@ -3664,7 +3676,7 @@
<string name="app_notification_fsi_permission_summary" msgid="7673487977631068039">"ಸಾಧನ ಲಾಕ್ ಆಗಿರುವಾಗ ಪೂರ್ಣ ಸ್ಕ್ರೀನ್ ಅನ್ನು ಆವರಿಸಿಕೊಳ್ಳಲು ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ಅನುಮತಿಸಿ"</string>
<string name="notification_badge_title" msgid="6854537463548411313">"ನೋಟಿಫಿಕೇಶನ್ ಡಾಟ್ ಅನ್ನು ಅನುಮತಿಸಿ"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"ನೋಟಿಫಿಕೇಶನ್ ಡಾಟ್ ತೋರಿಸಿ"</string>
- <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"\'ಅಡಚಣೆ ಮಾಡಬೇಡಿ\' ಅನ್ನು ಮರೆಮಾಡಿ"</string>
+ <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"\'ಅಡಚಣೆ ಮಾಡಬೇಡಿ\' ಅನ್ನು ಪರಿಗಣಿಸಬೇಡಿ"</string>
<string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"ಅಡಚಣೆ ಮಾಡಬೇಡ ಆನ್ ಇರುವಾಗಲೂ ಈ ಅಧಿಸೂಚನೆಗಳು ಮುಂದುವರಿಯಲು ಅವಕಾಶ ಮಾಡಿಕೊಡಿ"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"ಲಾಕ್ ಸ್ಕ್ರೀನ್"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"ಮುಗಿದಿದೆ"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"ಆಯ್ಕೆ ಮಾಡಿದ ಆ್ಯಪ್ಗಳು"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ಯಾವುದೂ ಅಲ್ಲ"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ಎಲ್ಲಾ"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ಅತಿಕ್ರಮಿಸಲು ಆ್ಯಪ್ಗಳಿಗೆ ಅನುಮತಿಸಿ"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ಅಡಚಣೆ ಉಂಟುಮಾಡಬಹುದಾದ ಆ್ಯಪ್ಗಳು"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"ಇನ್ನಷ್ಟು ಆ್ಯಪ್ಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} ವರೆಗೆ, ಒಂದು ಗಂಟೆಯವರೆಗೆ ಮಾತ್ರ ಅಲಾರಾಂಗಳನ್ನು ಬದಲಾಯಿಸಿ}one{{time} ವರೆಗೆ, # ಗಂಟೆಗಳವರೆಗೆ ಮಾತ್ರ ಅಲಾರಾಂಗಳನ್ನು ಬದಲಾಯಿಸಿ}other{{time} ವರೆಗೆ, # ಗಂಟೆಗಳವರೆಗೆ ಮಾತ್ರ ಅಲಾರಾಂಗಳನ್ನು ಬದಲಾಯಿಸಿ}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> ವರೆಗೆ ಮಾತ್ರ ಅಲಾರಮ್ಗಳಲ್ಲಿ ಬದಲಾವಣೆ"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ಯಾವಾಗಲೂ ಅಡಚಣೆಗೆ ಬದಲಾಯಿಸಿ"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"ಮರುಹೆಸರಿಸಿ"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"ಐಕಾನ್ ಬದಲಾಯಿಸಿ"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"ಐಕಾನ್ ಬದಲಾಯಿಸಿ"</string>
<string name="warning_button_text" msgid="1274234338874005639">"ಎಚ್ಚರಿಕೆ"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"ಮುಚ್ಚಿರಿ"</string>
<string name="device_feedback" msgid="5351614458411688608">"ಈ ಸಾಧನದ ಕುರಿತು ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಕಳುಹಿಸಿ"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ಎಡ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ಬಲ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"ಕೇಸ್"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ಬ್ಯಾಟರಿ"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ಸೆಟ್ಟಿಂಗ್ಗಳ ಪ್ಯಾನಲ್"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ಡೆಸ್ಕ್ಟಾಪ್ ಮೋಡ್ ಅನ್ನು ಒತ್ತಾಯ ಮಾಡಿ"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ಸೆಕೆಂಡರಿ ಡಿಸ್ಪ್ಲೇಗಳಲ್ಲಿ ಪ್ರಾಯೋಗಿಕ ಡೆಸ್ಕ್ಟಾಪ್ ಮೋಡ್ ಅನ್ನು ಒತ್ತಾಯ ಮಾಡಿ"</string>
@@ -4908,7 +4926,7 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"ಸೆಟ್ಟಿಂಗ್ಗಳ ಸ್ಕ್ರೀನ್ಗಳನ್ನು ಓವರ್ಲೇ ಮಾಡಲು ಇತರ ಆ್ಯಪ್ಗಳಲ್ಲಿ ಡಿಸ್ಪ್ಲೇ ಮಾಡಬಹುದಾದ ಆ್ಯಪ್ಗಳನ್ನು ಅನುಮತಿಸಿ"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"ಅಣಕು ಮೋಡೆಮ್ ಅನ್ನು ಅನುಮತಿಸಿ"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"ಇನ್ಸ್ಟ್ರುಮೆಂಟೇಶನ್ ಪರೀಕ್ಷೆಗಾಗಿ ಅಣಕು ಮೋಡೆಮ್ ಸೇವೆಯನ್ನು ರನ್ ಮಾಡಲು ಈ ಸಾಧನಕ್ಕೆ ಅನುಮತಿಸಿ. ಫೋನ್ನ ಸಾಮಾನ್ಯ ಬಳಕೆಯ ಸಮಯದಲ್ಲಿ ಇದನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಬೇಡಿ"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"ಸ್ಕ್ರೀನ್ ಹಂಚಿಕೆ ಸಂರಕ್ಷಣೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"ಸ್ಕ್ರೀನ್ ಹಂಚಿಕೆ ರಕ್ಷಣೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"ಮುಂಬರುವ ಸ್ಕ್ರೀನ್ ಹಂಚಿಕೊಳ್ಳುವಿಕೆ ಸೆಶನ್ಗಳಲ್ಲಿ ಸೂಕ್ಷ್ಮ ಆ್ಯಪ್ ಕಂಟೆಂಟ್ಗಾಗಿ ಸಿಸ್ಟಮ್ ರಕ್ಷಣೆಗಳನ್ನು ಆಫ್ ಮಾಡಿ"</string>
<string name="media_controls_title" msgid="403271085636252597">"ಮಾಧ್ಯಮ"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"ಮೀಡಿಯಾ ಪ್ಲೇಯರ್ ಅನ್ನು ಪಿನ್ ಮಾಡಿ"</string>
@@ -5117,7 +5135,7 @@
<string name="bluetooth_details_audio_device_type_unknown" msgid="5299284975435974206">"ಸೆಟ್ ಮಾಡಿಲ್ಲ"</string>
<string name="bluetooth_details_audio_device_type_speaker" msgid="3706227767994792124">"ಸ್ಪೀಕರ್"</string>
<string name="bluetooth_details_audio_device_type_headphones" msgid="7644588291215033798">"ಹೆಡ್ಫೋನ್ಗಳು"</string>
- <string name="bluetooth_details_audio_device_type_hearing_aid" msgid="6311786545025321187">"ಹಿಯರಿಂಗ್ ಸಾಧನ"</string>
+ <string name="bluetooth_details_audio_device_type_hearing_aid" msgid="6311786545025321187">"ಶ್ರವಣ ಸಾಧನ"</string>
<string name="bluetooth_details_audio_device_type_carkit" msgid="1866236563013629394">"ಕಾರ್"</string>
<string name="bluetooth_details_audio_device_type_other" msgid="7019481234617207563">"ಇತರೆ"</string>
<string name="ingress_rate_limit_title" msgid="2106694002836274350">"ನೆಟ್ವರ್ಕ್ ಡೌನ್ಲೋಡ್ ದರದ ಮಿತಿ"</string>
diff --git a/res/values-ko/arrays.xml b/res/values-ko/arrays.xml
index 9edb91b..2cd3175 100644
--- a/res/values-ko/arrays.xml
+++ b/res/values-ko/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index afd9dd3..e9add84 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"기기 연결을 해제하겠습니까?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"새 기기와 페어링"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"블루투스"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"내일 다시 자동으로 사용 설정"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"오른쪽 보청기 페어링"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"왼쪽 보청기 페어링"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"반대쪽 보청기 페어링"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"왼쪽 보청기 페어링"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"청각 보조 기기 설정"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"단축키, 보청기 호환성"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"사전 설정"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"미리 설정"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"사전 설정을 업데이트할 수 없음"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"오디오 출력"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"오디오 출력 정보"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"취소"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"사용 안함"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"나중에"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"동의"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"더보기"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"얼굴로 잠금 해제"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"주의사항"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"지문을 사용하여 휴대전화를 잠금 해제하거나 구매를 승인하세요.\n\n참고: 이 기기는 지문을 사용하여 잠금 해제할 수 없습니다. 자세한 내용은 조직의 관리자에게 문의하세요."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"취소"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"취소"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"나중에"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"동의"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"지문 설정을 건너뛰시겠습니까?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"지문 설정에는 1~2분 정도밖에 걸리지 않습니다. 이 과정을 건너뛰면 나중에 설정에서 지문을 추가할 수 있습니다."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"작동 방식"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"지문 잠금 해제를 사용하면 본인 인증을 위한 고유한 지문 모델이 생성됩니다. 설정 단계에서 지문 모델을 만들기 위해 다양한 위치에서 지문 이미지를 촬영합니다."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"지문 잠금 해제를 사용하면 자녀의 본인 인증을 위한 고유한 지문 모델이 생성됩니다. 설정 중 지문 모델을 만들기 위해 다양한 위치에서 자녀의 지문 이미지를 촬영합니다."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"제대로 인식되도록 하려면 Made For Google 인증 화면 보호필름을 사용하세요. 다른 화면 보호필름을 사용할 경우 지문이 인식되지 않을 수 있습니다."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"최상의 결과를 얻으려면 Made For Google 인증 화면 보호필름을 사용하세요. 다른 화면 보호필름을 사용할 경우 지문이 인식되지 않을 수 있습니다."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"최상의 결과를 얻으려면 Made For Google 인증 화면 보호재를 사용하세요. 다른 화면 보호재를 사용할 경우 자녀의 지문이 인식되지 않을 수 있습니다."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"스마트시계 잠금 해제"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"기기를 잠글 때마다"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"화면 자동 잠금 시간 5분 경과 후"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"기기를 다시 시작한 후에만"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"비공개 스페이스 숨기기"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"잠겨 있을 때 비공개 스페이스 숨기기"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"기기에 비공개 스페이스가 있다는 사실을 다른 사람이 알지 못하도록 앱 목록에서 숨길 수 있습니다."</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"설정"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"비공개 스페이스"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"별도의 스페이스에서 비공개 앱을 숨기거나 잠급니다. 추가 보안을 위해 전용 Google 계정을 사용하세요."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"비공개 스페이스 설정"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"스페이스용 Google 계정 선택"</b>\n"전용 계정을 사용하면 동기화된 파일, 사진 및 이메일이 스페이스 외부에 표시되는 것을 방지할 수 있습니다."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"작동 원리"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"스페이스를 위한 Google 계정 만들기"</b>\n"전용 계정을 사용하면 동기화된 파일, 사진, 이메일이 스페이스 외부에 표시되는 것을 방지할 수 있습니다."</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"잠금 설정"</b>\n"다른 사용자가 스페이스를 열지 못하게 하려면 스페이스를 잠급니다."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"앱 설치"</b>\n"비공개 스페이스에 자체 Play 스토어가 있어 앱을 쉽게 설치할 수 있습니다."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"비공개 스페이스가 잠겨 있으면 비공개 스페이스의 앱은 권한 관리자, 개인 정보 대시보드, 기타 설정에 표시되지 않습니다.\n\n비공개 스페이스는 새 기기로 복원할 수 없습니다. 다른 기기에서 사용하려면 다른 비공개 스페이스를 설정해야 합니다.\n\n기기를 컴퓨터에 연결하거나 기기에 악성 앱을 설치할 수 있는 사람이라면 비공개 스페이스에 액세스할 수도 있습니다."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"앱 설치"</b>\n"스페이스에서 비공개로 유지할 앱을 설치하세요."</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"주의사항"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"스페이스를 잠그면 앱이 중지됩니다"</b>\n"스페이스를 잠그면 스페이스에 있는 앱이 중지되고 해당 앱으로부터 알림을 받을 수 없습니다."</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"비공개 스페이스에 관해 자세히 알아보기"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"몇 분 정도 걸릴 수 있습니다."</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"비공개 스페이스 설정 중…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"비공개 스페이스에만 새 잠금 방식을 설정하거나 기기 잠금 해제에 사용하는 것과 동일한 잠금 방식을 사용할 수 있습니다."</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"화면 잠금 사용"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"새 잠금 방식 선택"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"잠시 기다려 주세요…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"잠시 기다려 주세요…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"설정 완료"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"비공개 스페이스를 확인하려면 앱 목록으로 이동한 후 아래로 스크롤하세요."</string>
<string name="private_space_done_label" msgid="1020482651595246071">"완료"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"비공개 스페이스용 PIN 설정"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"비공개 스페이스용 비밀번호 설정"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"비공개 스페이스용 패턴 설정"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"데이터를 보호하기 위해 Google 계정 만들기"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"다음 화면에서 비공개 스페이스에서 사용할 계정에 로그인할 수 있습니다."</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"비공개 스페이스 외부로 데이터가 표시되지 않도록 전용 계정을 만드세요. (예:"</b>")"</string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"동기화된 사진, 파일, 이메일, 연락처, 캘린더 일정, 기타 데이터"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"앱 다운로드 기록 및 추천"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"방문 기록, 북마크, 저장된 비밀번호"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"비공개 스페이스 앱 내 활동과 관련하여 추천된 콘텐츠"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"확인"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"잠금"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"숨기기"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"지문을 <xliff:g id="COUNT">%d</xliff:g>개까지 추가할 수 있습니다."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"시스템 인증서"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"인증서 고정"</string>
<string name="wifi_details_title" msgid="222735438574597493">"네트워크 세부정보"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"이 네트워크는 오래되어서 안전성이 낮은 WEP라는 보안 프로토콜을 사용합니다"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"서브넷 마스크"</string>
<string name="server_name_title" msgid="7257095185810299066">"서버 이름"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"유형"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"기기 Wi‑Fi MAC 주소"</string>
<string name="status_bt_address" msgid="6919660304578476547">"블루투스 주소"</string>
<string name="status_serial_number" msgid="9060064164331466789">"일련번호"</string>
- <string name="status_up_time" msgid="1274778533719495438">"가동 시간"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"업타임"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"제조일자"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"최초 사용일"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"사이클 수"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"오른쪽 하단 탭하기"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"더 많은 옵션을 확인하려면 터치패드 오른쪽 하단을 탭합니다"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"포인터 속도"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"포인터 채움 스타일"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"포인터 채움 스타일을 검은색으로 변경"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"포인터 채움 스타일을 초록색으로 변경"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"포인터 채움 스타일을 노란색으로 변경"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"포인터 채움 스타일을 분홍색으로 변경"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"포인터 채움 스타일을 파란색으로 변경"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"터치패드 동작 알아보기"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"트랙패드, 트랙 패드, 마우스, 커서, 스크롤, 스와이프, 마우스 오른쪽 버튼으로 클릭, 클릭, 포인터"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"마우스 오른쪽 버튼으로 클릭, 탭"</string>
@@ -2319,7 +2322,7 @@
<string name="accessibility_hearing_device_footer_summary" msgid="256061045064940818">"보청기용 오디오 스트리밍 또는 LE 오디오에서 지원되지 않는 다른 청각 보조 기기를 찾으려면 "<b>"새 기기와 페어링"</b>" > "<b>"기기 더보기"</b>"를 탭하세요"</string>
<string name="accessibility_hearing_device_pairing_page_title" msgid="6608901091770850295">"보청기 페어링"</string>
<string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"이 페이지에서 보청기용 오디오 스트리밍 및 LE 오디오 청각 보조 기기를 페어링할 수 있습니다. 청각 보조 기기의 전원이 켜져 있으며 페어링할 준비가 되어 있는지 확인하세요"</string>
- <string name="accessibility_found_hearing_devices" msgid="637407580358386553">"사응 가능한 청각 보조 기기"</string>
+ <string name="accessibility_found_hearing_devices" msgid="637407580358386553">"사용 가능한 청각 보조 기기"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"청각 보조 기기가 표시되지 않나요?"</string>
<string name="accessibility_list_all_devices_title" msgid="161495343959211216">"기기 더보기"</string>
<string name="accessibility_audio_adjustment_title" msgid="1332113739136802997">"오디오 조정"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{없음}=1{예약 1개 설정됨}other{예약 #개 설정됨}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"방해 금지 모드"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"우선순위 모드"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"중요한 사람과 앱의 알림만 받기"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"방해 요소 제한"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"방해 금지 모드 사용 설정"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"수정"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"예약"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"예약"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"자동으로 사용 설정"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"캘린더 추가"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"내 캘린더 사용"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"일정"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"예약"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"특정 시간 동안 휴대전화 무음 설정"</string>
@@ -3518,9 +3525,9 @@
<string name="lock_screen_notifs_redact_work" msgid="3833920196569208430">"민감한 직장 프로필 알림"</string>
<string name="lock_screen_notifs_redact_work_summary" msgid="3238238380405430156">"잠금 상태일 때 민감한 직장 프로필 콘텐츠 표시"</string>
<string name="lock_screen_notifications_summary_show" msgid="6540443483088311328">"모든 알림 내용 표시"</string>
- <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"민감한 콘텐츠는 잠금이 해제되었을 때만 표시"</string>
- <string name="lock_screen_notifications_summary_disable" msgid="3388290397947365744">"알림 표시 안함"</string>
- <string name="lock_screen_notifications_interstitial_message" msgid="6326229471276829730">"잠금 화면에 어떻게 표시하고 싶나요?"</string>
+ <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"민감한 내용은 잠금이 해제되었을 때만 표시"</string>
+ <string name="lock_screen_notifications_summary_disable" msgid="3388290397947365744">"알림 표시 안 함"</string>
+ <string name="lock_screen_notifications_interstitial_message" msgid="6326229471276829730">"잠금 화면에 어떤 알림 내용이 표시되기를 원하시나요?"</string>
<string name="lock_screen_notifications_interstitial_title" msgid="1360388192096354315">"잠금 화면"</string>
<string name="lock_screen_notifications_summary_show_profile" msgid="8373401288962523946">"모든 직장 알림 내용 표시"</string>
<string name="lock_screen_notifications_summary_hide_profile" msgid="2183455323048921579">"민감한 직장 콘텐츠 숨기기"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"이 앱은 향상된 설정을 지원하지 않습니다."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"기타 설정"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"앱 안에서 추가 설정을 볼 수 있음"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"쿨다운"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"쿨다운 사용"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"짧은 시간 내에 여러 알림을 받으면 기기에서 소리 중단과 화면 팝업을 최소화합니다. 통화, 알람, 우선순위 대화는 평소와 같이 알림으로 표시되며, 전달된 모든 알림은 알림 창에서 간편하게 찾을 수 있습니다."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"직장 프로필에 적용"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"직장 프로필 앱에 적용"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR 도우미 서비스"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"선택한 앱"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"없음"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"모두"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"앱에서 무시하도록 허용"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"예외 앱"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"앱 추가 선택"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time}까지 1시간 동안 알람만 허용으로 변경}other{{time}까지 #시간 동안 알람만 허용으로 변경}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g>까지 알람만 수신 모드로 변경"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"항상 알림 모드로 변경"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"주의"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"닫기"</string>
<string name="device_feedback" msgid="5351614458411688608">"이 기기에 대한 의견 보내기"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"왼쪽"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"오른쪽"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"케이스"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"배터리"</string>
<string name="settings_panel_title" msgid="346363079938069215">"설정 패널"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"데스크톱 모드 강제 사용"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"보조 디스플레이에서 실험적 데스크톱 모드 강제 사용"</string>
@@ -4859,10 +4878,10 @@
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"16KB 개발자 옵션을 사용하려면 이 기기의 부트로더가 잠금 해제되어 있어야 합니다. 이 모드에서는 소프트웨어 무결성이 보장되지 않기 때문에 부트로더가 잠금 해제된 상태에서 휴대전화에 저장된 모든 데이터가 위험에 노출될 수 있습니다. 16KB 모드를 활성화하면 모든 사용자 데이터와 설정이 완전 삭제됩니다. 부트로더가 잠금 해제되고 나서 16KB 옵션을 활성화하려면 두 번 재부팅해야 합니다. 이 모드에서는 한 번의 재부팅으로 4KB와 16KB 모드 사이를 오가며 전환할 수 있습니다. 이 모드에서는 일부 기능이 사용 중지되므로 일부 애플리케이션이 작동하지 않을 수 있습니다. 기기를 프로덕션 모드로 되돌리려면 4KB 모드로 다시 전환한 후 OEM/부트로더로 기기를 잠가 초기화해야 합니다. 부트로더를 잠금 해제한 후 다시 시도해 주세요. <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>에서 방법에 대한 안내를 참고하세요."</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"페이지에 구속받지 않는 4KB 모드 사용"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"현재 페이지에 구속받지 않는 4KB 모드입니다. 이 모드에서는 소프트웨어 무결성이 보장되지 않기 때문에 부트로더가 잠금 해제된 상태에서는 휴대전화에 저장된 모든 데이터가 위험에 노출될 수 있습니다. 이 모드에서는 일부 기능이 사용 중지되므로 일부 애플리케이션이 작동하지 않을 수 있습니다. 프로덕션 모드로 다시 들어가려면 기기의 부트로더를 잠가야 합니다. 탭하여 자세히 알아보세요."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"현재 페이지에 구속받지 않는 4KB 모드입니다. 이 모드에서는 소프트웨어 무결성이 보장되지 않기 때문에 부트로더가 잠금 해제된 상태에서는 휴대전화에 저장된 모든 데이터가 위험에 노출될 수 있습니다. 이 모드에서는 일부 기능이 사용 중지되므로 일부 애플리케이션이 작동하지 않을 수 있습니다. 프로덕션 모드로 다시 들어가려면 기기의 부트로더를 잠가야 합니다. 이렇게 하면 기기가 다시 초기화되고 프로덕션 설정으로 복원됩니다. 기기를 Android로 부팅 완료한 후에는 개발자 옵션에서 OEM 잠금 해제를 사용 중지하세요. 기기가 Android로 부팅되지 않거나 불안정한 경우 <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>의 최신 공장 출고 시 이미지로 기기를 다시 플래시하거나 <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>을 사용하여 \'기기 완전 삭제\', \'부트로더 잠금\', \'모든 파티션 강제 플래시\'를 선택하세요."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"현재 페이지에 구속받지 않는 4KB 모드입니다. 이 모드에서는 소프트웨어 무결성이 보장되지 않기 때문에 부트로더가 잠금 해제된 상태에서는 휴대전화에 저장된 모든 데이터가 위험에 노출될 수 있습니다. 이 모드에서는 일부 기능이 사용 중지되므로 일부 애플리케이션이 작동하지 않을 수 있습니다. 프로덕션 모드로 다시 들어가려면 기기의 부트로더를 잠가야 합니다. 이렇게 하면 기기가 다시 초기화되고 프로덕션 설정으로 복원됩니다. 기기를 Android로 부팅 완료한 후에는 개발자 옵션에서 OEM 잠금 해제를 사용 중지하세요. 기기가 Android로 부팅되지 않거나 불안정한 경우 <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>의 최신 공장 출고 시 이미지로 기기를 다시 플래시하거나 <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>을 사용하여 \'Wipe Device\'(기기 완전 삭제), \'Lock Bootloader\'(부트로더 잠금), \'Force Flash all partitions\'(모든 파티션 강제 플래시)를 선택하세요."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"페이지에 구속받지 않는 16KB 모드 사용"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"현재 페이지에 구속받지 않는 16KB 모드입니다. 이 모드에서는 소프트웨어 무결성이 보장되지 않기 때문에 부트로더가 잠금 해제된 상태에서는 휴대전화에 저장된 모든 데이터가 위험에 노출될 수 있습니다. 이 모드에서는 일부 기능이 사용 중지되므로 일부 애플리케이션이 작동하지 않을 수 있습니다. 프로덕션 모드로 다시 들어가려면 4K 모드로 다시 전환한 후 기기의 부트로더를 잠가야 합니다. 탭하여 자세히 알아보세요."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"현재 페이지에 구속받지 않는 16KB 모드입니다. 이 모드에서는 소프트웨어 무결성이 보장되지 않기 때문에 부트로더가 잠금 해제된 상태에서 휴대전화에 저장된 모든 데이터가 위험에 노출될 수 있습니다. 이 모드에서는 일부 기능이 사용 중지되므로 일부 애플리케이션이 작동하지 않을 수 있습니다. 프로덕션 모드로 돌아가려면 4K 모드로 다시 전환한 후 기기의 부트로더를 잠가야 합니다. 이렇게 하면 기기가 다시 초기화되고 프로덕션 설정으로 복원됩니다. 기기를 Android로 부팅 완료한 후에는 개발자 옵션에서 OEM 잠금 해제를 사용 중지하세요. 기기가 Android로 부팅되지 않거나 불안정한 경우 <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>의 최근 공장 출고 시 이미지로 기기를 다시 플래시하거나 <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>을 사용하여 \'기기 완전 삭제\', \'부트로더 잠금\', \'모든 파티션 강제 플래시\'를 선택하세요."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"현재 페이지에 구속받지 않는 16KB 모드입니다. 이 모드에서는 소프트웨어 무결성이 보장되지 않기 때문에 부트로더가 잠금 해제된 상태에서 휴대전화에 저장된 모든 데이터가 위험에 노출될 수 있습니다. 이 모드에서는 일부 기능이 사용 중지되므로 일부 애플리케이션이 작동하지 않을 수 있습니다. 프로덕션 모드로 돌아가려면 4K 모드로 다시 전환한 후 기기의 부트로더를 잠가야 합니다. 이렇게 하면 기기가 다시 초기화되고 프로덕션 설정으로 복원됩니다. 기기를 Android로 부팅 완료한 후에는 개발자 옵션에서 OEM 잠금 해제를 사용 중지하세요. 기기가 Android로 부팅되지 않거나 불안정한 경우 <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>의 최신 공장 출고 시 이미지로 기기를 다시 플래시하거나 <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a>을 사용하여 \'Wipe Device\'(기기 완전 삭제), \'Lock Bootloader\'(부트로더 잠금), \'Force Flash all partitions\'(모든 파티션 강제 플래시)를 선택하세요."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"페이지에 구속받지 않는 16KB 모드"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"자세히 알아보기"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"버그 신고 핸들러"</string>
@@ -4914,7 +4933,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"가상 모뎀 허용"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"이 기기에서 계측 테스트에 가상 모뎀 서비스를 실행하도록 허용합니다. 휴대전화를 일반적으로 사용하는 동안에는 이 기능을 사용 설정하지 마세요."</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"화면 공유 보호 기능 사용 안함"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"예정된 화면 공유 세션을 위해 민감한 앱 콘텐츠의 시스템 보호 기능을 사용 중지합니다."</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"예정된 화면 공유 세션에 대해 민감한 앱 콘텐츠의 시스템 보호 기능을 사용 중지합니다."</string>
<string name="media_controls_title" msgid="403271085636252597">"미디어"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"미디어 플레이어 고정"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"재생을 빠르게 재개할 수 있도록 빠른 설정에서 미디어 플레이어를 계속 열어 둡니다."</string>
diff --git a/res/values-ky/arrays.xml b/res/values-ky/arrays.xml
index d63a292..5a18ce1 100644
--- a/res/values-ky/arrays.xml
+++ b/res/values-ky/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index dc374f8..1c87d17 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Түзмөк ажыратылсынбы?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Жаңы түзмөк кошуу"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Эртең автоматтык түрдө кайра күйгүзүү"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Оң кулакты жупташтыруу"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Сол кулакты жупташтыруу"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Экинчи кулагыңызды жупташтырыңыз"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Сол кулакты жупташтыруу"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Угуу аппаратынын параметрлери"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Ыкчам баскыч, угуу аппаратынын шайкештиги"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Алдын ала коюлган параметрлер"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Алдын ала коюлган параметрлер"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Алдын ала коюлган параметрлер жаңыртылган жок"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудио түзмөк"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Аудио түзмөк жөнүндө"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Баш тартуу"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Жок, рахмат"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Азыр эмес"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Макул"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Дагы"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Кулпуну жүзүңүз менен ачасыз"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Көңүл буруңуз"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Манжаңыздын изи менен, телефонуңуздун кулпусун ачып, ар кандай нерселерди сатып ала аласыз.\n\nЭскертүү: Бул түзмөктүн кулпусун манжаңыздын изи менен ачууга болбойт. Кененирээк маалымат алгыңыз келсе, ишканаңыздын администраторуна кайрылыңыз."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Жок"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Жок, рахмат"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Азыр эмес"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Макул"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Манжа издерин койбойсузбу?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Манжаңыздын изин бир-эки мүнөттүн ичинде эле коесуз. Азыр койгуңуз келбесе, кийинчерээк кошуп койсоңуз болот."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Кантип иштейт"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Манжа изи менен ача турган функция сизди таануу үчүн манжаңыздын изинин уникалдуу үлгүсүн түзөт. Үлгүнү түзүү үчүн манжаңызды ар кайсы абалдан скандашыңыз керек."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Манжа изи менен ачуу функциясы балаңызды таануу үчүн манжасынын изинин кайталанбас үлгүсүн түзөт. Манжа изинин үлгүсүн түзүү үчүн ал манжасынын изин ар кайсы абалдан сүрөткө тартышы керек."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"\"Google үчүн жасалган\" деген коргоочу айнекти же пленканы колдонууну сунуштайбыз. Башка коргоочу айнектер же пленкалар манжаңыздын изин тааныбай коюшу мүмкүн."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Мыкты натыйжага жетүү үчүн Made for Google деп тастыкталган экранды коргогучту колдонуңуз. Башка экранды коргогучтарда манжанын изи жакшы түшпөшү мүмкүн."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"\"Google үчүн жасалган\" деген коргоочу айнекти же пленканы колдонууну сунуштайбыз. Башка коргоочу айнектер же пленкалар балаңыздын манжа изин тааныбай коюшу мүмкүн."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Кулпуну саат менен ачуу"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Түзмөк кулпуланган сайын"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Экран өчкөндөн 5 мүнөттөн кийин"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Түзмөк өчүп күйгөндөн кийин гана"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Жеке мейкиндикти жашыруу"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Жеке мейкиндик кулпуланганда жашыруу"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Жеке мейкиндикти колдонмолордун тизмесинен жашырып койсоңуз болот"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Тууралоо"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Жеке мейкиндик"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Жеке колдонмолоруңуз үчүн мейкиндик түзүп, каалаган учурда жашырып же кулпулап коёсуз. Коопсуздук максатында өзүнчө Google аккаунтун колдонуңуз."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Жеке мейкиндигиңизди орнотуңуз"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Жеке мейкиндигиңиз үчүн Google аккаунтун тандаңыз"</b>\n"Өзүнчө аккаунтту колдонсоңуз, шайкештирилген файлдар, сүрөттөр жана электрондук каттар мейкиндигиңизден тышкары жерде көрүнбөйт"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Ал кантип иштейт"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Жеке мейкиндик үчүн Google аккаунтун түзүү"</b>\n"Эгер атайын дайындалган аккаунтту түзсөңүз, жеке мейкиндиктен сырткары жайгашкан файлдар, сүрөттөр жана электрондук каттар шайкештирилбейт"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Кулпу коюңуз"</b>\n"Башкалар ачып албашы үчүн жеке мейкиндигиңизди кулпулап коюңуз"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Колдонмолорду орнотуңуз"</b>\n"Жеке мейкиндикте Play Store бар болгондуктан, колдонмолорду оңой орното аласыз."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Жеке мейкиндигиңиздеги кулпуланган учурда андагы колдонмолор уруксаттарды башкаргычта, купуялык тактасында жана башка параметрлерде көрүнбөйт.\n\nЖеке мейкиндигиңиз жаңы түзмөктө калыбына келтирүүгө болбойт. Эгер жеке мейкиндикти башка түзмөктө колдонгуңуз келсе, башка жеке чөйрөнү тууралашыңыз керек болот.\n\nТүзмөгүңүздү компьютерге туташтырган же ага зыянкеч колдонмолорду орноткон кишилер жеке чөйрөңүзгө кире алат."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Колдонмолорду орнотуу"</b>\n"Жеке мейкиндикте купуя сактагыңыз келген колдонмолорду орнотуңуз"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Эскертүү"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Жеке мейкиндикти кулпулаганыңызда колдонмолор иштебей калат"</b>\n"Жеке мейкиндикти кулпулаганыңызда андагы колдонмолор иштебей калат жана алардан билдирмелерди албай каласыз"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Жеке мейкиндик тууралуу кеңири маалымат"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Буга аз эле убакыт кетет"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Жеке мейкиндик туураланууда…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Жеке мейкиндик үчүн жаңы кулпу коюп же түзмөгүңүздүн кулпусун ачкан ыкманы пайдалана аласыз"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Экран кулпусун колдонуу"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Жаңы кулпу коюу"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Бир секунд…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Бир секунд…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Баары даяр!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Жеке мейкиндикке кирүү үчүн колдонмолоруңуздун тизмесине өтүп, ылдый сыдырыңыз"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Бүттү"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Жеке мейкиндигиңиз үчүн PIN код коюңуз"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Жеке мейкиндигиңиз үчүн сырсөз коюңуз"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Жеке мейкиндик үчүн граф. ачкыч коюңуз"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Маалыматыңызды купуя сактоо үчүн Google аккаунтун түзүңүз"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Кийинки экранда жеке мейкиндигиңизде колдонула турган аккаунтка кире аласыз"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Маалыматтарыңыз жеке мейкиндиктен тышкары жерлерде көрүнбөшү үчүн өзүнчө аккаунт түзүңүз. Жеке мейкиндигиңизде сакталчу нерселер:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Шайкештирилген сүрөттөр, файлдар, каттар, байланыштар, жылнаамадагы иш-чаралар ж.б."</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Жүктөлүп алынган колдонмолордун таржымалы жана сунуштар"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Көрүлгөн вебсайттар, кыстармалар жана сакталган сырсөздөр"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Жеке мейкиндиктеги колдонмолордо жасаган аракеттериңиздин негизинде сунушталган нерселер"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Түшүндүм"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Кулпулоо"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Жашыруу"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"<xliff:g id="COUNT">%d</xliff:g> чейин манжа изин кошсоңуз болот"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Тутумдун тастыктамасы"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Тастыктаманы кадап коюу"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Тармактын чоо-жайы"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Бул тармак коопсуздук деңгээли төмөн болгон эски коопсуздук протоколун (WEP) колдонот"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Көмөкчү тармактын маскасы"</string>
<string name="server_name_title" msgid="7257095185810299066">"Сервердин аталышы"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Түрү"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Түзмөктүн Wi‑Fi MAC дареги"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth дареги"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Сериялык номери"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Түзмөк күйгүзүлгөндөн берки убакыт"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Иштеп турган убакыт"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Жасалган күнү"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Биринчи жолу колдонулган күнү"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Циклдердин саны"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Ылдыйкы оң бурчту таптаңыз"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Дагы параметрлерди көрүү үчүн сенсордук тактанын ылдыйкы оң бурчун таптаңыз"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Көрсөткүчтүн ылдамдыгы"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Көрсөткүчтү толтуруу стили"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Көрсөткүчтү толтуруу стилин карага өзгөртүү"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Көрсөткүчтү толтуруу стилин жашылга өзгөртүү"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Көрсөткүчтү толтуруу стилин сарыга өзгөртүү"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Көрсөткүчтү толтуруу стилин кызгылтымга өзгөртүү"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Көрсөткүчтү толтуруу стилин көккө өзгөртүү"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Сенсордук тактанын жаңсоолорун үйрөнүү"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"трекпад, трекпад, чычкан, курсор, сыдыруу, сүрүү, оң баскычын чыкылдатуу, чыкылдатуу, көрсөткүч"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"оң баскычын чыкылдатуу, таптап коюу"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Жок}=1{1 график коюлду}other{# график коюлду}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Тынчымды алба"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Маанилүүлүк режимдери"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Маанилүү байланыштар менен колдонмолордон гана билдирмелерди алып турасыз"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Билдирмелерди чектөө"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\"Тынчымды алба\" режимин күйгүзүү"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Түзөтүү"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Ырааттамалар"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Ырааттама"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Автоматтык түрдө күйөт"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Жылнаама кошуу"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Жылнааманы колдонуу"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"График"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Ырааттама"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Телефондун үнүн өчүрүүнү жөндөө"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Бул колдонмодо кеңири жөндөөлөр колдоого алынбайт"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Дагы параметрлер"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Бул колдонмодо кошумча параметрлер бар"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Муздап калуу"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Муздап калууну колдонуу"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Кыска убакыттын ичинде көп сандагы билдирмелерди алганыңызда, түзмөгүңүз экрандагы үн чыгарылышын жана калкыма терезелерди азайтат. Чалуулар, ойготкучтар жана маанилүү жазышуулар дагы эле кадимкидей кабарланат жана бардык жөнөтүлгөн билдирмелерди билдирмелер тактасынан оңой табууга болот."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Жумуш профилдерине колдонуу"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Жумуш профилинин колдонмолоруна карата пайдаланыңыз"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR көмөкчү кызматтары"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Тандалган колдонмолор"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Жок"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Баары"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Колдонмолорго өзгөртүп коюуга уруксат берүү"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"\"Тынчымды алба\" режими таасир этпеген колдонмолор"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Дагы колдонмолорду тандаңыз"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} чейин бир саатка \"Ойготкучтар гана\" режимине өзгөртүү}other{{time} чейин # саатка \"Ойготкучтар гана\" режимине өзгөртүү}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> чейин \"Ойготкучтар гана\" режимин иштетүү"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Ар дайым үзгүлтүккө учуратуу режимине өзгөртүү"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Эскертүү"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Жабуу"</string>
<string name="device_feedback" msgid="5351614458411688608">"Түзмөк тууралуу пикир билдирүү"</string>
@@ -3922,7 +3940,7 @@
<string name="high_power_apps" msgid="5623152700992102510">"Батареяны үнөмдөө"</string>
<string name="high_power_filter_on" msgid="447849271630431531">"Батарея үнөмдөлбөйт"</string>
<string name="high_power_on" msgid="8778058701270819268">"Батарянын кубатын үнөмдөшпөйт"</string>
- <string name="high_power_off" msgid="317000444619279018">"Батареянын кубатын үнөмдөө иштетилген"</string>
+ <string name="high_power_off" msgid="317000444619279018">"Батареяны үнөмдөө иштетилген"</string>
<string name="high_power_system" msgid="3966701453644915787">"Кубатты үнөмдөөнү иштетүү мүмкүн эмес"</string>
<string name="high_power_prompt_title" msgid="2574478825228409124">"Колдонмо фондо тынымсыз иштей берсинби?"</string>
<string name="high_power_prompt_body" msgid="6029266540782139941">"<xliff:g id="APP_NAME">%1$s</xliff:g> фондо тынымсыз иштей берсе, батареянын кубаты тез сарпталышы мүмкүн. \n\nМуну кийин Параметрлер > Колдонмолордон өзгөртө аласыз."</string>
@@ -4005,7 +4023,7 @@
<string name="ignore_optimizations_on" msgid="6865583039303804932">"Үнөмдөлбөсүн"</string>
<string name="ignore_optimizations_off" msgid="9186557038453586295">"Үнөмдөө"</string>
<string name="ignore_optimizations_on_desc" msgid="1280043916460939932">"Батареяңыз тез эле отуруп калышы мүмкүн. Мындан ары колдонмонун батареяны фондо сарптоосу чектелбейт."</string>
- <string name="ignore_optimizations_off_desc" msgid="3324571675983286177">"Батареянын кубатын үнөмдөө үчүн сунушталат."</string>
+ <string name="ignore_optimizations_off_desc" msgid="3324571675983286177">"Батареяны үнөмдөө үчүн сунушталат."</string>
<string name="app_list_preference_none" msgid="1635406344616653756">"Жок"</string>
<string name="work_profile_usage_access_warning" msgid="3477719910927319122">"Бул колдонмо пайдаланган нерселердин таржымалын көрүү мүмкүнчүлүгү өчүрүлсө да, администраторуңуз ал маалыматтарды жумуш профилиңизден көрө берет"</string>
<string name="draw_overlay" msgid="7902083260500573027">"Башка колдонмолордун үстүнөн"</string>
@@ -4272,7 +4290,7 @@
<string name="system_navigation_title" msgid="4890381153527184636">"Навигация режими"</string>
<string name="swipe_up_to_switch_apps_title" msgid="6677266952021118342">"2 баскыч менен чабыттоо"</string>
<string name="swipe_up_to_switch_apps_summary" msgid="1415457307836359560">"Башка колдонмого которулуу үчүн Башкы бет баскычынан экранды жогору карай сүрүңүз. Бардык колдонмолорду көрүү үчүн дагы бир жолу сүрүңүз. Артка кайтуу үчүн \"артка\" баскычын таптап коюңуз."</string>
- <string name="emergency_settings_preference_title" msgid="6183455153241187148">"Сактык жана өзгөчө кырдаал"</string>
+ <string name="emergency_settings_preference_title" msgid="6183455153241187148">"Коопсуздук жана кырсыктаган учурлар"</string>
<string name="emergency_dashboard_summary" msgid="401033951074039302">"Кырсыктаганда чалуу, медициналык маалымат, эскертүүлөр"</string>
<string name="edge_to_edge_navigation_title" msgid="714427081306043819">"Жаңсап чабыттоо"</string>
<string name="edge_to_edge_navigation_summary" msgid="818109176611921504">"Башкы бетке өтүү үчүн экрандын ылдый жагынан өйдө карай сүрүңүз. Колдонмолорду которуштуруу үчүн экранды ылдый жагынан өйдө карай сүрүңүз да бир аз коё бербей кармап туруңуз. Артка кайтуу үчүн экрандын оң же сол жагына сүрүңүз."</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Сол"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Оң"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Кутуча"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Батарея"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Параметрлер панели"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Иш такта режимин күйгүзүү"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Иш тактанын сынамык режими көмөкчү экрандарда мажбурлап иштетилет"</string>
@@ -4913,8 +4932,8 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"Башка колдонмолордун үстүнөн көрүнгөн колдонмолорго Параметрлер экрандарынын үстүнөн да көрүнүүгө уруксат берилет"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"Mock Modem\'ге уруксат берүү"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Модемдин ордуна колдонулуучу кызматты иштетүүгө уруксат берип, сынап көрөсүз. Телефон кадимки режимде колдонулуп жатканда, бул параметрди иштетпеңиз."</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Экран бөлүшүүдөн коргоону өчүрүү"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Жакында боло турган экранды бөлүшүү сеанстарынын купуя колдонмо контенти үчүн тутум коргоосун өчүрүңүз"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Экранды көрсөтүп жатканда коргоону өчүрүү"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Келечекте экранды бөлүшүү сеанстарында колдонмолордогу купуя нерселерди коргогон системдик каражаттар иштебей калат"</string>
<string name="media_controls_title" msgid="403271085636252597">"Медиа"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Медиа ойноткучту кадап коюу"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Угуп жаткан нерсени оңой улантып кетүү үчүн медиа ойноткуч Ыкчам жөндөөлөрдө ачылып турат"</string>
diff --git a/res/values-lo/arrays.xml b/res/values-lo/arrays.xml
index 225ac31..e9cf0b9 100644
--- a/res/values-lo/arrays.xml
+++ b/res/values-lo/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index 5b58aa3..6bfe1c0 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ຕັດການເຊື່ອມຕໍ່ອຸປະກອນຫຼືບໍ່?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"ຈັບຄູ່ອຸປະກອນໃໝ່"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"ເປີດໃຊ້ໂດຍອັດຕະໂນມັດອີກຄັ້ງມື້ອື່ນ"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"ຈັບຄູ່ຫູຂວາ"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ຈັບຄູ່ຫູຊ້າຍ"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"ຈັບຄູ່ຫູອີກຂ້າງຂອງທ່ານ"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ຈັບຄູ່ຫູຊ້າຍ"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ການຕັ້ງຄ່າອຸປະກອນຊ່ວຍຟັງ"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ທາງລັດ, ການໃຊ້ຮ່ວມກັນໄດ້ຂອງເຄື່ອງຊ່ວຍຟັງ"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"ການຕັ້ງຄ່າລ່ວງໜ້າ"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ຄ່າທີ່ກຳນົດລ່ວງໜ້າ"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"ບໍ່ສາມາດອັບເດດການຕັ້ງຄ່າລ່ວງໜ້າໄດ້"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ເອົ້າພຸດສຽງ"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ກ່ຽວກັບເອົ້າພຸດສຽງ"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ຍົກເລີກ"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"ບໍ່, ຂອບໃຈ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ບໍ່ຟ້າວເທື່ອ"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ຂ້ອຍຍອມຮັບ"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"ເພີ່ມເຕີມ"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ປົດລັອກດ້ວຍໃບໜ້າຂອງທ່ານ"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ຂໍ້ຄວນຈື່"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"ໃຊ້ລາຍນິ້ວມືຂອງທ່ານເພື່ອປົດລັອກໂທລະສັບ ຫຼື ອະນຸມັດການສັ່ງຊື້.\n\nໝາຍເຫດ: ທ່ານບໍ່ສາມາດໃຊ້ນິ້ວມືຂອງທ່ານເພື່ອປົດລັອກອຸປະກອນນີ້ໄດ້. ສຳລັບຂໍ້ມູນເພີ່ມເຕີມ, ໃຫ້ຕິດຕໍ່ຜູ້ເບິ່ງແຍງລະບົບອົງກອນຂອງທ່ານ."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ຍົກເລີກ"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"ບໍ່, ຂອບໃຈ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ບໍ່ຟ້າວເທື່ອ"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ຂ້ອຍຍອມຮັບ"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ຂ້າມລາຍນິ້ວມືບໍ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ການຕັ້ງຄ່າລາຍນິ້ວມືຈະໃຊ້ເວລາພຽງໜຶ່ງ ຫຼື ສອງນາທີເທົ່ານັ້ນ. ຫາກທ່ານຂ້າມຂັ້ນຕອນນີ້, ທ່ານຈະສາມາດເພີ່ມລາຍນິ້ວມືໄດ້ໃນພາຍຫຼັງໂດຍການໄປທີ່ການຕັ້ງຄ່າ."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ທຸກເທື່ອທີ່ອຸປະກອນລັອກ"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 ນາທີຫຼັງຈາກໄລຍະໝົດເວລາໜ້າຈໍ"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"ຫຼັງຈາກຣີສະຕາດອຸປະກອນເທົ່ານັ້ນ"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ເຊື່ອງພື້ນທີ່ສ່ວນບຸກຄົນໄວ້"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ເຊື່ອງພື້ນທີ່ສ່ວນບຸກຄົນເມື່ອມັນຖືກລັອກໄວ້"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"ເພື່ອບໍ່ໃຫ້ຄົນອື່ນຮູ້ວ່າທ່ານມີພື້ນທີ່ສ່ວນບຸກຄົນຢູ່ອຸປະກອນຂອງທ່ານ, ທ່ານສາມາດເຊື່ອງມັນຈາກລາຍຊື່ແອັບຂອງທ່ານໄດ້"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"ຕັ້ງຄ່າ"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"ພື້ນທີ່ສ່ວນບຸກຄົນ"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ເຊື່ອງ ຫຼື ລັອກແອັບສ່ວນຕົວໃນພື້ນທີ່ແຍກຕ່າງຫາກ. ໃຊ້ບັນຊີ Google ສະເພາະເພື່ອຄວາມປອດໄພພິເສດ."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"ຕັ້ງຄ່າພື້ນທີ່ສ່ວນບຸກຄົນຂອງທ່ານ"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"ເລືອກບັນຊີ Google ສຳລັບພື້ນທີ່ຂອງທ່ານ"</b>\n"ການໃຊ້ບັນຊີສະເພາະຊ່ວຍຢຸດການຊິງຄ໌ໄຟລ໌, ຮູບພາບ ແລະ ອີເມວທີ່ປາກົດຢູ່ນອກພື້ນທີ່ຂອງທ່ານ"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"ມັນເຮັດວຽກແນວໃດ"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"ສ້າງບັນຊີ Google ສຳລັບພື້ນທີ່ຂອງທ່ານ"</b>\n"ຫາກທ່ານໃຊ້ບັນຊີເພື່ອການດຳເນີນການນີ້ໂດຍສະເພາະ, ກໍຈະຊ່ວຍປ້ອງກັນບໍ່ໃຫ້ໄຟລ໌, ຮູບພາບ ແລະ ອີເມວທີ່ຊິ້ງໄວ້ປາກົດຢູ່ນອກພື້ນທີ່ຂອງທ່ານໄດ້"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ຕັ້ງລັອກ"</b>\n"ລັອກພື້ນທີ່ຂອງທ່ານ ເພື່ອບໍ່ໃຫ້ຄົນອື່ນເປີດມັນ"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ຕິດຕັ້ງແອັບ"</b>\n"ພື້ນທີ່ສ່ວນບຸກຄົນຂອງທ່ານມີ Play Store ຂອງມັນເອງ ເພື່ອໃຫ້ທ່ານສາມາດຕິດຕັ້ງແອັບຕ່າງໆໄດ້ຢ່າງງ່າຍດາຍ."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"ແອັບໃນພື້ນທີ່ສ່ວນບຸກຄົນຂອງທ່ານຈະບໍ່ປາກົດໃນຕົວຈັດການສິດອະນຸຍາດ, ແຜງໜ້າປັດຄວາມເປັນສ່ວນຕົວ ແລະ ການຕັ້ງຄ່າອື່ນໆເມື່ອລັອກພື້ນທີ່ສ່ວນຕົວຂອງທ່ານ.\n\nລະບົບບໍ່ສາມາດກູ້ຄືນພື້ນທີ່ສ່ວນບຸກຄົນຂອງທ່ານໄປຫາອຸປະກອນໃໝ່ໄດ້. ທ່ານຈະຕ້ອງຕັ້ງຄ່າພື້ນທີ່ສ່ວນບຸກຄົນໃໝ່ຫາກທ່ານຕ້ອງການໃຊ້ຢູ່ອຸປະກອນອື່ນ.\n\nໃຜກໍຕາມທີ່ເຊື່ອມຕໍ່ອຸປະກອນຂອງທ່ານກັບຄອມພິວເຕີ ຫຼື ຕິດຕັ້ງແອັບທີ່ເປັນອັນຕະລາຍໃນອຸປະກອນຂອງທ່ານອາດສາມາດເຂົ້າເຖິງພື້ນທີ່ສ່ວນຕົວຂອງທ່ານໄດ້."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ຕິດຕັ້ງແອັບ"</b>\n"ຕິດຕັ້ງແອັບທີ່ທ່ານຕ້ອງການເກັບໄວ້ເປັນສ່ວນຕົວໃນພື້ນທີ່ຂອງທ່ານ"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ຂໍ້ຄວນຈື່"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"ແອັບຈະຢຸດເຮັດວຽກເມື່ອທ່ານລັອກພື້ນທີ່ຂອງທ່ານ"</b>\n"ເມື່ອທ່ານລັອກພື້ນທີ່ຂອງທ່ານ, ຈະເຮັດໃຫ້ແອັບໃນພື້ນທີ່ດັ່ງກ່າວຢຸດເຮັດວຽກ ແລະ ທ່ານກໍຈະບໍ່ໄດ້ຮັບການແຈ້ງເຕືອນຈາກແອັບເຫຼົ່ານັ້ນ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ສຶກສາເພີ່ມເຕີມກ່ຽວກັບພື້ນທີ່ສ່ວນບຸກຄົນ"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ຂັ້ນຕອນນີ້ຈະໃຊ້ເວລາໄລຍະໜຶ່ງ"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"ກຳລັງຕັ້ງຄ່າພື້ນທີ່ສ່ວນຕົວ…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"ທ່ານສາມາດຕັ້ງຄ່າການລັອກໃໝ່ສຳລັບພື້ນທີ່ສ່ວນບຸກຄົນໄດ້ເທົ່ານັ້ນ ຫຼື ຈະໃຊ້ການລັອກດຽວກັນທີ່ທ່ານໃຊ້ປົດລັອກອຸປະກອນຂອງທ່ານກໍໄດ້"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ໃຊ້ການລັອກໜ້າຈໍ"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"ເລືອກການລັອກໃໝ່"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ກະລຸນາລໍຖ້າ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ກະລຸນາລໍຖ້າ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"ຮຽບຮ້ອຍໝົດແລ້ວ!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"ເພື່ອຊອກຫາພື້ນທີ່ສ່ວນບຸກຄົນຂອງທ່ານ, ໃຫ້ເຂົ້າໄປລາຍຊື່ແອັບຂອງທ່ານແລ້ວເລື່ອນລົງລຸ່ມ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"ແລ້ວໆ"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ຕັ້ງຄ່າ PIN ສຳລັບພື້ນທີ່ສ່ວນຕົວຂອງທ່ານ"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ຕັ້ງລະຫັດຜ່ານສຳລັບພື້ນທີ່ສ່ວນຕົວຂອງທ່ານ"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ຕັ້ງຄ່າຮູບແບບສຳລັບພື້ນທີ່ສ່ວນຕົວຂອງທ່ານ"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"ສ້າງບັນຊີ Google ເພື່ອຊ່ວຍຮັກສາຂໍ້ມູນຂອງທ່ານໃຫ້ເປັນສ່ວນຕົວ"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"ຢູ່ໜ້າຈໍຕໍ່ໄປທ່ານສາມາດເຂົ້າສູ່ລະບົບບັນຊີໄດ້ເພື່ອໃຊ້ກັບພື້ນທີ່ສ່ວນບຸກຄົນຂອງທ່ານ"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"ສ້າງບັນຊີສະເພາະເພື່ອຊ່ວຍຢຸດຂໍ້ມູນທີ່ປາກົດຢູ່ນອກພື້ນທີ່ສ່ວນບຸກຄົນ, ເຊັ່ນ:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"ຊິ້ງຮູບພາບ, ໄຟລ໌, ອີເມວ, ລາຍຊື່ຜູ້ຕິດຕໍ່, ນັດໝາຍປະຕິທິນ ແລະ ຂໍ້ມູນອື່ນໆແລ້ວ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ປະຫວັດການດາວໂຫຼດແອັບ ແລະ ການແນະນຳ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ປະຫວັດການທ່ອງເວັບ, ບຸກມາກ ແລະ ລະຫັດຜ່ານທີ່ໄດ້ບັນທຶກໄວ້"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ເນື້ອຫາທີ່ແນະນຳໃຫ້ທີ່ກ່ຽວຂ້ອງກັບກິດຈະກຳຂອງທ່ານໃນແອັບພື້ນທີ່ສ່ວນບຸກຄົນ"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"ເຂົ້າໃຈແລ້ວ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ລັອກ"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"ເຊື່ອງ"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"ທ່ານສາມາດເພີ່ມບໍ່ເກີນ <xliff:g id="COUNT">%d</xliff:g> ລາຍນີ້ວມື"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"ໃບຮັບຮອງລະບົບ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"ການປັກໝຸດໃບຮັບຮອງ"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ລາຍລະອຽດເຄືອຂ່າຍ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ເຄືອຂ່າຍນີ້ໃຊ້ໂປຣໂຕຄໍຄວາມປອດໄພເວີຊັນເກົ່າທີ່ຊື່ວ່າ WEP, ເຊິ່ງມີຄວາມປອດໄພໜ້ອຍກວ່າ"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet Mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"ຊື່ເຊີບເວີ"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ປະເພດ"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ທີ່ຢູ່ Wi‑Fi MAC ຂອງອຸປະກອນ"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ທີ່ຢູ່ Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"ໝາຍເລກຊີຣຽວ"</string>
- <string name="status_up_time" msgid="1274778533719495438">"ເວລາເປີດນຳໃຊ້"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ໄລຍະເວລາເຮັດວຽກ"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"ວັນທີທີ່ຜະລິດ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ວັນທີທີ່ນຳໃຊ້ເທື່ອທຳອິດ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ຈຳນວນຮອບ"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ແຕະລຸ່ມສຸດເບື້ອງຂວາ"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"ແຕະຢູ່ແຈຂວາລຸ່ມສຸດຂອງແຜ່ນສຳຜັດເພື່ອເບິ່ງຕົວເລືອກເພີ່ມເຕີມ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"ຄວາມໄວຂອງຕົວຊີ້"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"ຮູບແບບການຕື່ມຕົວຊີ້"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"ປ່ຽນຮູບແບບການຕື່ມຕົວຊີ້ເປັນສີດຳ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"ຮູບແບບການຕື່ມຕົວຊີ້ເປັນສີຂຽວ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"ຮູບແບບການຕື່ມຕົວຊີ້ເປັນສີເຫຼືອງ"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"ຮູບແບບການຕື່ມຕົວຊີ້ເປັນສີບົວ"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"ຮູບແບບການຕື່ມຕົວຊີ້ເປັນສີຟ້າ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ສຶກສາທ່າທາງຂອງແຜ່ນສຳຜັດ"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ແທຣັກແຜດ, ແທຣັກ ແຜດ, ເມົ້າ, ເຄີເຊີ, ເລື່ອນ, ປັດ, ຄລິກຂວາ, ຄລິກ, ຕົວຊີ້"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ຄລິກຂວາ, ແຕະ"</string>
@@ -2029,7 +2032,7 @@
<string name="display_category_title" msgid="6638191682294461408">"ການສະແດງຜົນ"</string>
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"ສີ ແລະ ໂມຊັນ"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"ຄວາມຄົມຊັດຂອງສີ"</string>
- <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"ຄວາມຄົມຊັດທີ່ສູງຂຶ້ນເຮັດໃຫ້ຂໍ້ຄວາມ, ປຸ່ມ, ແລະ ໄອຄອນໂດດເດັ່ນຫຼາຍຂຶ້ນ. ເລືອກຮູບລັກຄວາມຄົມຊັດທີ່ດີທີ່ສຸດສໍາລັບທ່ານ."</string>
+ <string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"ຄວາມຄົມຊັດທີ່ສູງຂຶ້ນເຮັດໃຫ້ຂໍ້ຄວາມ, ປຸ່ມ ແລະ ໄອຄອນໂດດເດັ່ນຫຼາຍຂຶ້ນ. ເລືອກຮູບລັກຄວາມຄົມຊັດທີ່ດີທີ່ສຸດສໍາລັບທ່ານ."</string>
<string name="color_contrast_note" msgid="7592686603372566198">"ບາງແອັບອາດຈະບໍ່ຮອງຮັບການຕັ້ງຄ່າສີ ແລະ ຄວາມຄົມຊັດຂໍ້ຄວາມທັງໝົດ"</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"ຕົວຢ່າງ"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
@@ -2037,7 +2040,7 @@
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"ຕິດຕາມຜົນບໍ?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"ລາຍງານການເດີນທາງເພື່ອທຸລະກິດ"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"ສຳລັບຄວາມຊ່ວຍເຫຼືອເພີ່ມເຕີມ, ກະລຸນາຕິດຕໍ່ຫາຂ້ອຍເອງ ຫຼື Helen. ລາຍງານນີ້ຈະເປັນ"</string>
- <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"ຄ່າໃຊ້ຈ່າຍຂອງລູກຂ່າຍ"</string>
+ <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"ຄ່າໃຊ້ຈ່າຍຂອງລູກຄ້າ"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"ກ່ຽວກັບຄອນທຣາສຂອງສີ"</string>
<string name="accessibility_turn_screen_darker_title" msgid="5986223133285858349">"ເຮັດໃຫ້ໜ້າຈໍມືດລົງ"</string>
<string name="interaction_control_category_title" msgid="2696474616743882372">"ການຄວບຄຸມການໂຕ້ຕອບ"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ບໍ່ມີ}=1{ຕັ້ງກຳນົດເວລາ 1 ລາຍການແລ້ວ}other{ຕັ້ງກຳນົດເວລາ # ລາຍການແລ້ວ}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ຫ້າມລົບກວນ"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ໂໝດຄວາມສຳຄັນ"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"ຮັບການແຈ້ງເຕືອນສະເພາະຄົນ ແລະ ແອັບສຳຄັນເທົ່ານັ້ນ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"ຈຳກັດການລົບກວນ"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"ເປີດໂໝດຫ້າມລົບກວນ"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"ແກ້ໄຂ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"ການກຳນົດເວລາ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"ກຳນົດເວລາ"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"ເປີດອັດຕະໂນມັດ"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"ເພີ່ມປະຕິທິນ"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ໃຊ້ປະຕິທິນຂອງທ່ານ"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"ກຳນົດເວລາ"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"ກຳນົດເວລາ"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ປິດສຽງໂທລະສັບໃນບາງເວລາ"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"ແອັບນີ້ບໍ່ຮອງຮັບການຕັ້ງຄ່າທີ່ປັບປຸງໃຫ້ດີຂຶ້ນ"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"ການຕັ້ງຄ່າເພີ່ມເຕີມ"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"ການຕັ້ງຄ່າເພີ່ມເຕີມແມ່ນມີໃຫ້ຢູ່ພາຍໃນແອັບ"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"ຄູດາວ"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"ໃຊ້ຄູດາວ"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"ເມື່ອທ່ານໄດ້ຮັບການແຈ້ງເຕືອນຈຳນວນຫຼາຍພາຍໃນໄລຍະເວລາສັ້ນໆ, ອຸປະກອນຂອງທ່ານຈະຫຼຸດສຽງລົບກວນ ແລະ ຫຼຸດຈຳນວນປັອບອັບຢູ່ໜ້າຈໍລົງ. ໂດຍການໂທ, ການປຸກ ແລະ ການສົນທະນາສຳຄັນຈະຍັງຄົງແຈ້ງເຕືອນຕາມປົກກະຕິ ແລະ ຍັງສາມາດຊອກຫາການແຈ້ງເຕືອນທີ່ສົ່ງມາທັງໝົດໄດ້ຢ່າງງ່າຍດາຍຕາມເສດສີ."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ນຳໃຊ້ກັບໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ໃຊ້ກັບແອັບໃນໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"ບໍລິການຕົວຊ່ວຍ VR"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"ແອັບທີ່ເລືອກແລ້ວ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ບໍ່ມີ"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ທັງໝົດ"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ອະນຸຍາດໃຫ້ແອັບຍົກເລີກໄດ້"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ແອັບທີ່ສາມາດລົບກວນໄດ້"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"ເລືອກແອັບເພີ່ມເຕີມ"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{ປ່ຽນເປັນໂມງປຸກພຽງແຕ່ໜຶ່ງຊົ່ວໂມງຈົນຮອດ {time} ເທົ່ານັ້ນ}other{ປ່ຽນເປັນໂມງປຸກພຽງແຕ່ # ຊົ່ວໂມງຈົນຮອດ {time} ເທົ່ານັ້ນ}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"ປ່ຽນເປັນໂມງປຸກເທົ່ານັ້ນຈົນຮອດ <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ປ່ຽນເປັນຂັດຈັງຫວະທຸກຄັ້ງ"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"ຄໍາເຕືອນ"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"ປິດ"</string>
<string name="device_feedback" msgid="5351614458411688608">"ສົ່ງຄຳຕິຊົມກ່ຽວກັບອຸປະກອນນີ້"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ຊ້າຍ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ຂວາ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"ເຄສ"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ແບັດເຕີຣີ"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ແຜງການຕັ້ງຄ່າ"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ບັງຄັບໂໝດເດັສທັອບ"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ບັງຄັບໂໝດເດັສທັອບແບບທົດລອງໃຊ້ຢູ່ໜ້າຈໍທີສອງ"</string>
@@ -4914,7 +4933,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"ອະນຸຍາດ Mock Modem"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"ອະນຸຍາດໃຫ້ອຸປະກອນນີ້ເອີ້ນໃຊ້ບໍລິການ Mock Modem ສຳລັບການທົດສອບເຄື່ອງມືໄດ້. ກະລຸນາຢ່າເປີດການນຳໃຊ້ສິ່ງນີ້ໃນລະຫວ່າງການໃຊ້ໂທລະສັບຕາມປົກກະຕິ"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"ປິດການນຳໃຊ້ການປົກປ້ອງການແບ່ງປັນໜ້າຈໍ"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"ປິດການປົກປ້ອງລະບົບສຳລັບເນື້ອຫາແອັບທີ່ລະອຽດອ່ອນສຳລັບເຊດຊັນການແບ່ງປັນໜ້າຈໍທີ່ຈະມາເຖິງ"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"ປິດການປົກປ້ອງລະບົບສຳລັບເນື້ອຫາແອັບທີ່ລະອຽດອ່ອນໃນເຊດຊັນການແບ່ງປັນໜ້າຈໍທີ່ຈະມາເຖິງ"</string>
<string name="media_controls_title" msgid="403271085636252597">"ມີເດຍ"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"ປັກໝຸດເຄື່ອງຫຼິ້ນມີເດຍ"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"ເພື່ອສືບຕໍ່ການຫຼິ້ນແບບໄວໆ, ເຄື່ອງຫຼິ້ນມີເດຍຈະເປີດປະໄວ້ໃນການຕັ້ງຄ່າດ່ວນ"</string>
diff --git a/res/values-lt/arrays.xml b/res/values-lt/arrays.xml
index 4560705..c0d7b1f 100644
--- a/res/values-lt/arrays.xml
+++ b/res/values-lt/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index d92f66f..a0c2a6f 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Atjungti įrenginį?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Susieti naują įrenginį"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatiškai vėl įjungti rytoj"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Susieti dešinę ausį"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Susieti kairę ausį"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Susiekite kitą ausį"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Susieti kairę ausį"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Klausos įrenginio nustatymai"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Spartusis klavišas, klausos aparato suderinamumas"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Išankstiniai nustatymai"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Išankstiniai nustatymai"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Išankstinių nustatymų atnaujinti nepavyko"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Garso išvestis"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Apie garso išvestį"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Atšaukti"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ačiū, ne"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ne dabar"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Sutinku"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Daugiau"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Atrakinimas naudojant veidą"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Atminkite"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Atrakinkite telefoną ir patvirtinkite pirkimo operacijas piršto atspaudu.\n\nPastaba: negalite atrakinti šio įrenginio piršto atspaudu. Norėdami gauti daugiau informacijos, susisiekite su organizacijos administratoriumi."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Atšaukti"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ne, ačiū"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ne dabar"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Sutinku"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Praleisti piršto antspaudą?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Piršto antspaudo sąranka užtrunka tik minutę ar dvi. Jei praleisite šį veiksmą, vėliau piršto antspaudą galėsite pridėti nustatymuose."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Kaip tai veikia"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Naudojant atrakinimą piršto atspaudu kuriamas unikalus jūsų piršto atspaudo modelis, kad būtų galima patvirtinti jūsų tapatybę. Kad sukurtumėte šį piršto atspaudo modelį nustatydami, turite sukurti kontrolinio kodo vaizdų iš skirtingų pozicijų."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Naudojant atrakinimą kontroliniu kodu kuriamas unikalus jūsų vaiko kontrolinio kodo modelis, kad būtų galima patvirtinti vaiko tapatybę. Norint sukurti šį kontrolinio kodo modelį nustatant, reikia sukurti kontrolinio kodo vaizdų iš skirtingų pozicijų."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Kad pasiektumėte geriausių rezultatų, naudokite „Made for Google“ sertifikuotą apsauginį ekrano stiklą. Naudojant kitus apsauginius ekrano stiklus piršto atspaudas gali neveikti."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Kad pasiektumėte geriausių rezultatų, naudokite „Made for Google“ sertifikuotą apsauginį ekrano stiklą. Naudojant kitus apsauginius ekrano stiklus kontrolinis kodas gali neveikti."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Kad pasiektumėte geriausių rezultatų, naudokite „Made for Google“ sertifikuotą apsauginį ekrano stiklą. Naudojant kitus apsauginius ekrano stiklus vaiko kontrolinis kodas gali neveikti."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Laikrodžio atrakinimas"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Kaskart, kai įrenginys užrakinamas"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Po 5 min., pasib. skirt. ekrano laikui"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Tik iš naujo paleidus įrenginį"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Privačios erdvės slėpimas"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Užrakintos privačios erdvės slėpimas"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Jei nenorite, kad kiti žmonės žinotų, jog turite privačią erdvę savo įrenginyje, galite slėpti ją programų sąraše"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Nustatyti"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privati erdvė"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Paslėpkite ir užrakinkite privačias programas atskiroje erdvėje. Norėdami užtikrinti papildomą saugą naudokite specialiai tam skirtą „Google“ paskyrą."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Nustatykite privačią erdvę"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Pasirinkite „Google“ paskyrą, kurią naudosite erdvėje"</b>\n"Naudojant specialiai tam skirtą paskyrą, sinchronizuoti failai, nuotraukos ir el. laiškai neatsidurs už erdvės ribų."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Kaip tai veikia"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Sukurkite „Google“ paskyrą savo erdvei"</b>\n"Jei naudosite specialiai tam skirtą paskyrą, sinchronizuoti failai, nuotraukos ir el. laiškai nebus pasiekiami už erdvės ribų"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Nustatykite užraktą"</b>\n"Užrakinkite erdvę, kad į ją nepatektų kiti žmonės."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Įdiekite programų"</b>\n"Jūsų privačioje erdvėje yra „Play“ parduotuvė, todėl galite lengvai įdiegti programų."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Programos privačioje erdvėje nebus rodomos leidimų tvarkytuvėje, privatumo informacijos suvestinėje ir kituose nustatymuose, kai privati erdvė bus užrakinta.\n\nPrivačios erdvės negalima atkurti naujame įrenginyje. Turėsite nustatyti kitą privačią erdvę, jei norėsite ją naudoti kitame įrenginyje.\n\nBet kuris naudotojas, prijungęs jūsų įrenginį prie kompiuterio ar įdiegęs kenkėjiškų programų įrenginyje, galės pasiekti jūsų privačią erdvę."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Įdiekite programų"</b>\n"Įdiekite programų, kurias norite laikyti privačiai savo erdvėje"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Ką verta atminti"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Programos sustabdomos, kai užrakinate erdvę"</b>\n"Kai užrakinate erdvę, erdvėje esančios programos sustabdomos ir negaunate iš jų pranešimų"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Sužinokite daugiau apie privačią erdvę"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Tai užtruks kelias akimirkas"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Nustatoma privati erdvė…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Galite nustatyti naują užraktą tik privačiai erdvei arba naudoti tą patį užraktą, kurį naudojate įrenginiui užrakinti"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Naudoti ekrano užraktą"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Pasirinkti naują užraktą"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Šiek tiek palaukite…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Šiek tiek palaukite…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Viskas nustatyta!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Jei norite rasti privačią erdvę, eikite į programų sąrašą, tada slinkite žemyn"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Atlikta"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Privačios erdvės PIN kodo nustatymas"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Privačios erdvės slaptažodžio nustatymas"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Privačios erdvės atrakinimo piešinio nustatymas"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Kurkite „Google“ paskyrą ir apsaugokite duomenų privatumą"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Kitame ekrane galite prisijungti prie paskyros, kurią norite naudoti su privačia erdve"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Sukurkite specialiai tam skirtą paskyrą, kuri apsaugos, kad duomenys neišeitų iš privačios erdvės, pvz., toliau nurodyti."</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinchronizuotos nuotraukos, failai, el. laiškai, kontaktai, kalendoriaus įvykiai ir kiti duomenys"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Programų atsisiuntimo istorija ir rekomendacijos"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Naršymo istorija, žymės ir išsaugoti slaptažodžiai"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Siūlomas turinys susijęs su jūsų veikla privačios erdvės programose"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Supratau"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Užrakinimas"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Slėpimas"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Galite pridėti iki <xliff:g id="COUNT">%d</xliff:g> piršto ats."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sistemos sertifikatas"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Sertifikatų prisegimas"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Išsami tinklo info."</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Šiame tinkle naudojamas senesnis ir mažiau saugus saugos protokolas, vadinamas WEP"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Potinklio kaukė"</string>
<string name="server_name_title" msgid="7257095185810299066">"Serverio pavadinimas"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipas"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Įrenginio „Wi‑Fi“ MAC adresas"</string>
<string name="status_bt_address" msgid="6919660304578476547">"„Bluetooth“ adresas"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serijos numeris"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Veikimo laikas"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Veiksnumo koeficientas"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Pagaminimo data"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Pirmo naudojimo data"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Ciklų skaičius"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Palietus apačioje dešinėje"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Daugiau – palietus jutiklinės dalies apačioje dešinėje"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Žymiklio greitis"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Rodyklės užpildymo stilius"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Keisti rodyklės užpildymo stilių į juodą"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Keisti rodyklės užpildymo stilių į žalią"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Keisti rodyklės užpildymo stilių į geltoną"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Keisti rodyklės užpildymo stilių į rožinį"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Keisti rodyklės užpildymo stilių į mėlyną"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Sužinokite jutiklinės dalies gestus"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"jutiklinė dalis, pelė, žymeklis, slinkti, perbraukti, spustelėti dešiniuoju klavišu, spustelėti"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"spustelėti dešiniuoju klavišu, paliesti"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nė vieno}=1{Nustatytas 1 tvarkaraštis}one{Nustatytas # tvarkaraštis}few{Nustatyti # tvarkaraščiai}many{Nustatyta # tvarkaraščio}other{Nustatyta # tvarkaraščių}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Netrukdymo režimas"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioriteto režimai"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Gauti pranešimus tik iš svarbių žmonių ar programų"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Pertraukčių apribojimas"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Netrukdymo režimo įjungimas"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Redaguoti"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Tvarkaraščiai"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Tvarkaraštis"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Įjungti automatiškai"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Pridėti kalendorių"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Naudoti kalendorių"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Tvarkaraštis"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Nustatykite tvarkaraštį"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Tvarkaraštis"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> val. <xliff:g id="MINUTES">%2$d</xliff:g> min."</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Tvarkaraštis"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Nutildykite telefoną tam tikru metu"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Nustatykite netrukdymo režimo taisykles"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ši programa nepalaiko išplėstinių nustatymų"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Daugiau nustatymų"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Daugiau nustatymų pasiekiama šioje programoje"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Neaktyvumo laikotarpis"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Neaktyvumo laikotarpio pritaikymas"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kai per trumpą laiką gaunate daug pranešimų, įrenginys sumažina garso trukdžių ir iššokančiųjų langų ekrane. Apie skambučius, signalus ir prioritetinius pokalbius bus pranešama kaip įprastai, o visus pateiktus pranešimus lengva rasti pranešimų skydelyje."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Taikyti darbo profiliams"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Taikyti darbo profilio programoms"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Pagalbinės virtualiosios realybės paslaugos"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Pasirinktos programos"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Netaikoma"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Viskas"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Leisti programoms nepaisyti"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Programos, kurios gali trikdyti"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Pasirinkti daugiau programų"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Pakeisti į signalus tik vienai valandai iki {time}}one{Pakeisti į signalus tik # valandai iki {time}}few{Pakeisti į signalus tik # valandoms iki {time}}many{Pakeisti į signalus tik # valandos iki {time}}other{Pakeisti į signalus tik # valandų iki {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Pakeisti tik į signalus iki <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Pakeisti į pertraukimo nustatymą visam laikui"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Pervardyti"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Keisti piktogramą"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Piktogramos keitimas"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Perspėjimas"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Uždaryti"</string>
<string name="device_feedback" msgid="5351614458411688608">"Siųsti atsiliepimą apie šį įrenginį"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Kairėje"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Dešinėje"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Dėklas"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Akumuliatorius"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Nustatymų skydelis"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Priverstinai įjungti darbalaukio režimą"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Priverstinai įjungti eksperimentinį darbalaukio režimą antriniuose ekranuose"</string>
diff --git a/res/values-lv/arrays.xml b/res/values-lv/arrays.xml
index a4c27de..0740d38 100644
--- a/res/values-lv/arrays.xml
+++ b/res/values-lv/arrays.xml
@@ -131,7 +131,7 @@
<item msgid="6215795691318745695">"Statisks"</item>
</string-array>
<string-array name="wifi_proxy_settings">
- <item msgid="4669222334822978847">"Neviens"</item>
+ <item msgid="4669222334822978847">"Nav"</item>
<item msgid="6242198071587397280">"Manuāli"</item>
<item msgid="464383874780058242">"Starpniekserv. aut. konf."</item>
</string-array>
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 2cc1d3d..59aa4dd 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Vai atvienot ierīci?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Savienošana pārī ar jaunu ierīci"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automātiski atkal ieslēgt rīt"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Savienot pārī labo"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Savienot pārī kreiso"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Savienojiet otru aparātu"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Savienot pārī kreiso"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Dzirdes aparāta iestatījumi"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Saīsne, saderība ar dzirdes aparātiem."</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Pirmsiestatījumi"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Pirmsiestatījums"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Nebija iespējams atjaunināt pirmsiestatījumu."</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio izeja"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Par audio izvadi"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Atcelt"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nē, paldies"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ne tagad"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Piekrītu"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Vairāk"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Autorizācija pēc sejas"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Svarīga informācija"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Izmantojiet pirksta nospiedumu, lai autorizētu tālruni vai apstiprinātu pirkumu.\n\nPiezīme. Pirksta nospiedumu nevar izmantot šīs ierīces atbloķēšanai. Lai iegūtu plašāku informāciju, sazinieties ar savas organizācijas administratoru."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Atcelt"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nē, paldies"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ne tagad"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Piekrītu"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Izlaist pirksta nospiedumu?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Pirksta nospieduma iestatīšana ilgst tikai pāris minūtes. Ja to izlaidīsiet, varēsiet pirksta nospiedumu pievienot vēlāk iestatījumos."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Katru reizi, kad ierīce tiek bloķēta"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minūtes pēc ekrāna noildzes"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Tikai pēc ierīces restartēšanas"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Privātās telpas paslēpšana"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Paslēpt privāto telpu, kad tā ir bloķēta"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Lai citi nezinātu, ka ierīcē ir privātā telpa, varat paslēpt to no lietotņu saraksta."</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Iestatīt"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privātā telpa"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Varat paslēpt vai bloķēt privātās lietotnes atsevišķā vietā. Papildu drošībai varat izmantot atsevišķu Google kontu."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Iestatiet privāto telpu"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Google konta izvēle privātajai telpai"</b>\n"Ja izmantojat atsevišķu kontu, tas palīdz gādāt, lai sinhronizētie faili, fotoattēli un e-pasta ziņojumi netiktu rādīti ārpus privātās telpas."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Darbības principi"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Google konta izveide jūsu privātajai telpai"</b>\n"Ja izmantojat atsevišķu kontu, tas palīdz gādāt, lai sinhronizētie faili, fotoattēli un e-pasta ziņojumi netiktu rādīti ārpus privātās telpas."</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Bloķēšanas iestatīšana"</b>\n"Varat bloķēt privāto telpu, lai citi nevarētu to atvērt."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Lietotņu instalēšana"</b>\n"Privātajā telpā ir atsevišķa piekļuve Play veikalam, tāpēc varat ērti instalēt lietotnes."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Kamēr privātā telpa būs bloķēta, tajā ievietotās lietotnes netiks rādītas atļauju pārvaldniekā, konfidencialitātes informācijas panelī un citos iestatījumos.\n\nPrivāto telpu nevar atjaunot citā ierīcē. Ja vēlēsieties to izmantot citā ierīcē, privātā telpa būs jāiestata vēlreiz.\n\nJebkura persona, kas pievienos jūsu ierīci datoram vai instalēs ierīcē ļaunprātīgas lietotnes, iespējams, varēs piekļūt jūsu privātajai telpai."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Lietotņu instalēšana"</b>\n"Instalējiet lietotnes, ko vēlaties privāti glabāt savā telpā."</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Svarīga informācija"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Lietotnes pārstāj darboties, kad bloķējat privāto telpu"</b>\n"Kad bloķējat privāto telpu, lietotnes šajā telpā pārstāj darboties un jūs turpmāk nesaņemat šo lietotņu paziņojumus."</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Uzzināt vairāk par privāto telpu"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Tas ilgs kādu brīdi."</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Notiek privātās telpas iestatīšana…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Privātajai telpai varat izmantot jaunu bloķēšanas metodi vai izmantot to pašu metodi, ko lietojat ierīces atbloķēšanai."</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Izmantot ekrāna bloķēšanu"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Izvēlēties jaunu bloķēšanas metodi"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Uzgaidiet…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Uzgaidiet…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Gatavs!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Lai atrastu privāto telpu, dodieties uz lietotņu sarakstu un ritiniet lejup."</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Gatavs"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Iestatiet PIN privātajai telpai"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Iestatiet paroli privātajai telpai"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Iestatiet kombināciju privātajai telpai"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Izveidojiet Google kontu, lai aizsargātu datu konfidencialitāti"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Nākamajā ekrānā varēsiet pierakstīties kontā, ko vēlaties izmantot privātajai telpai."</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Varat izveidot īpašu kontu, lai ierobežotu datu rādīšanu ārpus privātās telpas (tālāk ir sniegti piemēri)"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinhronizētie fotoattēli, faili, e-pasta ziņojumi, kontaktpersonas, pasākumi u. c. dati"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Lietotņu lejupielādes vēsture un ieteikumi"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Pārlūkošanas vēsture, grāmatzīmes un saglabātās paroles"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Satura ieteikumi, kas saistīti ar jūsu darbībām privātās telpas lietotnēs"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Labi"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloķēšana"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Paslēpt"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Varat pievienot līdz <xliff:g id="COUNT">%d</xliff:g> pirkstu nospiedumiem."</string>
@@ -939,7 +935,7 @@
<string name="wifi_advanced_toggle_description" msgid="7299179796727934885">"Nolaižamais saraksts “Papildu opcijas”"</string>
<string name="wifi_advanced_toggle_description_collapsed" msgid="3615140699129928913">"izvērst"</string>
<string name="wifi_ssid" msgid="2713062130735103151">"Tīkla nosaukums"</string>
- <string name="wifi_ssid_hint" msgid="1940577553241083524">"Ievadiet SSID."</string>
+ <string name="wifi_ssid_hint" msgid="1940577553241083524">"Ievadiet SSID"</string>
<string name="wifi_security" msgid="9095934643631406913">"Drošība"</string>
<string name="wifi_hidden_network" msgid="6466834025375485596">"Slēpts tīkls"</string>
<string name="wifi_hidden_network_warning" msgid="3937433813754746158">"Ja maršrutētājs pārraida tīkla ID, bet jūs vēlaties arī turpmāk izveidot ar to savienojumu, iestatiet tīklu kā slēptu.\n\nTādā veidā var tikt radīts drošības apdraudējums, jo tālrunis regulāri pārraidīs signālu, lai atrastu tīklu.\n\nIestatot tīklu kā slēptu, maršrutētāja iestatījumi netiks mainīti."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sistēmas sertifikāts"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Sertifikāta piespraušana"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Dati par tīklu"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Šis tīkls izmanto drošības protokolu WEP, kas ir vecāks un mazāk drošs."</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Apakštīkla maska"</string>
<string name="server_name_title" msgid="7257095185810299066">"Servera nosaukums"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Veids"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Ierīces Wi‑Fi MAC adrese"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth adrese"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Sērijas numurs"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Darbības laiks"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Darbības laiks"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Izgatavošanas datums"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Pirmās lietošanas reizes datums"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Ciklu skaits"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Pieskaršanās apakšā pa labi"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Citas iespējas: skārienpaliktņa labais apakšējais stūris"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Rādītāja ātrums"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Rādītāja aizpildījuma stils"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Mainīt aizpildījuma stilu uz melnu"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Mainīt aizpildījuma stilu uz zaļu"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Mainīt aizpildījumu uz dzeltenu"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Mainīt aizpildījuma stilu uz rozā"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Mainīt aizpildījuma stilu uz zilu"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Apgūt skārienpaliktņa žestus"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"skārienpaliktnis, pele, kursors, ritināt, vilkt, noklikšķināt ar peles labo pogu, noklikšķināt, rādītājs"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"noklikšķināt ar peles labo pogu, pieskarties"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nav}=1{Iestatīts viens grafiks}zero{Iestatīti # grafiki}one{Iestatīts # grafiks}other{Iestatīti # grafiki}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Netraucēt"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritātes režīmi"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Saņemiet paziņojumus tikai no svarīgām personām un lietotnēm."</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Traucējumu ierobežošana"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Režīma “Netraucēt” ieslēgšana"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Rediģēt"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Grafiki"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Grafiks"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Automātiska ieslēgšana"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Pievienot kalendāru"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Izmantot kalendāru"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Grafiks"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Grafiks"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Skaņas izslēgšana noteiktā laikā"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Šajā lietotnē netiek atbalstīti izvērsti iestatījumi."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Citi iestatījumi"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Lietotnē ir pieejami citi iestatījumi"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Nogaidīšanas periods"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Izmantot nogaidīšanas perioda iestatījumu"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Ja īsā laika posmā saņemsiet daudz paziņojumu, ierīce samazinās traucējošas skaņas un uznirstošos elementus ekrānā. Saņemot zvanus, signālus un prioritārās sarunas, tālrunī joprojām tiks parādīti paziņojumi kā parasti. Visus piegādātos paziņojumus ir viegli atrast panelī."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Lietot darba profiliem"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Lietot darba profila lietotnēm"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR palīga pakalpojumi"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Atlasītās lietotnes"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Neviena"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Visas"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Atļaut lietotnēm ignorēt režīmu “Netraucēt”"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Lietotnes, kas var pārtraukt"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Citu lietotņu atlase"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Vienu stundu pāriet uz režīmu “Tikai signāli” (līdz: {time})}zero{# stundas pāriet uz režīmu “Tikai signāli” (līdz: {time})}one{# stundu pāriet uz režīmu “Tikai signāli” (līdz: {time})}other{# stundas pāriet uz režīmu “Tikai signāli” (līdz: {time})}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Pāriet uz režīmu “Tikai signāli” līdz plkst. <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Pāriet uz “Vienmēr pārtraukt”"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Brīdinājums"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Aizvērt"</string>
<string name="device_feedback" msgid="5351614458411688608">"Sūtīt atsauksmes par šo ierīci"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Pa kreisi"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Pa labi"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Futrālis"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Akumulators"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Iestatījumu panelis"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Veikt piespiedu darbvirsmas režīma atvēršanu"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Veikt piespiedu eksperimentālā darbvirsmas režīma atvēršanu sekundārajos displejos"</string>
@@ -5258,7 +5277,7 @@
<string name="audio_sharing_stream_settings_title" msgid="1374391898689242036">"Audio straumes iestatījumi"</string>
<string name="audio_sharing_stream_name_title" msgid="8156859441897180940">"Nosaukums"</string>
<string name="audio_sharing_stream_password_title" msgid="7026649168165764602">"Parole"</string>
- <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"Saderības uzlabošana"</string>
+ <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"Uzlabot saderību"</string>
<string name="audio_sharing_stream_compatibility_description" msgid="8170241188606110963">"Noteiktām ierīcēm (piemēram, dzirdes aparātiem) palīdz izveidot savienojumu, samazinot audio kvalitāti"</string>
<string name="audio_sharing_stream_compatibility_disabled_description" msgid="2586408353546825682">"Saderības konfigurēšanai audio kopīgošana tiek izslēgta"</string>
<string name="audio_sharing_nearby_audio_title" msgid="4795438407040677177">"Klausieties tuvumā esošu audio"</string>
diff --git a/res/values-mk/arrays.xml b/res/values-mk/arrays.xml
index b7e7e75..7587cfa 100644
--- a/res/values-mk/arrays.xml
+++ b/res/values-mk/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index 015ae39..0977a51 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Да прекине врската со уредот?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Спарете нов уред"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Автоматски вклучи повторно утре"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Спари го десното уво"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Спари го левото уво"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Спари го другото уво"</string>
@@ -73,9 +74,9 @@
<string name="bluetooth_pair_other_ear_dialog_right_ear_message" msgid="631521133525979967">"Десното слушно помагало е поврзано.\n\nЗа да го спарите левото, проверете дали е вклучено и подготвено за спарување."</string>
<string name="bluetooth_pair_other_ear_dialog_right_ear_positive_button" msgid="533612082529204078">"Спари го десното уво"</string>
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Спари го левото уво"</string>
- <string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Поставки за слушен апарат"</string>
+ <string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Поставки за слушни апарати"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Кратенка, компатибилност со слушни помагала"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Зададени вредности"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Зададена вредност"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Не можеше да се ажурира зададената вредност"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудиоизлез"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"За аудио-излезот"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Откажи"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Не, фала"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Не сега"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Се согласувам"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Повеќе"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Отклучување со лице"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Имајте предвид"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Користете го отпечатокот за да го отклучувате телефонот или да ги одобрувате купувањата.\n\nЗабелешка: не може да го користите отпечатокот за да го отклучувате уредов. За повеќе информации, контактирајте со администраторот на вашата организација."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Откажи"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Не, фала"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Не сега"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Се согласувам"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Да се прескокне отпечатокот?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Поставувањето отпечаток трае само минута или две. Ако го прескокнете ова, може да го додадете вашиот отпечаток подоцна преку „Поставки“."</string>
@@ -558,15 +559,15 @@
<string name="private_space_face_unlock_title" msgid="462248384776453613">"„Отклучување со лик“ за „Приватен простор“"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Отклучување со лик и отпечаток за „Приватен простор“"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Поставете „Отклучување со отпечаток“ за „Приватен простор“"</string>
- <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Користете го отпечатокот за да го отклучите „Приватниот простор“\' или да потврдите дека сте вие, како кога се најавувате на апликации или одобрувате купување."</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Користете го отпечатокот за да го отклучувате „Приватниот простор“\' или да потврдувате дека сте вие, како кога се најавувате на апликации или одобрувате купување."</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"„Приватниот простор“ може да се отклучи кога немате таква намера, како на пример, кога некој ќе го допре вашиот телефон до вашиот прст."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Користете го отпечатокот за да го отклучите вашиот „Приватен простор“ или да одобрувате купувања"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Поставете „Отклучување со лик“ за „Приватен простор“"</string>
- <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Користете го вашиот лик за да го отклучите „Приватниот простор“ или да го потврдите вашиот идентитет, како кога се најавувате на апликации или одобрувате купување."</string>
+ <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Користете го вашиот лик за да го отклучувате „Приватниот простор“ или да потврдувате дека сте вие, како кога се најавувате на апликации или одобрувате купување."</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Ако гледате во телефонот, „Приватниот простор“ може да се отклучи дури и ако немате таква намера. „Приватниот простор“ може да го отклучи и некој што многу наликува на вас, на пример, идентичен близнак или некој што ќе го задржи уредот пред вашиот лик."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Користењето на вашиот лик за отклучување на „Приватниот простор“ може да биде помалку безбедно од силна шема, PIN или лозинка"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"За да го отклучите „Приватниот простор“, очите мора да ви бидат отворени. За најдобри резултати, не носете очила за сонце."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Користете го вашиот лик за да го отклучувате „Приватниот простор“.\n\nНапомена:\nможе да имате поставено само еден лик истовремено. За да додадете друг лик, избришете го тековниот.\n\nАко гледате во телефонот, може да го отклучите дури и ако немате таква намера.\n\nВашиот „Приватен простор“ може да го отклучи и некој друг ако го подигне уредот до вашиот лик.\n\n„Приватниот простор“ може да го отклучи некој што многу наликува на вас, на пример, идентичен близнак."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Користете го вашиот лик за да го отклучувате „Приватниот простор“.\n\nНапомена:\nможе да имате поставено само еден лик истовремено. За да додадете друг лик, избришете го тековниот.\n\nАко гледате во телефонот, може да го отклучите дури и ако немате таква намера.\n\nВашиот „Приватен простор“ може да го отклучи и некој друг ако го задржи уредот пред вашиот лик.\n\n„Приватниот простор“ може да го отклучи некој што многу наликува на вас, на пример, идентичен близнак."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"При користење „Отклучување со лик“, секогаш барај потврда"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Начини на отклучување"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"Исто како заклучувањето екран на уредот"</string>
@@ -575,10 +576,8 @@
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"Автоматско заклучување на „Приватен простор“"</string>
<string name="private_space_auto_lock_page_summary" msgid="8679844515655838654">"Може да го заклучите вашиот „Приватен простор“ автоматски ако не сте го користеле уредот одреден временски период"</string>
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"При секое заклучување на уредот"</string>
- <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 минути по авто. исклучување на екранот"</string>
+ <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 мин. по автом. исклучување на екранот"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Само по рестартирање на уредот"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Скриј го „Приватниот простор“"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Скриј го „Приватниот простор“ кога е заклучен"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"За да спречите други луѓе да знаат дека имате „Приватен простор“ на вашиот уред, може да го скриете од списокот со апликации"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Постави"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Приватен простор"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Скријте ги или заклучете ги приватните апликации во засебен простор. Користете посебна сметка на Google за дополнителна безбедност."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Поставете го „Приватниот простор“"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Изберете сметка на Google за „Приватен простор“"</b>\n"Користењето посебна сметка помага да се сопре синхронизираните датотеки, фотографии и е-пораки да се појавуваат надвор од вашиот простор"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Како функционира"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Создајте сметка на Google за вашиот „Приватен простор“"</b>\n"Ако користите наменска сметка, тоа помага да се спречи синхронизираните датотеки, фотографии и е-пораки да се појавуваат надвор од вашиот „Приватен простор“"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Поставете заклучување"</b>\n"Заклучете го просторот за да спречите да го отвораат други луѓе"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Инсталирање апликации"</b>\n"Вашиот „Приватен простор“ има своја Play Store за да може лесно да инсталирате апликации."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Апликациите во вашиот „Приватен простор“ нема да се појавуваат во „Управување со дозволи“, „Контролна табла за приватност“ и други поставки кога „Приватниот простор“ е заклучен.\n\nВашиот „Приватен простор“ не може да се врати на нов уред. Треба да поставите друг „Приватен простор“ ако сакате да го користите на друг уред.\n\nСекој што ќе го поврзе вашиот уред со компјутер или ќе инсталира злонамерни апликации можеби ќе може да пристапи до вашиот „Приватен простор“."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Инсталирајте апликации"</b>\n"Инсталирајте ги апликациите што сакате да останат приватни во вашиот „Приватен простор“"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Имајте предвид"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Апликациите сопираат кога ќе го заклучите вашиот „Приватен простор“"</b>\n"Кога ќе го заклучите вашиот „Приватен простор“, апликациите во него се сопираат и нема да добивате известувања од нив"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Дознајте повеќе за „Приватен простор“"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Ова ќе трае неколку секунди"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Се поставува „Приватен простор“…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Може да поставите ново заклучување само за „Приватен простор“ или да го користите истото заклучување што го користите за отклучување на уредот"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Користете заклучување екран"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Изберете нов начин на заклучување"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Само момент…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Само момент…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Готово!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"За да го најдете вашиот „Приватен простор“, одете во списокот со апликации и лизгајте надолу"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Готово"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Поставете PIN за „Приватен простор“"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Поставете лозинка за „Приватен простор“"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Поставете шема за „Приватен простор“"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Создајте сметка на Google за да ви помогне да ја зачувате приватноста на вашите податоци"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"На следниот екран може да се најавите на сметка што ќе ја користите за вашиот „Приватен простор“"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Создајте посебна сметка за да спречите следниве податоци да се појавуваат надвор од „Приватниот простор“:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Синхронизирани фотографии, датотеки, е-пораки, контакти, настани во календарот и друго"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Историја на преземање апликации и препораки"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Историја на прелистување, обележувачи и зачувани лозинки"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Предложени содржини поврзани со вашата активност во апликациите во „Приватниот простор“"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Сфатив"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Заклучи"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Скриј"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Може да додадете до <xliff:g id="COUNT">%d</xliff:g> отпечатоци"</string>
@@ -665,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Изберете заклучување екран"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Изберете ново заклучување"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Изберете заклучување за работни апликации"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Изберете ново заклучување за работни апликации"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Изберете ново заклучување за работниот профил"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"За дополнителна безбедност, поставете резервно заклучување екран"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Изберете резервен метод за заклучување на екранот"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Ако го заборавите заклучувањето екран, IT-администраторот не може да го ресетира."</string>
@@ -832,8 +828,8 @@
<string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"Спари и поврзи"</string>
<string name="bluetooth_empty_list_bluetooth_off" msgid="7326727272747345476">"Кога е вклучен Bluetooth, уредот може да комуницира со други уреди со Bluetooth во близина"</string>
<string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"Кога е вклучен Bluetooth, уредот може да комуницира со други уреди со Bluetooth во близина. Функциите како „Брзо споделување“ и „Најди го мојот уред“ користат Bluetooth."</string>
- <string name="bluetooth_scanning_on_info_message" msgid="786648535600075223">"Кога Bluetooth е вклучен, вашиот уред може да комуницира со другите уреди со Bluetooth во близина.\n\nЗа да се подобри доживувањето со уредот, апликациите и услугите сепак може да скенираат уреди во близина во секое време, дури и кога Bluetooth е исклучен. Ова може да се користи, на пример, за да се подобрат функциите и услугите според локација. Може да го промените во поставките за „Скенирање за Bluetooth“."</string>
- <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"Кога е вклучен Bluetooth, уредот може да комуницира со други уреди со Bluetooth во близина. Функциите како „Брзо споделување“ и „Најди го мојот уред“ користат Bluetooth.\n\nАпликациите и услугите може да скенираат за уреди во близина во секое време, дури и кога е исклучен Bluetooth. Ова може да се користи, на пример, за да се подобрат функциите и услугите според локација. Ова може да го промените во поставките за скенирање за Bluetooth."</string>
+ <string name="bluetooth_scanning_on_info_message" msgid="786648535600075223">"Кога Bluetooth е вклучен, вашиот уред може да комуницира со другите уреди со Bluetooth во близина.\n\nЗа да се подобри доживувањето со уредот, апликациите и услугите сепак може да скенираат уреди во близина во секое време, дури и кога Bluetooth е исклучен. Ова може да се користи, на пример, за да се подобрат функциите и локациските услуги. Може да го промените во поставките за „Скенирање за Bluetooth“."</string>
+ <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"Кога е вклучен Bluetooth, уредот може да комуницира со други уреди со Bluetooth во близина. Функциите како „Брзо споделување“ и „Најди го мојот уред“ користат Bluetooth.\n\nАпликациите и услугите може да скенираат за уреди во близина во секое време, дури и кога е исклучен Bluetooth. Ова може да се користи, на пример, за да се подобрат функциите и локациските услуги. Ова може да го промените во поставките за скенирање за Bluetooth."</string>
<string name="bluetooth_scan_change" msgid="1744636222637390367">"Промени"</string>
<string name="device_details_title" msgid="1155622417516195481">"Детали за уредот"</string>
<string name="bluetooth_device_keyboard_settings_preference_title" msgid="3411693160917620519">"Поставки за тастатурата"</string>
@@ -924,7 +920,7 @@
<string name="wifi_empty_list_user_restricted" msgid="454861411536708709">"Немате дозвола за промена на Wi-Fi мрежата."</string>
<string name="wifi_settings_scanning_required_title" msgid="1088663325396007484">"Да се вклучи скенирање за Wi-Fi?"</string>
<string name="wifi_settings_scanning_required_summary" msgid="4770243653675416569">"За да може автоматски да се вклучува Wi-Fi, прво треба да вклучите скенирање за Wi-Fi."</string>
- <string name="wifi_settings_scanning_required_info" msgid="1473411566072565789">"Скенирањето за Wi-Fi дозволува апликациите и услугите да скенираат за Wi-Fi мрежи во секое време, дури и кога Wi-Fi е исклучено. Ова може да се користи, на пример, за да се подобрат функциите и услугите според локација."</string>
+ <string name="wifi_settings_scanning_required_info" msgid="1473411566072565789">"Скенирањето за Wi-Fi дозволува апликациите и услугите да скенираат за Wi-Fi мрежи во секое време, дури и кога Wi-Fi е исклучено. Ова може да се користи, на пример, за да се подобрат функциите и локациските услуги."</string>
<string name="wifi_settings_scanning_required_turn_on" msgid="1112223196123955447">"Вклучи"</string>
<string name="wifi_settings_scanning_required_enabled" msgid="4721729158927146365">"Скенирањето за Wi‑Fi е вклучено"</string>
<string name="wifi_settings_warning_wep_network" msgid="7032462362300663466">"Мрежава користи постар безбедносен протокол наречен WEP, којшто не е толку безбеден"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Системски сертификат"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Закачување сертификати"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Детали за мрежата"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Мрежава користи постар безбедносен протокол наречен WEP, којшто не е толку безбеден"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Подмрежна маска"</string>
<string name="server_name_title" msgid="7257095185810299066">"Име на серверот"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Тип"</string>
@@ -1183,7 +1180,7 @@
<string name="auto_rotate_option_face_based" msgid="3438645484087953174">"Вклучено - според лице"</string>
<string name="auto_rotate_switch_face_based" msgid="9116123744601564320">"Откривање лица"</string>
<string name="auto_rotate_link_a11y" msgid="5146188567212233286">"Дознајте повеќе за „Автоматско ротирање“"</string>
- <string name="screen_resolution_title" msgid="2690518693139811486">"Резолуција на екран"</string>
+ <string name="screen_resolution_title" msgid="2690518693139811486">"Резолуција на екранот"</string>
<string name="screen_resolution_option_high" msgid="2617496842852992853">"Висока резолуција"</string>
<string name="screen_resolution_option_full" msgid="2694003735219114186">"Полна резолуција"</string>
<string name="screen_resolution_footer" msgid="6772341522952795647">"Полната резолуција троши повеќе батерија. Ако ја смените резолуцијата, некои апликации можеби ќе се рестартираат."</string>
@@ -1203,7 +1200,7 @@
<string name="fold_lock_behavior_title" msgid="786228803694268449">"Продолжете да ги користите апликациите при преклопување"</string>
<string name="disable_game_default_frame_rate_title" msgid="3712908601744143753">"Оневозможи ја стандардната стапка на слики за игри"</string>
<string name="disable_game_default_frame_rate_summary" msgid="4436762704707434225">"Го оневозможува ограничувањето на максималната стапка на слики за игри на <xliff:g id="FRAME_RATE">%1$d</xliff:g> Hz."</string>
- <string name="peak_refresh_rate_title" msgid="2056355754210341011">"Течно движење"</string>
+ <string name="peak_refresh_rate_title" msgid="2056355754210341011">"Течен приказ"</string>
<string name="peak_refresh_rate_summary" msgid="3212309985294885790">"Автоматски ја зголемува стапката на освежување до <xliff:g id="ID_1">%1$d</xliff:g> Hz за одредени содржини. Го зголемува користењето на батеријата."</string>
<string name="force_high_refresh_rate_toggle" msgid="3325789621928312050">"Наметни максимална стапка на освежување"</string>
<string name="force_high_refresh_rate_desc" msgid="7794566420873814875">"Највисока стапка на освежување за подобрена реакција на допир и квалитет на анимацијата. Го зголемува користењето на батеријата."</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC-адреса на Wi-Fi на уредот"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Адреса на Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Сериски број"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Време од последно рестартирање"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Време од последно рестартирање"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Датум на производство"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Датум на прво користење"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Број на циклуси"</string>
@@ -1580,15 +1577,15 @@
<string name="location_high_battery_use" msgid="4277318891200626524">"Голема искористеност на бат."</string>
<string name="location_low_battery_use" msgid="5218950289737996431">"Мала искористеност на бат."</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="5004781272733434794">"Скенирање за Wi‑Fi"</string>
- <string name="location_scanning_wifi_always_scanning_description" msgid="6236055656376931306">"Дозволете апликациите и услугите да скенираат за Wi-Fi мрежи во секое време, дури и кога Wi-Fi е исклучено. Ова може да се користи, на пример, за да се подобрат функциите и услугите според локација."</string>
+ <string name="location_scanning_wifi_always_scanning_description" msgid="6236055656376931306">"Дозволете апликациите и услугите да скенираат за Wi-Fi мрежи во секое време, дури и кога Wi-Fi е исклучено. Ова може да се користи, на пример, за да се подобрат функциите и локациските услуги."</string>
<string name="location_scanning_bluetooth_always_scanning_title" msgid="1809309545730215891">"Скенирање за Bluetooth"</string>
- <string name="location_scanning_bluetooth_always_scanning_description" msgid="5362988856388462841">"Дозволете апликациите и услугите да скенираат за уреди во близина во секое време, дури и кога Bluetooth е исклучен. Ова може да се користи, на пример, за да се подобрат функциите и услугите според локација."</string>
- <string name="location_services_preference_title" msgid="604317859531782159">"Услуги според локација"</string>
- <string name="location_services_screen_title" msgid="5640002489976602476">"Услуги според локација"</string>
+ <string name="location_scanning_bluetooth_always_scanning_description" msgid="5362988856388462841">"Дозволете апликациите и услугите да скенираат за уреди во близина во секое време, дури и кога Bluetooth е исклучен. Ова може да се користи, на пример, за да се подобрат функциите и локациските услуги."</string>
+ <string name="location_services_preference_title" msgid="604317859531782159">"Локациски услуги"</string>
+ <string name="location_services_screen_title" msgid="5640002489976602476">"Локациски услуги"</string>
<string name="location_time_zone_detection_toggle_title" msgid="6478751613645015287">"Користи ја локацијата"</string>
<string name="location_time_zone_detection_status_title" msgid="8903495354385600423">"Часовната зона не може да се постави автоматски"</string>
<string name="location_time_zone_detection_status_summary_degraded_by_settings" msgid="6198939835335841106"></string>
- <string name="location_time_zone_detection_status_summary_blocked_by_settings" msgid="5276280770344278768">"„Локацијата“ или „Услугите според локација“ се исклучени"</string>
+ <string name="location_time_zone_detection_status_summary_blocked_by_settings" msgid="5276280770344278768">"„Локацијата“ или „Локациските услуги“ се исклучени"</string>
<string name="location_time_zone_detection_status_summary_blocked_by_environment" msgid="2279833212923765802"></string>
<string name="location_time_zone_detection_status_summary_temporarily_unavailable" msgid="6586801403644278967"></string>
<string name="location_time_zone_detection_location_is_off_dialog_title" msgid="231698690198001146">"Потребна е локацијата на уредот"</string>
@@ -1620,9 +1617,9 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"Се вчитува..."</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"Се вчитува..."</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"Поставете лозинка"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Поставете лозинка за работен профил"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Поставете лозинка за работниот профил"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Поставете PIN"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Поставете PIN за работен профил"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Поставете PIN за работниот профил"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Поставете шема"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"За дополнителна безбедност, поставете шема за отклучување на уредот"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Поставете шема за работен профил"</string>
@@ -1824,8 +1821,8 @@
<string name="app_disable_dlg_text" msgid="2449382902751908916">"Ако ја оневозможите оваа апликација, Android и другите апликации можеби веќе нема да функционираат како што треба. Имајте предвид, не може да ја избришете апликацијава бидејќи е однапред инсталирана на уредот. Ако ја оневозможите, ќе ја исклучите и ќе ја сокриете на уредот."</string>
<string name="app_install_details_group_title" msgid="1172114479073704677">"Продавница"</string>
<string name="app_install_details_title" msgid="7783556181897142187">"Детали за апликацијата"</string>
- <string name="app_install_details_summary" msgid="2013043219249992373">"Апликација инсталирана од <xliff:g id="APP_STORE">%1$s</xliff:g>"</string>
- <string name="app_install_details_different_initiating_package_summary" msgid="6093306593167176688">"Апликација инсталирана од <xliff:g id="APP_STORE1">%1$s</xliff:g> (преку <xliff:g id="APP_STORE2">%2$s</xliff:g>)"</string>
+ <string name="app_install_details_summary" msgid="2013043219249992373">"Апликацијата е инсталирана од <xliff:g id="APP_STORE">%1$s</xliff:g>"</string>
+ <string name="app_install_details_different_initiating_package_summary" msgid="6093306593167176688">"Апликацијата е инсталирана од <xliff:g id="APP_STORE1">%1$s</xliff:g> (преку <xliff:g id="APP_STORE2">%2$s</xliff:g>)"</string>
<string name="instant_app_details_summary" msgid="417197491598208216">"Повеќе информации на <xliff:g id="APP_STORE">%1$s</xliff:g>"</string>
<string name="app_ops_running" msgid="6127474473137428721">"Се извршува"</string>
<string name="app_ops_never_used" msgid="9038133162371204506">"(Никогаш не е користена)"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Допир долу десно"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Допрете го долниот десен агол од подлогата за допир за опции"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Брзина на покажувачот"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Стил на полнење на покажувачот"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Промена на стил. на покаж. во црн"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Промена на стил. на покаж. во зелен"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Промена на стил. на покаж. во жолт"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Промена на стил. на покаж. во розов"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Промена на стил. на покаж. во син"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Научете движења за подлога за допир"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"подлога на допир, допирна подлога, глувче, курсор, лизгање, повлекување, кликнување со десното копче, клик, покажувач"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"кликнување со десното копче, допир"</string>
@@ -2299,7 +2302,7 @@
<string name="accessibility_hearingaid_instruction_continue_button" msgid="3367260988024430722">"Продолжи"</string>
<string name="accessibility_hearingaid_title" msgid="1263619711863375614">"Слушни помагала"</string>
<string name="accessibility_hearingaid_intro" msgid="6686620444104350629">"Поставете ги и управувајте со слушните помагала, кохлеарните импланти и другите уреди за засилување со ASHA и LE Audio"</string>
- <string name="accessibility_hearingaid_not_connected_summary" msgid="7438018718889849521">"Не се поврзани слушни помагала"</string>
+ <string name="accessibility_hearingaid_not_connected_summary" msgid="7438018718889849521">"Не се поврзани слушни апарати"</string>
<string name="accessibility_hearingaid_adding_summary" msgid="999051610528600783">"Додајте слушни помагала"</string>
<string name="accessibility_hearingaid_pair_instructions_title" msgid="2357706801112207624">"Спарување слушни помагала"</string>
<string name="accessibility_hearingaid_pair_instructions_message" msgid="581652489109350119">"На следниот екран, допрете ги слушните помагала. Можеби ќе треба да ги спарите левото и десното уво одделно.\n\nСлушните помагала треба да се вклучени и подготвени за спарување."</string>
@@ -2312,14 +2315,14 @@
<string name="accessibility_hearing_device_connected_title" msgid="3785140037249487287">"Слушни помагала"</string>
<string name="accessibility_hearing_device_saved_title" msgid="7573926212664909296">"Зачувани уреди"</string>
<string name="accessibility_hearing_device_control" msgid="2661965917013100611">"Контроли за слушно помагало"</string>
- <string name="accessibility_hearing_device_shortcut_title" msgid="7645100199603031360">"Кратенка за слушни помагала"</string>
+ <string name="accessibility_hearing_device_shortcut_title" msgid="7645100199603031360">"Кратенка за слушни апарати"</string>
<string name="accessibility_hac_mode_title" msgid="2037950424429555652">"Компатибилност со слушни помагала"</string>
<string name="accessibility_hac_mode_summary" msgid="5198760061256669067">"Ја подобрува компатибилноста со телекалемите и го намалува несаканиот шум"</string>
<string name="accessibility_hearing_device_about_title" msgid="7883758309646288250">"За слушните помагала"</string>
<string name="accessibility_hearing_device_footer_summary" msgid="256061045064940818">"За да најдете други слушни апарати што не се поддржани од ASHA или LE Audio, допрете „"<b>"Спарете нов уред"</b>" > "<b>"Видете повеќе уреди"</b>"“"</string>
<string name="accessibility_hearing_device_pairing_page_title" msgid="6608901091770850295">"Спарете слушно помагало"</string>
<string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"На страницава може да ги спарите слушните апарати ASHA и LE Audio. Погрижете се вашиот слушен апарат да биде вклучен и подготвен за спарување."</string>
- <string name="accessibility_found_hearing_devices" msgid="637407580358386553">"Достапни слушни помагала"</string>
+ <string name="accessibility_found_hearing_devices" msgid="637407580358386553">"Достапни слушни апарати"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"Не го гледате вашето слушно помагало?"</string>
<string name="accessibility_list_all_devices_title" msgid="161495343959211216">"Видете повеќе уреди"</string>
<string name="accessibility_audio_adjustment_title" msgid="1332113739136802997">"Приспособување на аудиото"</string>
@@ -2865,7 +2868,7 @@
<string name="data_usage_background_label" msgid="5363718469293175279">"Во заднина:"</string>
<string name="data_usage_app_settings" msgid="5693524672522122485">"Поставки на апликација"</string>
<string name="data_usage_app_restrict_background" msgid="5728840276368097276">"Интернет во заднина"</string>
- <string name="data_usage_app_restrict_background_summary" msgid="2997942775999602794">"Овозможи користење мобилен интернет во заднина"</string>
+ <string name="data_usage_app_restrict_background_summary" msgid="2997942775999602794">"Овозможете користење мобилен интернет во заднина"</string>
<string name="data_usage_app_restrict_background_summary_disabled" msgid="8213268097024597864">"За ограничен интернет во заднина за апликацијава, поставете граница за мобилен интернет."</string>
<string name="data_usage_app_restrict_dialog_title" msgid="5383874438677899255">"Ограничи податоци во заднина?"</string>
<string name="data_usage_app_restrict_dialog" msgid="5534272311979978297">"Оваа функција може да предизвика прекин на извршување на апликацијата што зависи од интернет во заднина, кога се достапни само мобилни мрежи.\n\nМоже да најдете посоодветни контроли за користење на интернетот во поставките достапни во рамките на апликацијата."</string>
@@ -2879,8 +2882,8 @@
<string name="data_usage_warning_editor_title" msgid="5252748452973120016">"Поставете предупредување за потрошен интернет"</string>
<string name="data_usage_limit_editor_title" msgid="8826855902435008518">"Поставете ограничување за потрошен интернет"</string>
<string name="data_usage_limit_dialog_title" msgid="2053134451707801439">"Ограничување за потрошен интернет"</string>
- <string name="data_usage_sweep_warning" msgid="2072854703184614828"><font size="18">"<xliff:g id="NUMBER">^1</xliff:g>"</font><font size="9">"<xliff:g id="UNIT">^2</xliff:g>"</font>\n<font size="12">"предупредување"</font></string>
- <string name="data_usage_sweep_limit" msgid="6947019190890086284"><font size="18">"<xliff:g id="NUMBER">^1</xliff:g>"</font><font size="9">"<xliff:g id="UNIT">^2</xliff:g>"</font>\n<font size="12">"граница"</font></string>
+ <string name="data_usage_sweep_warning" msgid="2072854703184614828"><font size="12">"Предупр."</font>\n<font size="18">"<xliff:g id="NUMBER">^1</xliff:g>"</font>" "<font size="9">"<xliff:g id="UNIT">^2</xliff:g>"</font></string>
+ <string name="data_usage_sweep_limit" msgid="6947019190890086284"><font size="12">"Oгранич."</font>\n<font size="18">"<xliff:g id="NUMBER">^1</xliff:g>"</font>" "<font size="9">"<xliff:g id="UNIT">^2</xliff:g>"</font></string>
<string name="data_usage_uninstalled_apps" msgid="9065885396147675694">"Отстранети апликации"</string>
<string name="data_usage_uninstalled_apps_users" msgid="1262228664057122983">"Отстранети апликации и корисници"</string>
<string name="wifi_metered_title" msgid="6623732965268033931">"Користење на мрежата"</string>
@@ -3139,7 +3142,7 @@
<string name="sim_selection_channel_title" msgid="3193666315607572484">"Избор на SIM"</string>
<string name="dashboard_title" msgid="5660733037244683387">"Поставки"</string>
<string name="network_dashboard_title" msgid="788543070557731240">"Мрежа и интернет"</string>
- <string name="network_dashboard_summary_mobile" msgid="7750924671970583670">"Мобилна, Wi‑Fi, точка на пристап"</string>
+ <string name="network_dashboard_summary_mobile" msgid="7750924671970583670">"Мобилна мрежа, Wi‑Fi, точка на пристап"</string>
<string name="network_dashboard_summary_no_mobile" msgid="4022575916334910790">"Wi‑Fi, точка на пристап"</string>
<string name="connected_devices_dashboard_title" msgid="19868275519754895">"Поврзани уреди"</string>
<string name="connected_devices_dashboard_default_summary" msgid="7211769956193710397">"Bluetooth, спарување"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ниеден}=1{Поставен е 1 распоред}one{Поставен е # распоред}other{Поставени се # распореди}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Не вознемирувај"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Приоритетни режими"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Добивајте известувања само од важни луѓе и апликации"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ограничете ги прекините"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Исклучување на „Не вознемирувај“"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Измени"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Распореди"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Распоред"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Автоматско вклучување"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Додајте календар"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Користете го календарот"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Распоред"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Распоред"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Не вознемирувај во одредено време"</string>
@@ -3364,7 +3371,7 @@
<string name="mode_dark_theme_title_secondary_list" msgid="4761262694149772845">"овозможете темна тема"</string>
<string name="mode_dark_theme_summary" msgid="8428887193785431898">"Префрлете ги OS и апликациите за да претпочитаат светол текст на темна заднина, што може да биде полесно за очите и овозможува значителна заштеда на батеријата на некои уреди"</string>
<string name="mode_display_settings_summary" msgid="5929234706883482380">"{count,plural,offset:2 =0{Нема промени на екранот}=1{{effect_1}}=2{{effect_1} и {effect_2}}=3{{effect_1}, {effect_2} и {effect_3}}one{{effect_1}, {effect_2} и уште #}other{{effect_1}, {effect_2} и уште #}}"</string>
- <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"Опции за екранот за филтрирани известувања"</string>
+ <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"Опции за прикажување филтрирани известувања"</string>
<string name="zen_mode_restrict_notifications_category" msgid="5870944770935394566">"Кога е вклучен режимот „Не вознемирувај“"</string>
<string name="zen_mode_restrict_notifications_mute" msgid="6692072837485018287">"Без звук од известувањата"</string>
<string name="zen_mode_restrict_notifications_mute_summary" msgid="966597459849580949">"Ќе гледате известувања на екранот"</string>
@@ -3564,7 +3571,7 @@
<string name="notification_channel_summary_min" msgid="8823399508450176842">"Собери ги известувањата во еден ред во списокот со известувања"</string>
<string name="notification_channel_summary_low" msgid="5549662596677692000">"Без звук или вибрации"</string>
<string name="notification_conversation_summary_low" msgid="6352818857388412326">"Без звук или вибрации и се појавува подолу во делот со разговори"</string>
- <string name="notification_channel_summary_default" msgid="1168420867670390611">"Може да ѕвони или вибрира во зависност од поставките за уредот"</string>
+ <string name="notification_channel_summary_default" msgid="1168420867670390611">"Може да ѕвони или да вибрира во зависност од поставките за уредот"</string>
<string name="notification_channel_summary_high" msgid="3411637309360617621">"Кога уредот е отклучен, прикажувај ги известувањата како банер на горниот дел од екранот"</string>
<string name="notification_switch_label" msgid="8029371325967501557">"Сите известувања од „<xliff:g id="APP_NAME">%1$s</xliff:g>“"</string>
<string name="notification_app_switch_label" msgid="4422902423925084193">"Сите известувања од <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -3597,7 +3604,7 @@
<string name="notif_type_conversation" msgid="4383931408641374979">"Разговори"</string>
<string name="notif_type_conversation_summary" msgid="179142405410217101">"SMS, текстуални пораки и други типови комуникација"</string>
<string name="notif_type_alerting" msgid="4713073696855718576">"Известувања"</string>
- <string name="notif_type_alerting_summary" msgid="4681068287836313604">"Може да ѕвони или вибрира во зависност од поставките"</string>
+ <string name="notif_type_alerting_summary" msgid="4681068287836313604">"Може да ѕвони или да вибрира во зависност од поставките"</string>
<string name="notif_type_silent" msgid="6273951794420331010">"Безгласни"</string>
<string name="notif_type_silent_summary" msgid="7820923063105060844">"Известувања што никогаш не пуштаат звук ниту вибрираат"</string>
<string name="notification_listener_allowed" msgid="5536962633536318551">"Со дозвола"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Апликацијава не поддржува подобрени поставки"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Повеќе поставки"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Повеќе поставки се достапни во апликацијава"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Подискретни известувања"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Користење „Подискретни известувања“"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Кога ќе добиете многу известувања во краток временски период, вашиот уред ќе ги минимизира звучните прекини и скокачките прозорци на екранот. Известувањата за повиците, алармите и приоритетните разговори ќе ги добивате како и обично, а сите испорачани известувања може да се најдат лесно во „Панелот со известувања“."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Примени на работни профили"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Применете на апликациите во работниот профил"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Помошни услуги за VR"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Избрани апликации"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Нема"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Сите"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Дозволете апликациите да занемаруваат"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Апликации што може да го прекинуваат режимот"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Изберете уште апликации"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Смени само на аларми во траење од еден час до {time}}one{Смени само на аларми во траење од # час до {time}}other{Смени само на аларми во траење од # часа до {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Промена на аларми само до <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Промени секогаш да се прекине"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Опомена"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Затвори"</string>
<string name="device_feedback" msgid="5351614458411688608">"Повратни информации за уредов"</string>
@@ -4161,7 +4179,7 @@
<string name="data_saver_off" msgid="5891210864117269045">"Исклучено"</string>
<string name="data_saver_switch_title" msgid="7111538580123722959">"Користи „Штедач на интернет“"</string>
<string name="unrestricted_app_title" msgid="8531936851059106374">"Користење неограничен мобилен интернет"</string>
- <string name="unrestricted_app_summary" msgid="8320813971858627624">"Дозволи пристап до неограничен мобилен интернет кога е вклучен „Штедачот на интернет“"</string>
+ <string name="unrestricted_app_summary" msgid="8320813971858627624">"Дозволете пристап до неограничен мобилен интернет кога е вклучен „Штедачот на интернет“"</string>
<string name="home_app" msgid="6056850504746902747">"Почетна апликација"</string>
<string name="suggestion_additional_fingerprints" msgid="4726777300101156208">"Додајте уште еден отпечаток"</string>
<string name="suggestion_additional_fingerprints_summary" msgid="2825364645039666674">"Отклучувајте со друг прст"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Лева"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Десна"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Футрола за полнење"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Батерија"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Табла за поставки"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Наметни режим на работна површина"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Наметнете го експерименталниот режим на работна површина на секундарните екрани"</string>
@@ -5246,7 +5265,7 @@
<string name="sync_across_devices_title" msgid="3447757705383089345">"Синхронизирајте на уредите"</string>
<string name="device_diagnostics_title" msgid="2914523189695727897">"Дијагностика на уредот"</string>
<string name="audio_sharing_title" msgid="4144157137502923821">"Споделување аудио"</string>
- <string name="audio_sharing_switch_title" msgid="7052827328670825701">"Споделете го аудиото"</string>
+ <string name="audio_sharing_switch_title" msgid="7052827328670825701">"Споделувај аудио"</string>
<string name="calls_and_alarms_device_title" msgid="6993559028175454198">"Повици и аларми"</string>
<string name="audio_sharing_description" msgid="1660255584523640628">"Дозволете им на луѓето да ги слушаат аудиовизуелните содржини заедно со вас. Слушателите треба да имаат сопствени слушалки со LE Audio."</string>
<string name="audio_sharing_device_group_title" msgid="3019780581643956943">"Активни преносливи уреди"</string>
@@ -5257,8 +5276,8 @@
<string name="audio_sharing_stream_settings_title" msgid="1374391898689242036">"Поставки за аудиостримот"</string>
<string name="audio_sharing_stream_name_title" msgid="8156859441897180940">"Име"</string>
<string name="audio_sharing_stream_password_title" msgid="7026649168165764602">"Лозинка"</string>
- <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"Подобрете ја компатибилноста"</string>
- <string name="audio_sharing_stream_compatibility_description" msgid="8170241188606110963">"Им помага на некои уреди, како слушните помагала, да се поврзат, така што го намалува квалитетот на звукот"</string>
+ <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"Подобрување на компатибилноста"</string>
+ <string name="audio_sharing_stream_compatibility_description" msgid="8170241188606110963">"Им помага на некои уреди, како слушните помагала, да се поврзат, така што го намалува квалитетот на аудиото"</string>
<string name="audio_sharing_stream_compatibility_disabled_description" msgid="2586408353546825682">"Го исклучува споделувањето аудио за да ја конфигурира компатибилноста"</string>
<string name="audio_sharing_nearby_audio_title" msgid="4795438407040677177">"Слушајте аудио во близина"</string>
<string name="audio_sharing_footer_description" msgid="4786942197840271680">"Споделувањето аудио поддржува Auracast™"</string>
diff --git a/res/values-ml/arrays.xml b/res/values-ml/arrays.xml
index 2f1d67b..f0c66cd 100644
--- a/res/values-ml/arrays.xml
+++ b/res/values-ml/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index e9f8a8b..92dd19b 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ഉപകരണം വിച്ഛേദിക്കണോ?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"പുതിയ ഉപകരണം ജോടിയാക്കുക"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"നാളെ വീണ്ടും സ്വയമേവ ഓണാക്കുക"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"വലതു ചെവി ജോടിയാക്കൂ"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ഇടത് ചെവി ജോടിയാക്കൂ"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"അടുത്ത ചെവി ജോടിയാക്കുക"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ഇടത് ചെവി ജോടിയാക്കൂ"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ശ്രവണ സഹായിയുടെ ക്രമീകരണം"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"കുറുക്കുവഴി, ശ്രവണ സഹായ അനുയോജ്യത"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"പ്രീസെറ്റുകൾ"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"പ്രീസെറ്റ്"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"പ്രീസെറ്റ് അപ്ഡേറ്റ് ചെയ്യാനായില്ല"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ഓഡിയോ ഔട്ട്പുട്ട്"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ഓഡിയോ ഔട്ട്പുട്ടിനെ കുറിച്ച്"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"റദ്ദാക്കുക"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"വേണ്ട, നന്ദി"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ഇപ്പോൾ വേണ്ട"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ഞാൻ അംഗീകരിക്കുന്നു"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"കൂടുതൽ"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"നിങ്ങളുടെ മുഖം ഉപയോഗിച്ച് അൺലോക്ക് ചെയ്യൂ"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ശ്രദ്ധിക്കുക"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"നിങ്ങളുടെ ഫോൺ അൺലോക്കുചെയ്യുന്നതിനോ വാങ്ങലിന് അംഗീകാരം നൽകാനോ നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിക്കുക.\n\nശ്രദ്ധിക്കുക: ഈ ഉപകരണം അൺലോക്കുചെയ്യുന്നതിന് നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിക്കാൻ കഴിയില്ല. കൂടുതൽ വിവരങ്ങൾക്ക്, നിങ്ങളുടെ സ്ഥാപനത്തിന്റെ അഡ്മിനെ ബന്ധപ്പെടുക."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"റദ്ദാക്കുക"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"വേണ്ട"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ഇപ്പോൾ വേണ്ട"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ഞാന് അംഗീകരിക്കുന്നു"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ഫിംഗർപ്രിന്റ് ഒഴിവാക്കണോ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ഫിംഗർപ്രിന്റ് സജ്ജീകരിക്കാൻ ഒന്നോ രണ്ടോ മിനിറ്റ് മാത്രമേ എടുക്കൂ. ഈ ഘട്ടം ഒഴിവാക്കുകയാണെങ്കിൽ, പിന്നീട് ക്രമീകരണത്തിൽ നിങ്ങൾക്ക് ഫിംഗർപ്രിന്റ് ചേർക്കാവുന്നതാണ്."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ഉപകരണം ലോക്ക് ചെയ്യുമ്പോഴെല്ലാം"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"സ്ക്രീൻ ടൈംഔട്ടായി 5 മിനിറ്റിന് ശേഷം"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"ഉപകരണം റീസ്റ്റാർട്ട് ചെയ്തശേഷം മാത്രം"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"സ്വകാര്യ സ്പേസ് മറയ്ക്കുക"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ലോക്ക് ചെയ്തിരിക്കുമ്പോൾ സ്വകാര്യ സ്പേസ് മറയ്ക്കുക"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"നിങ്ങളുടെ ഉപകരണത്തിൽ നിങ്ങൾക്ക് ഒരു സ്വകാര്യ സ്പേസ് ഉണ്ടെന്ന് മറ്റുള്ളവർ അറിയാതിരിക്കാൻ നിങ്ങളുടെ ആപ്പ് ലിസ്റ്റിൽ നിന്ന് അത് മറയ്ക്കാം"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"സജ്ജീകരിക്കുക"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"സ്വകാര്യ സ്പേസ്"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"സ്വകാര്യ ആപ്പുകൾ ഒരു പ്രത്യേക സ്പേസിൽ മറയ്ക്കുക അല്ലെങ്കിൽ ലോക്ക് ചെയ്യുക. അധിക സുരക്ഷയ്ക്ക് പ്രത്യേകമായുള്ള ഒരു Google Account ഉപയോഗിക്കുക."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"നിങ്ങളുടെ സ്വകാര്യ സ്പേസ് സജ്ജീകരിക്കുക"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"നിങ്ങളുടെ സ്പേസിനായി ഒരു Google Account തിരഞ്ഞെടുക്കുക"</b>\n"പ്രത്യേകമായുള്ള ഒരു അക്കൗണ്ട് ഉപയോഗിക്കുന്നതിലൂടെ സമന്വയിപ്പിച്ച ഫയലുകളും ഫോട്ടോകളും ഇമെയിലുകളും നിങ്ങളുടെ സ്പേസിന് പുറത്ത് ദൃശ്യമാകുന്നതിൽ നിന്ന് തടയുന്നു"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"ഇത് എങ്ങനെ പ്രവർത്തിക്കുന്നു"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"നിങ്ങളുടെ സ്പേസിന് ഒരു Google Account സൃഷ്ടിക്കുക"</b>\n"നിങ്ങൾ ഒരു സമർപ്പിത അക്കൗണ്ടാണ് ഉപയോഗിക്കുന്നതെങ്കിൽ, സമന്വയിപ്പിച്ച ഫയലുകൾ, ഫോട്ടോകൾ, ഇമെയിലുകൾ എന്നിവ നിങ്ങളുടെ സ്പേസിന്റെ പുറത്ത് ദൃശ്യമാകുന്നത് തടയാൻ ഇത് സഹായിക്കുന്നു"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ഒരു ലോക്ക് സജ്ജീകരിക്കുക"</b>\n"നിങ്ങളുടെ സ്പേസ് മറ്റ് ആളുകൾ തുറക്കുന്നത് തടയാൻ അത് ലോക്ക് ചെയ്യുക"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക"</b>\n"നിങ്ങളുടെ സ്വകാര്യ സ്പേസിന് അതിന്റേതായ Play Store ഉള്ളതിനാൽ നിങ്ങൾക്ക് എളുപ്പത്തിൽ ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യാം."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"നിങ്ങളുടെ സ്വകാര്യ സ്പേസ് ലോക്ക് ചെയ്തിരിക്കുമ്പോൾ അനുമതി മാനേജർ, സ്വകാര്യതാ ഡാഷ്ബോർഡ്, മറ്റ് ക്രമീകരണം എന്നിവയിൽ സ്വകാര്യ സ്പേസിലെ ആപ്പുകൾ ദൃശ്യമാകില്ല.\n\nസ്വകാര്യ സ്പേസ് പുതിയ ഉപകരണത്തിൽ പുനഃസ്ഥാപിക്കാനാകില്ല. നിങ്ങൾക്ക് മറ്റൊരു ഉപകരണത്തിൽ സ്വകാര്യ സ്പേസ് ഉപയോഗിക്കണമെങ്കിൽ മറ്റൊരു സ്വകാര്യ സ്പേസ് സജ്ജീകരിക്കേണ്ടതുണ്ട്.\n\nനിങ്ങളുടെ ഉപകരണം ഒരു കമ്പ്യൂട്ടറിലേക്ക് കണക്റ്റ് ചെയ്യുന്നതോ ദോഷകരമായ ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുന്നതോ ആയ ആർക്കും നിങ്ങളുടെ സ്വകാര്യ സ്പേസ് ആക്സസ് ചെയ്യാനാകും."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക"</b>\n"നിങ്ങളുടെ സ്പേസിൽ സ്വകാര്യമായി സൂക്ഷിക്കേണ്ട ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ശ്രദ്ധിക്കേണ്ട കാര്യങ്ങൾ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"നിങ്ങൾ സ്പേസ് ലോക്ക് ചെയ്യുമ്പോൾ ആപ്പുകൾ നിർത്തുന്നു"</b>\n"നിങ്ങളുടെ സ്പേസ് ലോക്ക് ചെയ്യുമ്പോൾ, സ്പേസിലെ ആപ്പുകൾ നിർത്തും, അവയിൽ നിന്ന് അറിയിപ്പുകൾ ലഭിക്കില്ല"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"സ്വകാര്യ സ്പേസിനെക്കുറിച്ച് കൂടുതലറിയുക"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ഇതിന് കുറച്ച് സമയമെടുക്കും"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"സ്വകാര്യ സ്പേസ് സജ്ജീകരിക്കുന്നു…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"സ്വകാര്യ സ്പേസിന് മാത്രമായി നിങ്ങൾക്ക് പുതിയൊരു ലോക്ക് സജ്ജീകരിക്കാം അല്ലെങ്കിൽ നിങ്ങളുടെ ഉപകരണം അൺലോക്ക് ചെയ്യാനുപയോഗിക്കുന്ന അതേ ലോക്ക് തന്നെ ഉപയോഗിക്കാം"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"സ്ക്രീൻ ലോക്ക് ഉപയോഗിക്കുക"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"പുതിയ ലോക്ക് തിരഞ്ഞെടുക്കുക"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ഒരു നിമിഷം കാത്തിരിക്കൂ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ഒരു നിമിഷം കാത്തിരിക്കൂ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"എല്ലാം സജ്ജീകരിച്ചു!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"നിങ്ങളുടെ സ്വകാര്യ സ്പേസ് കണ്ടെത്താൻ, നിങ്ങളുടെ ആപ്പുകളുടെ ലിസ്റ്റിലേക്ക് പോയി താഴേയ്ക്ക് സ്ക്രോൾ ചെയ്യുക"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"പൂർത്തിയായി"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"സ്വകാര്യ സ്പേസിന് പിൻ സജ്ജീകരിക്കൂ"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"സ്വകാര്യ സ്പേസിന് പാസ്വേഡ് സജ്ജീകരിക്കൂ"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"സ്വകാര്യ സ്പേസിന് പാറ്റേൺ സജ്ജീകരിക്കൂ"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"നിങ്ങളുടെ ഡാറ്റ സ്വകാര്യമാക്കി നിർത്താൻ സഹായിക്കുന്നതിന്, ഒരു Google Account സൃഷ്ടിക്കുക"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"അടുത്ത സ്ക്രീനിൽ, സ്വകാര്യ സ്പേസിനൊപ്പം ഉപയോഗിക്കാൻ ഒരു അക്കൗണ്ടിലേക്ക് നിങ്ങൾക്ക് സൈൻ ഇൻ ചെയ്യാം"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"സ്വകാര്യ സ്പേസിന് പുറത്ത് ഡാറ്റ ദൃശ്യമാകുന്നത് അവസാനിപ്പിക്കുന്നതിന് ഒരു സമർപ്പിത അക്കൗണ്ട് സൃഷ്ടിക്കുക, ഉദാ:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"സമന്വയിപ്പിച്ച ഫോട്ടോകൾ, ഫയലുകൾ, ഇമെയിലുകൾ, കോൺടാക്റ്റുകൾ, കലണ്ടർ ഇവന്റുകൾ, മറ്റ് ഡാറ്റ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ആപ്പ് ഡൗൺലോഡ് ചരിത്രവും നിർദ്ദേശങ്ങളും"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ബ്രൗസിംഗ് ചരിത്രം, ബുക്ക്മാർക്കുകൾ, സംരക്ഷിച്ച പാസ്വേഡുകൾ"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"സ്വകാര്യ സ്പേസ് ആപ്പുകളിലെ ആക്റ്റിവിറ്റിയുമായി ബന്ധപ്പെട്ട, നിർദ്ദേശിച്ച ഉള്ളടക്കം"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"മനസ്സിലായി"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ലോക്ക് ചെയ്യുക"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"മറയ്ക്കുക"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"നിങ്ങൾക്ക് <xliff:g id="COUNT">%d</xliff:g> ഫിംഗർപ്രിന്റുകൾ വരെ ചേർക്കാം"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"സിസ്റ്റം സർട്ടിഫിക്കറ്റ്"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"സർട്ടിഫിക്കറ്റ് പിന്നിംഗ്"</string>
<string name="wifi_details_title" msgid="222735438574597493">"നെറ്റ്വർക്ക് വിശദാംശങ്ങൾ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"കാര്യമായ സുരക്ഷയില്ലാത്ത WEP എന്ന പഴയ സുരക്ഷാ പ്രോട്ടോക്കോൾ ആണ് ഈ നെറ്റ്വർക്ക് ഉപയോഗിക്കുന്നത്"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"സബ്നെറ്റ് മാസ്ക്"</string>
<string name="server_name_title" msgid="7257095185810299066">"സെർവറിന്റെ പേര്"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"തരം"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ഉപകരണ വെെഫെെ MAC വിലാസം"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth വിലാസം"</string>
<string name="status_serial_number" msgid="9060064164331466789">"സീരിയല് നമ്പര്"</string>
- <string name="status_up_time" msgid="1274778533719495438">"പ്രവർത്തിക്കുന്ന സമയം"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ഉപയോഗ സമയം"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"നിർമ്മാണ തീയതി"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ആദ്യ ഉപയോഗ തീയതി"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"സൈക്കിളിന്റെ എണ്ണം"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"താഴെ വലതുഭാഗം ടാപ്പ് ചെയ്യൂ"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"കൂടുതൽ ഓപ്ഷനുകൾക്ക് ടച്ച്പാഡിന് താഴെ വലതുമൂല ടാപ്പ് ചെയ്യൂ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"പോയിന്റർ വേഗത"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"പോയിന്റർ ഫിൽ സ്റ്റൈൽ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"പോയിന്റർ ഫിൽ സ്റ്റൈൽ കറുപ്പാക്കൂ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"പോയിന്റർ ഫിൽ സ്റ്റൈൽ പച്ചയാക്കൂ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"പോയിന്റർ ഫിൽ സ്റ്റൈൽ മഞ്ഞയാക്കൂ"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"പോയിന്റർ ഫിൽ സ്റ്റൈൽ പിങ്ക് ആക്കൂ"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"പോയിന്റർ ഫിൽ സ്റ്റൈൽ നീലയാക്കൂ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ടച്ച്പാഡ് ജെസ്ച്ചറുകൾ മനസ്സിലാക്കുക"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ട്രാക്ക്പാഡ്, ട്രാക്ക് പാഡ്, മൗസ്, കഴ്സർ, സ്ക്രോൾ, സ്വൈപ്പ്, വലത് ക്ലിക്ക്, ക്ലിക്ക്, പോയിന്റർ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"വലത് ക്ലിക്ക്, ടാപ്പ്"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ഒന്നുമില്ല}=1{ഒരു ഷെഡ്യൂൾ സജ്ജീകരിച്ചു}other{# ഷെഡ്യൂളുകൾ സജ്ജീകരിച്ചു}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ശല്യപ്പെടുത്തരുത്"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"മുൻഗണനാ മോഡുകൾ"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"പ്രധാനപ്പെട്ട ആളുകളിൽ നിന്നും ആപ്പുകളിൽ നിന്നുമുള്ള അറിയിപ്പ് മാത്രം നേടുക"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"തടസ്സങ്ങൾ പരിമിതപ്പെടുത്തുക"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\'ശല്യപ്പെടുത്തരുത്\' ഓണാക്കുക"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"എഡിറ്റ് ചെയുക"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"ഷെഡ്യൂളുകൾ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"ഷെഡ്യൂള്"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"സ്വയമേവ ഓണാക്കുക"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"കലണ്ടർ ചേർക്കുക"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"നിങ്ങളുടെ കലണ്ടർ ഉപയോഗിക്കുക"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"ഷെഡ്യൂൾ"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"ഷെഡ്യൂള് ചെയ്യുക"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ചില സമയങ്ങളിൽ ഫോൺ നിശബ്ദമാക്കുക"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"മെച്ചപ്പെടുത്തിയ ക്രമീകരണത്തെ ഈ ആപ്പ് പിന്തുണയ്ക്കുന്നില്ല"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"കൂടുതൽ ക്രമീകരണം"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"ഈ ആപ്പിനുള്ളിൽ കൂടുതൽ ക്രമീകരണം ലഭ്യമാണ്"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"കൂൾഡൗൺ"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"കൂൾഡൗൺ ഉപയോഗിക്കുക"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"ചെറിയ കാലയളവിനുള്ളിൽ നിങ്ങൾക്ക് കൂടുതൽ അറിയിപ്പുകൾ ലഭിക്കുമ്പോൾ, നിങ്ങളുടെ ഉപകരണം അറിയിപ്പുകളുടെ ശബ്ദവും സ്ക്രീനിലെ പോപ്പ്-അപ്പുകളും കുറയ്ക്കും. കോളുകൾക്കും അലാറങ്ങൾക്കും മുൻഗണനയുള്ള സംഭാഷണങ്ങൾക്കും സാധാരണ പോലെ തുടർന്നും അറിയിപ്പ് ലഭിക്കും, ഡെലിവർ ചെയ്ത എല്ലാ അറിയിപ്പുകളും ഷെയ്ഡിൽ കണ്ടെത്തുന്നത് എളുപ്പവുമായിരിക്കും."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ഔദ്യോഗിക പ്രൊഫൈലുകളിൽ ബാധകമാക്കുക"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ഔദ്യോഗിക പ്രൊഫൈൽ ആപ്പുകൾക്ക് ബാധകമാക്കുക"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR സഹായി സേവനങ്ങൾ"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"തിരഞ്ഞെടുത്ത ആപ്പുകൾ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ഒന്നുമില്ല"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"എല്ലാം"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"അസാധുവാക്കാൻ ആപ്പുകളെ അനുവദിക്കുക"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"തടസ്സപ്പെടുത്താൻ കഴിയുന്ന ആപ്പുകൾ"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"കൂടുതൽ ആപ്പുകൾ തിരഞ്ഞെടുക്കുക"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} വരെ ഒരു മണിക്കൂർ നേരത്തേക്ക് \'അലാറങ്ങൾ മാത്രം\' എന്നതിലേക്ക് മാറ്റുക}other{{time} വരെ # മണിക്കൂർ നേരത്തേക്ക് \'അലാറങ്ങൾ മാത്രം\' എന്നതിലേക്ക് മാറ്റുക}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> വരെ മാത്രം അലാറങ്ങളിലേക്ക് മാറ്റുക"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"\'എല്ലായ്പ്പോഴും തടസ്സപ്പെടുത്തുക\' എന്നതിലേക്ക് മാറ്റുക"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"മുന്നറിയിപ്പ്"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"അടയ്ക്കുക"</string>
<string name="device_feedback" msgid="5351614458411688608">"ഇതേക്കുറിച്ചുള്ള ഫീഡ്ബാക്ക് അയയ്ക്കൂ"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ഇടത്"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"വലത്"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"കെയ്സ്"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ബാറ്ററി"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ക്രമീകരണ പാനൽ"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ഡെസ്ക്ടോപ്പ് മോഡിലേക്ക് നിർബന്ധിച്ച് വരുത്തുക"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ദ്വിതീയ ഡിസ്പ്ലേകളിൽ, പരീക്ഷണാത്മക ഡെസ്ക്ടോപ്പ് മോഡിലേക്ക് നിർബന്ധിച്ച് വരുത്തുക"</string>
diff --git a/res/values-mn/arrays.xml b/res/values-mn/arrays.xml
index c9e210c..7ef1af7 100644
--- a/res/values-mn/arrays.xml
+++ b/res/values-mn/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 94e1d4c..28be904 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Төхөөрөмжийг салгах уу?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Шинэ төхөөрөмж хослуулах"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Маргааш автоматаар дахин асаах"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Баруун чих хослуулах"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Зүүн чих хослуулах"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Нөгөө чихээ хослуулах"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Зүүн чих хослуулах"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Сонсголын төхөөрөмжийн тохиргоо"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Товчлол, сонсголын төхөөрөмжийн зохицол"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Урьдчилсан тохируулгууд"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Урьдчилсан тохируулга"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Урьдчилсан тохируулгыг шинэчилж чадсангүй"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудио гаралт"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Аудио оролтын тухай"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Болих"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Үгүй, баярлалаа"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Одоо биш"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Би зөвшөөрч байна"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Бусад"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Таны царайгаар түгжээ тайлах"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Санамж"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Утасныхаа түгжээг тайлах, худалдан авалт зөвшөөрөхийн тулд хурууны хээгээ ашиглана уу.\n\nСанамж: Та хурууны хээгээр энэ төхөөрөмжийн түгжээг тайлах боломжгүй. Дэлгэрэнгүй мэдээлэл авахын тулд байгууллагынхаа админтай холбогдоно уу."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Цуцлах"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Үгүй баярлалаа"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Одоо биш"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Би зөвшөөрч байна"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Хурууны хээг алгасах уу?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Хурууны хээг тохируулахад хэдхэн минут болно. Та үүнийг алгасвал хурууны хээгээ дараа тохиргоо хэсэгт нэмэх боломжтой."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Төхөөрөмж түгжигдэх бүрд"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Дэлгэц автоматаар амарснаас хойш 5 минут"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Зөвхөн төхөөрөмжийг дахин эхлүүлсний дараа"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Хаалттай орон зайг нуух"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Хаалттай орон зайг түгжээтэй үед нь нуух"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Таны төхөөрөмж дээр хаалттай орон зай байгаа болохыг бусад хүн мэдэхийг зогсоохын тулд та үүнийг аппуудынхаа жагсаалтаас нуух боломжтой"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Тохируулах"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Хаалттай орон зай"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Тусдаа орон зайд хувийн аппуудыг нуух эсвэл түгжинэ үү. Нэмэлт хамгаалалтад зориулалтын Google Бүртгэл ашиглана уу."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Хаалттай орон зайгаа тохируулах"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Орон зайдаа Google Бүртгэл сонгох"</b>\n"Зориулалтын бүртгэл ашиглах нь синк хийсэн файл, зураг болон имэйлүүдийг таны орон зайнаас гадуур харагдахыг зогсооход тусалдаг"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Энэ хэрхэн ажилладаг вэ?"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Орон зайдаа зориулж Google Бүртгэл үүсгэх"</b>\n"Хэрэв та зориулалтын бүртгэл ашиглавал энэ нь синк хийсэн файл, зураг, имэйлийг таны орон зайнаас гадуур харагдахыг зогсооход тусална"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Түгжээ тохируулах"</b>\n"Орон зайгаа түгжиж, бусад хүнийг үүнийг нээхийг зогсоогоорой"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Аппууд суулгах"</b>\n"Таны хаалттай орон зайд өөрийн гэсэн Play Store байдаг тул ингэснээр та аппуудыг хялбархан суулгах боломжтой."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Таны хаалттай орон зай түгжээтэй үед хаалттай орон зайн аппууд тань зөвшөөрлийн менежер, нууцлалын хяналтын самбар, бусад тохиргоонд харагдахгүй.\n\nТаны хаалттай орон зайг шинэ төхөөрөмжид сэргээх боломжгүй. Хэрэв та үүнийг өөр төхөөрөмжид ашиглахыг хүсвэл хаалттай өөр орон зай тохируулах шаардлагатай болно.\n\nТаны төхөөрөмжийг компьютерт холбодог эсвэл таны төхөөрөмжид хортой апп суулгадаг аливаа хүн таны хаалттай орон зайд хандах боломжтой байж магадгүй."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Аппуудыг суулгах"</b>\n"Та орон зайдаа хувийн байлгахыг хүсэж буй аппуудаа суулгана уу"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Санамж"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Таныг орон зайгаа түгжихэд аппууд зогсдог"</b>\n"Таныг орон зайгаа түгжихэд таны орон зай дахь аппууд зогсох бөгөөд та тухайн аппуудаас мэдэгдэл хүлээн авахгүй"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Хаалттай орон зайн нэмэлт мэдээлэл авах"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Үүнд хэдэн хором зарцуулна"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Хаалттай орон зайг тохируулж байна…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Та зөвхөн хаалттай орон зайд шинэ түгжээ тохируулах эсвэл төхөөрөмжийнхөө түгжээг тайлахад ашигладаг ижил түгжээг ашиглах боломжтой"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Дэлгэцийн түгжээг ашиглах"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Шинэ түгжээ сонгох"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Түр хүлээнэ үү…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Түр хүлээнэ үү…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Тохируулж дууслаа!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Хаалттай орон зайгаа олохын тулд аппуудынхаа жагсаалт руу очоод, дараа нь доош гүйлгэнэ үү"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Болсон"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Хаалттай орон зайдаа ПИН тохируулна уу"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Хувийн орон зайдаа нууц үг тохируулна уу"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Хувийн орон зайдаа хээ тохируулна уу"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Өгөгдлөө хувийн байлгахад туслахын тулд Google Бүртгэл үүсгэх"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Дараагийн дэлгэц дээр та хаалттай орон зайтайгаа ашиглах бүртгэлд нэвтрэх боломжтой"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Өгөгдлийг хаалттай орон зайнаас гадуур гарч ирэхийг зогсооход туслахын тулд зориулалтын бүртгэл үүсгэнэ үү. Жишээлбэл:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Синк хийсэн зураг, файл, имэйл, харилцагч, календарийн үйл явдал болон бусад өгөгдөл"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Аппын таталтын түүх болон зөвлөмжүүд"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Хөтчийн түүх, хавчуурга болон хадгалсан нууц үгнүүд"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Таны хаалттай орон зайн аппуудын үйл ажиллагаатай холбоотой санал болгосон контент"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Ойлголоо"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Түгжээ"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Нуух"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Та <xliff:g id="COUNT">%d</xliff:g> хүртэлх хурууны хээ нэмж болно"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Системийн сертификат"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Сертификат бэхлэх"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Сүлжээний мэдээлэл"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Энэ сүлжээ WEP хэмээх нэртэй аюулгүй байдлын хуучин протоколыг ашигладаг бөгөөд энэ нь хамгаалалт багатай байдаг"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet маск"</string>
<string name="server_name_title" msgid="7257095185810299066">"Серверийн нэр"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Төрөл"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Төхөөрөмжийн Wi‑Fi MAC хаяг"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth хаяг"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Серийн дугаар"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Асаалттай байсан хугацаа"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Хэвийн ажиллагаатай үе"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Үйлдвэрлэсэн огноо"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Анх ашигласан огноо"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Мөчлөгийн тоо"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Баруун доод буланг товших"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Бусад сонголтыг авах бол мэдрэгч самбарын баруун доод буланг товших"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Заагчийн хурд"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Заагчийг дүүргэх загвар"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Заагчийг дүүргэх загварыг хар болго"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Заагчийг дүүргэх загварыг ногоон болго"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Заагчийг дүүргэх загварыг шар болго"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Заагчийг дүүргэх загварыг ягаан болго"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Заагчийг дүүргэх загварыг цэнхэр болго"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Мэдрэгч самбарын зангааг мэдэж авах"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"мэдрэгч самбар, мэдрэгч самбар, хулгана, курсор, гүйлгэх, шудрах, баруун талыг товших, товших, заагч"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"баруун талыг товших, товших"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Байхгүй}=1{1 хуваарийг тохируулсан}other{# хуваарийг тохируулсан}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Бүү саад бол"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Чухал байдлаар нь ангилах горим"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Зөвхөн чухал хүмүүс болон аппуудаас мэдэгдэл авах"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Саад болох зүйлсийг хязгаарлах"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Бүү саад бол горимыг асаах"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Засах"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Хуваарь"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Хуваарь"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Автоматаар асаах"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Календарь нэмээрэй"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Календариа ашиглаарай"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Хуваарь"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Хуваарь тохируулах"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Хуваарь"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> цаг, <xliff:g id="MINUTES">%2$d</xliff:g> мин"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Хуваарь"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Утасны дууг тодорхой цагт хаах"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Бүү саад бол горимын дүрмийг тохируулах"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Энэ апп нь сайжруулсан тохиргоог дэмждэггүй"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Бусад тохиргоо"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Энэ аппад бусад тохиргоо боломжтой"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Мэдэгдлийн хөргөлт"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Мэдэгдлийн хөргөлтийг ашиглах"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Та богино хугацаанд олон мэдэгдэл авсан үед таны төхөөрөмж саад болох дуу чимээ, дэлгэц дээрх попапуудыг багасгана. Дуудлага, сэрүүлэг, чухал харилцан яриа хэвийн байдлаар сэрэмжлүүлсэн хэвээр байх бөгөөд хүргэсэн бүх мэдэгдлийг Shade-с олоход хялбар байх болно."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Ажлын профайлуудад хэрэгжүүлэх"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Ажлын профайлын аппуудад ашиглах"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR туслагч үйлчилгээ"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Сонгосон аппууд"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Байхгүй"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Бүгд"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Аппуудад дарахыг нь зөвшөөрөх"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Тасалдуулах боломжтой аппууд"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Бусад аппыг сонгох"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} хүртэл зөвхөн нэг цагийн турш сэрүүлэг болгож өөрчилнө}other{{time} хүртэл зөвхөн # цагийн турш сэрүүлэг болгож өөрчилнө}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> хүртэл анхааруулах горимд шилжих"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Үргэлж саад бол горимд шилжих"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Нэр өөрчлөх"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Дүрс тэмдэг өөрчлөх"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Дүрс тэмдэг өөрчлөх"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Сануулга"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Хаах"</string>
<string name="device_feedback" msgid="5351614458411688608">"Энэ төхөөрөмжийн талаар санал илгээх"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Зүүн"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Баруун"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Гэр"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Батарей"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Тохиргооны самбар"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Дэлгэцийн горимыг хүчлэх"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Дэлгэцийн туршилтын горимыг хоёрдогч дэлгэцэд хүчлэх"</string>
@@ -4968,7 +4981,7 @@
<string name="mobile_data_temp_using" msgid="5211002380149434155">"<xliff:g id="SUBNAME">%1$s</xliff:g>-г түр зуур ашиглаж байна"</string>
<string name="mobile_data_no_connection" msgid="905897142426974030">"Холболт алга"</string>
<string name="mobile_data_off_summary" msgid="1884248776904165539">"Мобайл дата автоматаар холбогдохгүй"</string>
- <string name="mobile_data_disable_title" msgid="8438714772256088913">"Мобайл датаг унтраах уу?"</string>
+ <string name="mobile_data_disable_title" msgid="8438714772256088913">"Хөдөлгөөнт төхөөрөмжийн датаг унтраах уу?"</string>
<string name="mobile_data_disable_message" msgid="7829414836454769970">"Та <xliff:g id="CARRIER">%s</xliff:g>-р дата эсвэл интернэтэд хандах боломжгүй болно. Интернэт нь зөвхөн Wi-Fi-р боломжтой байх болно."</string>
<string name="mobile_data_disable_message_default_carrier" msgid="4449469407705838612">"таны оператор компани"</string>
<string name="not_allowed_by_ent" msgid="1958611623122304411">"Танай байгууллагаас зөвшөөрдөггүй"</string>
diff --git a/res/values-mr/arrays.xml b/res/values-mr/arrays.xml
index 29f7ccc..d7ce4b4 100644
--- a/res/values-mr/arrays.xml
+++ b/res/values-mr/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 5a00240..d2e79a5 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"डिव्हाइस डिस्कनेक्ट करायचे का?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"नवीन डिव्हाइससोबत पेअर करा"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ब्लूटूथ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"उद्या पुन्हा आपोआप सुरू करा"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"उजवा कान पेअर करा"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"डावा कान पेअर करा"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"तुमचा दुसरा कान पेअर करा"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"डावा कान पेअर करा"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"श्रवणयंत्राची सेटिंग्ज"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"शॉर्टकट, श्रवणयंत्राची कंपॅटिबिलिटी"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"प्रीसेट"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"प्रीसेट"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"प्रीसेट अपडेट करता आले नाही"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ऑडिओ आउटपुट"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ऑडिओ आउटपुटबद्दल"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"रद्द करा"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"नाही, नको"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"आताच नको"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"मी सहमत आहे"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"आणखी"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"तुमच्या चेहऱ्यासह अनलॉक करा"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"लक्षात ठेवा"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"फोन अनलॉक करण्यासाठी किंवा खरेदींना मंजूरी देण्यासाठी तुमचे फिंगरप्रिंट वापरा.\n\nटीप: तुम्ही हे डिव्हाइस अनलॉक करण्यासाठी तुम्ही तुमचे फिंगरप्रिंट वापरू शकत नाही. अधिक माहितीसाठी संस्थेच्या प्रशासकाशी संपर्क साधा."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"रद्द करा"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"नाही, नको"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"आताच नको"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"मी सहमत आहे"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"फिंगरप्रिंट पायरी वगळायची?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"फिंगरप्रिंट सेटअपला फक्त एक किंवा दोन मिनिटे लागतात. ही पायरी वगळली तरी तुम्ही नंतर सेटिंग्जमध्ये जाऊन तुमची फिंगरप्रिंट जोडू शकता."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"प्रत्येक वेळी डिव्हाइस लॉक होते"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"स्क्रीन टाइमआउटनंतर ५ मिनिटांनी"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"फक्त डिव्हाइस रीस्टार्ट झाल्यावर"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"तुम्ही तुमच्या खाजगी स्पेससाठी वेगळे लॉक वापरत असल्यास, खाजगी स्पेसमध्ये ॲप्स उघडण्यासाठी हे तुम्हीच आहात याची पडताळणी तुम्हाला करावी लागेल."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"खाजगी स्पेस लपवा"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"खाजगी स्पेस लॉक केलेली असताना लपवा"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"तुमच्याकडे तुमच्या डिव्हाइसवर खाजगी स्पेस आहे हे इतरांना कळू नये, यासाठी तुम्ही ती तुमच्या ॲप्स सूचीमधून लपवू शकता"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"सेट करा"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"खाजगी स्पेस"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"वेगळ्या स्पेसमध्ये खाजगी अॅप्स लपवा किंवा लॉक करा. अतिरिक्त सुरक्षेसाठी समर्पित Google खाते वापरा."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"तुमची खाजगी स्पेस सेट करा"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"तुमच्या स्पेससाठी Google खाते निवडा"</b>\n"समर्पित खाते वापरल्यामुळे, सिंक केलेल्या फाइल, फोटो आणि ईमेल हे तुमच्या स्पेसच्या बाहेर दिसण्यापासून थांबवण्यात मदत होते"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"हे कसे काम करते"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"तुमच्या स्पेससाठी Google खाते तयार करा"</b>\n"तुम्ही समर्पित खाते वापरत असल्यास, ते सिंक केलेल्या फाइल, फोटो आणि ईमेल तुमच्या स्पेसबाहेर दिसणे थांबवण्यात मदत करते"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"लॉक सेट करा"</b>\n"तुमची स्पेस इतर लोकांनी उघडण्यापासून थांबवण्यासाठी ती लॉक करा"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ॲप्स इंस्टॉल करा"</b>\n"तुमच्या खाजगी स्पेसचे स्वतःचे Play Store आहे, जेणेकरून तुम्ही ॲप्स सहजपणे इंस्टॉल करू शकता."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"तुमची खाजगी स्पेस लॉक केलेली असताना तुमच्या खाजगी स्पेसमधील अॅप्स ही परवानगी व्यवस्थापक, गोपनीयता डॅशबोर्ड आणि इतर सेटिंग्जमध्ये दिसणार नाहीत.\n\nतुमची खाजगी स्पेस नवीन डिव्हाइसवर रिस्टोअर केली जाऊ शकत नाही. तुम्हाला खाजगी स्पेसला दुसर्या डिव्हाइसवर वापरायचे असल्यास, दुसरी खाजगी स्पेस सेट करावी लागेल.\n\nतुमच्या डिव्हाइसला कॉंप्युटरशी कनेक्ट करणारी किंवा तुमच्या डिव्हाइसवर दुर्भावनापूर्ण अॅप्स इंस्टॉल करणारी कोणतीही व्यक्ती तुमची खाजगी स्पेस अॅक्सेस करू शकते."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"अॅप्स इंस्टॉल करा"</b>\n"तुम्ही तुमच्या स्पेसमध्ये खाजगी ठेवायची असलेली ॲप्स इंस्टॉल करा"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"लक्षात ठेवा"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"तुम्ही तुमची स्पेस लॉक करता, तेव्हा ॲप्स थांबतात"</b>\n"तुम्ही तुमची स्पेस लॉक करता, तेव्हा तुमच्या स्पेसमधील ॲप्स थांबवली जातात आणि तुम्हाला त्यांच्याकडून नोटिफिकेशन मिळणार नाहीत"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"खाजगी स्पेसबद्दल अधिक जाणून घ्या"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"यासाठी थोडा वेळ लागू शकतो"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"खाजगी स्पेस सेट करत आहे…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"तुम्ही फक्त खाजगी स्पेससाठी नवीन लॉक सेट करू शकता किंवा तुम्ही तुमचे डिव्हाइस अनलॉक करण्यासाठी वापरता तेच लॉक वापरू शकता"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"स्क्रीन लॉक वापरा"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"नवीन लॉक निवडा"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"फक्त एक सेकंद…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"फक्त एक सेकंद…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"सर्व तयार आहे!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"तुमची खाजगी स्पेस शोधण्यासाठी, तुमच्या अॅप्स सूचीवर जा आणि नंतर खाली स्क्रोल करा"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"पूर्ण झाले"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"तुमच्या खाजगी स्पेससाठी पिन सेट करा"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"तुमच्या खाजगी स्पेससाठी पासवर्ड सेट करा"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"तुमच्या खाजगी स्पेससाठी पॅटर्न सेट करा"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"तुमचा डेटा खाजगी ठेवण्यात मदत व्हावी यासाठी एक Google खाते तयार करा"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"पुढील स्क्रीनवर तुम्ही तुमच्या खाजगी स्पेससोबत वापरण्यासाठी खात्यामध्ये साइन इन करू शकता"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"खाजगी स्पेसच्या बाहेर डेटा दिसण्यापासून थांबवण्यात मदत करण्यासाठी समर्पित खाते तयार करा, जसे की:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"सिंक केलेले फोटो, फाइल, ईमेल, संपर्क, कॅलेंडर इव्हेंट आणि इतर डेटा"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ॲप डाउनलोड इतिहास आणि शिफारशी"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ब्राउझिंग इतिहास, बुकमार्क आणि सेव्ह केलेले पासवर्ड"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"खाजगी स्पेसच्या ॲप्समधील तुमच्या अॅक्टिव्हिटीशी संबंधित सुचवलेला आशय"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"समजले"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"लॉक"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"लपवा"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"तुम्ही <xliff:g id="COUNT">%d</xliff:g> पर्यंत फिंगरप्रिंट जोडू शकता"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"सिस्टीम प्रमाणपत्र"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"प्रमाणपत्र पिन करणे"</string>
<string name="wifi_details_title" msgid="222735438574597493">"नेटवर्क तपशील"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"हे नेटवर्क WEP नावाचा सर्वात जुना सुरक्षा प्रोटोकॉल वापरते, जो कमी सुरक्षित आहे"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"सबनेट मास्क"</string>
<string name="server_name_title" msgid="7257095185810299066">"सर्व्हरचे नाव"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"प्रकार"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"डिव्हाइसचा वाय-फाय MAC ॲड्रेस"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ब्लूटूथ ॲड्रेस"</string>
<string name="status_serial_number" msgid="9060064164331466789">"सिरीअल नंबर"</string>
- <string name="status_up_time" msgid="1274778533719495438">"सुरू असल्याचा कालावधी"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"अपटाइम"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"निर्माण केल्याची तारीख"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"पहिल्या वापराची तारीख"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"चार्ज/डिस्चार्ज चक्राची संख्या"</string>
@@ -1619,9 +1617,9 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"लोड करत आहे..."</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"लोड करत आहे..."</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"पासवर्ड सेट करा"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"कार्य प्रोफाईलसाठी पासवर्ड सेट करा"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"कार्य प्रोफाइलसाठी पासवर्ड सेट करा"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"पिन सेट करा"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"कार्य प्रोफाईलसाठी पिन सेट करा"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"कार्य प्रोफाइलसाठी पिन सेट करा"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"पॅटर्न सेट करा"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"अतिरिक्त सुरक्षेसाठी, डिव्हाइस अनलॉक करण्याकरिता पॅटर्न सेट करा"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"कार्य प्रोफाईलसाठी पॅटर्न सेट करा"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"तळाशी उजवीकडे टॅप करा"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"अधिक पर्यायांसाठी टचपॅडच्या तळाशी उजव्या कोपऱ्यावर टॅप करा"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"पॉइंटर वेग"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"पॉइंटर फिलची शैली"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"पॉइंटर फिलची शैली बदलून काळी करा"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"पॉइंटर फिलची शैली बदलून हिरवी करा"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"पॉइंटर फिलची शैली बदलून पिवळी करा"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"पॉइंटर फिलची शैली बदलून गुलाबी करा"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"पॉइंटर फिलची शैली बदलून निळी करा"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"टचपॅड जेश्चर जाणून घ्या"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ट्रॅकपॅड, ट्रॅक पॅड, माउस, कर्सर, स्क्रोल करा, स्वाइप करा, राइट-क्लिक करा, क्लिक करा, पॉइंटर"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"राइट-क्लिक करा, टॅप करा"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{None}=1{एक शेड्युल सेट केले}other{# शेड्युल सेट केली}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"व्यत्यय आणू नका"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"प्राधान्य मोड"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"फक्त महत्त्वाच्या लोकांच्या आणि अॅप्सच्या सूचना मिळवा"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"व्यत्यय मर्यादित करा"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"व्यत्यय आणू नका सुरू करा"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"कॅलेंडर जोडा"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"तुमचे कॅलेंडर वापरा"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"शेड्यूल"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"शेड्यूल सेट करा"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"शेड्यूल"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> तास <xliff:g id="MINUTES">%2$d</xliff:g> मिनिटे"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"शेड्युल"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"काही वेळेला फोन शांत करा"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"व्यत्यय आणू नका नियम सेट करा"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"हे ॲप वर्धित सेटिंग्जना सपोर्ट करत नाही"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"अधिक सेटिंग्ज"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"या अॅपमध्ये अधिक सेटिंग्ज उपलब्ध आहेत"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"कूलडाउन"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"कूलडाउन वापरा"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"तुम्हाला थोड्याच कालावधीमध्ये अनेक नोटिफिकेशन मिळतात, तेव्हा तुमचे डिव्हाइस स्क्रीनवरील आवाजाचे व्यत्यय आणि पॉप-अप कमी करेल. कॉल, अलार्म आणि प्राधान्य दिलेल्या संभाषणांसाठी तरीही सामान्य पद्धतीने सूचित केले जाईल व डिलिव्हर झालेली सर्व नोटिफिकेशन शेड मध्ये सहज शोधता येऊ शकतात."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"कार्य प्रोफाइलला लागू करा"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"कार्य प्रोफाइलच्या अॅप्सना लागू करा"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR मदतनीस सेवा"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"निवडलेली अॅप्स"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"कोणतेही नाही"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"सर्व"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ॲप्सना ओव्हरराइड करण्याची अनुमती द्या"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"व्यत्यय आणू शकणारी ॲप्स"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"आणखी ॲप्स निवडा"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} पर्यंत फक्त एका तासासाठी अलार्मवर बदला}other{{time} पर्यंत फक्त # तासांसाठी अलार्मवर बदला}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"केवळ <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> पर्यंत अलार्मवर बदला"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"नेहमी व्यत्यय आणा वर बदला"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"नाव बदला"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"आयकन बदला"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"आयकन बदला"</string>
<string name="warning_button_text" msgid="1274234338874005639">"चेतावणी"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"बंद करा"</string>
<string name="device_feedback" msgid="5351614458411688608">"या डिव्हाइसबद्दल फीडबॅक पाठवा"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"डावा"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"उजवे"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"केस"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"बॅटरी"</string>
<string name="settings_panel_title" msgid="346363079938069215">"सेटिंग्ज पॅनल"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"डेस्कटॉप मोडची सक्ती करा"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"दुसऱ्या डिस्प्लेवर प्रायोगिक डेस्कटॉप मोडला सक्ती करा"</string>
diff --git a/res/values-ms/arrays.xml b/res/values-ms/arrays.xml
index 62c7449..4032302 100644
--- a/res/values-ms/arrays.xml
+++ b/res/values-ms/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index 9c61d78..c12fa64 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Putuskan sambungan peranti?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Gandingkan peranti baharu"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Dihidupkan lagi esok secara automatik"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Gandingkan telinga kanan"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Gandingkan telinga kiri"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Gandingkan telinga lagi satu"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Gandingkan telinga kiri"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Tetapan peranti pendengaran"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Pintasan, keserasian alat bantu pendengaran"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Pratetapan"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Pratetapan"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Tidak dapat mengemaskinikan pratetapan"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Output audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Perihal output audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Batal"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Tidak perlu"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Bukan sekarang"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Saya setuju"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Lagi"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Buka kunci dengan wajah anda"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Jangan lupa"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Gunakan cap jari anda untuk membuka kunci telefon atau membenarkan pembelian.\n\nPerhatian: Anda tidak boleh menggunakan cap jari untuk membuka kunci peranti ini. Untuk mendapatkan maklumat lanjut, hubungi pentadbir organisasi anda."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Batal"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Tidak perlu"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Bukan sekarang"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Saya setuju"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Langkau cap jari?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Persediaan cap jari hanya mengambil masa seminit dua. Jika anda melangkau langkah ini, anda boleh menambah cap jari kemudian dalam Tetapan."</string>
@@ -554,12 +555,12 @@
<string name="private_space_fingerprint_title" msgid="5989254643211889931">"Buka Kunci Cap Jari"</string>
<string name="private_space_face_title" msgid="3290402865367663079">"Buka Kunci Wajah"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Ketik untuk membuat persediaan"</string>
- <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Buka Kunci Cap Jari untuk ruang peribadi"</string>
- <string name="private_space_face_unlock_title" msgid="462248384776453613">"Buka Kunci Wajah untuk ruang peribadi"</string>
+ <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Buka Kunci Cap Jari untuk ruang privasi"</string>
+ <string name="private_space_face_unlock_title" msgid="462248384776453613">"Buka Kunci Wajah untuk ruang privasi"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Buka Kunci Wajah & Cap Jari untuk ruang privasi"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Sediakan Buka Kunci Cap Jari untuk ruang privasi"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Gunakan cap jari anda untuk membuka kunci ruang privasi anda atau mengesahkan identiti anda, seperti ketika anda log masuk ke apl atau meluluskan pembelian"</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Ruang privasi anda boleh dibuka kunci apabila walaupun anda tidak bermaksud untuk berbuat demikian, seperti jika seseorang menghalakan telefon anda pada jari anda."</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Ruang privasi anda boleh dibuka kunci walaupun anda tidak bermaksud untuk berbuat demikian, seperti jika seseorang menghalakan telefon anda pada jari anda."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Gunakan cap jari anda untuk membuka kunci ruang privasi anda atau untuk meluluskan pembelian"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Sediakan Buka Kunci Wajah untuk ruang privasi"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Gunakan wajah anda untuk membuka kunci ruang privasi anda atau mengesahkan identiti anda, seperti ketika anda log masuk ke apl atau meluluskan pembelian"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Setiap kali peranti dikunci"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minit selepas tamat masa skrin"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Hanya selepas peranti dimulakan semula"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Jika anda menggunakan kunci lain untuk ruang privasi anda, anda mungkin perlu mengesahkan identiti anda untuk membuka apl dalam ruang privasi anda."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Sembunyikan ruang persendirian"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Sembunyikan ruang privasi apabila dikunci"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Untuk menghalang orang lain daripada mengetahui bahawa anda mempunyai ruang privasi pada peranti anda, anda boleh menyembunyikan ruang privasi ini daripada senarai apl anda"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Buat persediaan"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Ruang privasi"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Sembunyikan atau kunci apl peribadi dalam ruang berasingan. Gunakan Google Account khusus untuk keselamatan tambahan."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Sediakan ruang privasi anda"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Pilih Google Account untuk ruang anda"</b>\n"Penggunaan akaun khusus dapat menghentikan fail, foto dan e-mel yang disegerakkan daripada dipaparkan di luar ruang anda"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Cara ciri ini berfungsi"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Buat Google Account untuk ruang anda"</b>\n"Jika anda menggunakan akaun khusus, akaun tersebut membantu untuk menghentikan fail, foto dan e-mel yang disegerakkan daripada dipaparkan di luar ruang anda"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Tetapkan kunci"</b>\n"Kunci ruang anda untuk menghalang orang lain daripada membuka ruang tersebut"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Pasang apl"</b>\n"Ruang privasi anda mengandungi Play Store sendiri supaya anda boleh memasang apl dengan mudah."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apl dalam ruang privasi anda tidak akan dipaparkan dalam pengurus kebenaran, papan pemuka privasi dan tetapan lain apabila ruang privasi anda dikunci.\n\nRuang privasi anda tidak boleh dipulihkan kepada peranti baharu. Anda perlu menyediakan ruang privasi lain jika anda mahu menggunakan ruang privasi pada peranti lain.\n\nSesiapa sahaja yang menyambungkan peranti anda kepada komputer atau memasang apl hasad pada peranti anda mungkin dapat mengakses ruang privasi anda."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Pasang apl"</b>\n"Pasang apl yang mahu anda rahsiakan dalam ruang anda"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Sentiasa ingat"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apl dihentikan apabila anda mengunci ruang anda"</b>\n"Apabila anda mengunci ruang anda, apl dalam ruang anda akan dihentikan dan anda tidak akan menerima pemberitahuan daripada apl itu"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Ketahui lebih lanjut tentang ruang privasi"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Proses ini akan mengambil sedikit masa"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Menyediakan ruang privasi…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Anda boleh menetapkan kunci baharu hanya untuk ruang privasi atau menggunakan kunci sama yang anda gunakan untuk membuka kunci peranti"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Gunakan kunci skrin"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Pilih kunci baharu"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Tunggu sebentar…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Tunggu sebentar…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Siap!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Untuk menemukan ruang privasi, akses senarai apl, kemudian tatal ke bawah"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Selesai"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Tetapkan PIN untuk ruang privasi anda"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Tetapkan kata laluan ruang peribadi anda"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Tetapkan corak untuk ruang peribadi anda"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Buat Google Account untuk membantu kami memastikan data anda dirahsiakan"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Anda boleh log masuk ke akaun yang akan digunakan dengan ruang privasi pada skrin seterusnya"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Buat akaun khusus untuk mencegah data daripada dipaparkan di luar ruang privasi, seperti:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Foto, fail, e-mel, kenalan, acara kalendar dan data lain yang disegerakkan"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Sejarah muat turun apl dan syor"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Sejarah penyemakan imbas, penanda halaman dan kata laluan yang disimpan"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Kandungan yang dicadangkan berkaitan dengan aktiviti anda pada apl ruang privasi"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Kunci"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Sembunyikan"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Anda boleh menambah sehingga <xliff:g id="COUNT">%d</xliff:g> cap jari"</string>
@@ -664,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Pilih kunci skrin"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Pilih kunci skrin baharu"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Pilih kunci untuk apl kerja"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Pilih kunci kerja baharu"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Pilih kunci profil kerja baharu"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Untuk keselamatan tambahan, tetapkan kunci skrin sandaran"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Pilih kaedah kunci skrin sandaran anda"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Pentadbir IT tak dapat menetapkan semula kunci skrin jika anda terlupa."</string>
@@ -795,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{Mesti mengandungi sekurang-kurangnya 1 aksara bukan huruf}other{Mesti mengandungi sekurang-kurangnya # aksara bukan huruf}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{Mesti mengandungi sekurang-kurangnya 1 aksara bukan angka}other{Mesti mengandungi sekurang-kurangnya # aksara bukan angka}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"Pentadbir peranti tidak membenarkan penggunaan kata laluan terbaharu"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Angka menaik, menurun atau jujukan berulang tidak dibenarkan"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Angka menaik, menurun atau berulang tidak dibenarkan"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"Sahkan"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"Kosongkan"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"Kunci skrin sudah ditukar. Cuba lagi menggunakan kunci skrin yang baharu."</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sijil sistem"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Penyematan sijil"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Butiran rangkaian"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Rangkaian ini menggunakan protokol keselamatan lebih lama yang dipanggil WEP, rangkaian yang kurang selamat"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Topeng subnet"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nama pelayan"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Jenis"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Alamat MAC Wi-Fi peranti"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Alamat Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Nombor siri"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Masa hidup"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Masa hidup"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Tarikh pembuatan"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Tarikh penggunaan kali pertama"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Kiraan kitaran"</string>
@@ -1619,7 +1617,7 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"Memuatkan..."</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"Memuatkan..."</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"Tetapkan kata laluan"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Tetapkan kata laluan kerja"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Tetapkan kata laluan profil kerja"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Tetapkan PIN"</string>
<string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Tetapkan PIN kerja"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Tetapkan corak"</string>
@@ -1630,12 +1628,12 @@
<string name="lockpassword_choose_your_pin_message" msgid="7230665212172041837">"Untuk keselamatan, tetapkan PIN"</string>
<string name="lockpassword_choose_your_pin_header_for_fingerprint" msgid="2783879743691792556">"Buat PIN untuk guna cap jari"</string>
<string name="lockpassword_confirm_your_password_header" msgid="6132312814563023990">"Masukkan semula kata laluan anda"</string>
- <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Masukkan semula kata laluan kerja anda"</string>
+ <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Masukkan semula kata laluan profil kerja"</string>
<string name="lockpassword_confirm_your_work_password_header" msgid="4647071231702288305">"Masukkan kata laluan kerja anda"</string>
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"Sahkan corak anda"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"Masukkan corak kerja anda"</string>
<string name="lockpassword_confirm_your_pin_header" msgid="2241722970567131308">"Masukkan semula PIN"</string>
- <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Masukkan semula PIN kerja anda"</string>
+ <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Masukkan semula PIN profil kerja"</string>
<string name="lockpassword_confirm_your_work_pin_header" msgid="4229765521391960255">"Masukkan PIN kerja anda"</string>
<string name="lockpassword_confirm_passwords_dont_match" msgid="2100071354970605232">"Kata laluan tidak sepadan"</string>
<string name="lockpassword_confirm_pins_dont_match" msgid="1103699575489401030">"PIN tidak sepadan"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Ketik bawah kanan"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Ketik penjuru kanan sebelah bawah pad sentuh untuk pilihan lain"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Kelajuan penuding"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Gaya isian penunjuk"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Tukar gaya isian penunjuk kepada warna hitam"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Tukar gaya isian penunjuk kepada warna hijau"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Tukar gaya isian penunjuk kepada warna kuning"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Tukar gaya isian penunjuk kepada warna merah jambu"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Tukar gaya isian penunjuk kepada warna biru"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Ketahui gerak isyarat pad sentuh"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"pad jejak, pad jejak, tetikus, kursor, tatal, leret, klik kanan, klik, penuding"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"klik kanan, ketik"</string>
@@ -2029,7 +2033,7 @@
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"Warna dan gerakan"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Kontras warna"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Kontras yang lebih tinggi menjadikan teks, butang dan ikon lebih menonjol. Pilih kontras yang paling sesuai untuk anda."</string>
- <string name="color_contrast_note" msgid="7592686603372566198">"Sesetengah apl mungkin tidak menyokong semua tetapan kontras warna dan teks"</string>
+ <string name="color_contrast_note" msgid="7592686603372566198">"Sesetengah apl mungkin menyokong hanya sebahagian tetapan kontras warna dan teks"</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"Pratonton"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 hari yang lalu"</string>
@@ -2154,7 +2158,7 @@
<string name="accessibility_shortcut_edit_dialog_summary_software_floating" msgid="4459254227203203324"><annotation id="link">"Lagi pilihan"</annotation></string>
<string name="footer_learn_more_content_description" msgid="8843798273152131341">"Ketahui lebih lanjut tentang <xliff:g id="SERVICE">%1$s</xliff:g>"</string>
<string name="accessibility_shortcut_edit_dialog_title_quick_settings" msgid="140959604014177304">"Tetapan Pantas"</string>
- <string name="accessibility_shortcut_edit_dialog_summary_quick_settings" msgid="739883998754165940">"{count,plural, =1{Leret ke bawah daripada bahagian atas skrin}other{Leret ke bawah menggunakan # jari daripada bahagian atas skrin}}"</string>
+ <string name="accessibility_shortcut_edit_dialog_summary_quick_settings" msgid="739883998754165940">"{count,plural, =1{Leret ke bawah dari bahagian atas skrin}other{Leret ke bawah menggunakan # jari dari bahagian atas skrin}}"</string>
<string name="accessibility_shortcut_edit_dialog_summary_quick_settings_suw" msgid="4216628328191609785">"{count,plural, =1{Leret ke bawah daripada bahagian atas skrin anda. Pintasan ini akan tersedia selepas anda menyelesaikan persediaan peranti.}other{Leret ke bawah dengan # jari daripada bahagian atas skrin anda. Pintasan ini akan tersedia selepas anda menyelesaikan persediaan peranti.}}"</string>
<string name="accessibility_feature_shortcut_setting_summary_quick_settings" msgid="7006526933552889373">"Tetapan Pantas"</string>
<string name="accessibility_shortcut_edit_dialog_title_hardware" msgid="844089763968552142">"Kekunci kelantangan"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Tiada}=1{1 jadual ditetapkan}other{# jadual ditetapkan}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Jangan Ganggu"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Mod Keutamaan"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Dapatkan pemberitahuan daripada orang dan apl penting sahaja"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Hadkan gangguan"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Hidupkan Jangan Ganggu"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Tambahkan kalendar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Gunakan kalendar anda"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Jadual"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Tetapkan jadual"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Jadual"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> jam, <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Jadual"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Senyapkan telefon pd masa tertentu"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Tetapkan peraturan Jangan Ganggu"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Apl ini tidak menyokong tetapan dipertingkatkan"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Lagi tetapan"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Lagi tetapan tersedia dalam apl ini"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Tempoh bertenang"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Gunakan Tempoh bertenang"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Apabila anda menerima banyak pemberitahuan dalam tempoh masa yang singkat, peranti anda akan meminimumkan gangguan bunyi dan tetingkap timbul pada skrin. Panggilan, penggera dan perbualan keutamaan tetap akan mencetuskan makluman seperti biasa dan semua pemberitahuan yang dihantar boleh ditemukan dengan mudah pada Bidai."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Gunakan pada profil kerja"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Gunakan pada apl profil kerja"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Perkhidmatan pembantu VR"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Apl yang dipilih"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Tiada"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Semua"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Benarkan apl membatalkan Jangan Ganggu"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apl yang boleh ganggu"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Pilih lagi apl"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Tukar kepada penggera sahaja selama satu jam hingga {time}}other{Tukar kepada penggera sahaja selama # jam hingga {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Tukar kepada penggera sahaja hingga <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Tukar kepada sentiasa ganggu"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Namakan semula"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Tukar ikon"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Tukar ikon"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Amaran"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Tutup"</string>
<string name="device_feedback" msgid="5351614458411688608">"Hantar maklum balas peranti ini"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Kiri"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Kanan"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Sarung"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateri"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel Tetapan"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Paksa mod desktop"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Paksa mod desktop percubaan pada paparan kedua"</string>
@@ -4841,22 +4859,22 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"But dengan saiz halaman 16KB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"But peranti dengan kernel disokong saiz halaman 16KB"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Tukar daripada mod 4KB kepada mod 16KB"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Anda menggunakan mod halaman agnostik yang menjalankan kernel 4KB dan anda sedang menukar kepada mod 16KB. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Hal ini akan mengebut semula peranti. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk mengembalikan peranti kepada mod pengeluaran, anda perlu menukar semula kepada mod 4KB dan mengunci pemuat but yang akan menetapkan semula peranti kepada tetapan kilang. Selepas peranti berjaya dibut masuk dalam Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Anda menggunakan mod halaman agnostik yang menjalankan kernel 4KB, dan anda beralih kepada mod 16KB. Integriti perisian tidak dapat dijamin dalam mod ini, dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin berisiko. Tindakan ini akan mengebut semula peranti. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk mengembalikan peranti kepada mod pengeluaran, anda perlu menukar semula kepada mod 4KB dan mengunci pemuat but, yang akan menetapkan semula peranti kepada tetapan kilang. Selepas peranti berjaya dibut kepada Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Tukar daripada mod 16KB kepada mod 4KB"</string>
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Anda menggunakan mod halaman agnostik yang menjalankan kernel 16KB dan anda sedang menukar kepada mod 4KB. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Hal ini akan mengebut semula peranti. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk mengembalikan peranti kepada mod pengeluaran, anda perlu mengunci pemuat but kemudiannya yang akan menetapkan semula peranti kepada tetapan kilang. Selepas peranti berjaya dibut masuk dalam Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Gagal mengemaskinikan kernel kepada kernel serasi halaman 16KB."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Menggunakan perubahan"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"Format semula peranti kepada ext4? (diperlukan untuk mod 16KB)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Pemetakan data peranti ini perlu ditukar kepada ext4 sebelum menggunakan pilihan pembangun 16KB. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Pengaktifan pilihan 16KB akan memerlukan satu lagi but semula selepas ini. Setelah anda menggunakan mod ini, anda boleh bertukar berulang kali antara mod 4KB dengan 16KB menerusi satu but semula. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk mengembalikan peranti kepada mod pengeluaran, anda perlu menukar kembali kepada mod 4KB dan mengunci pemuat but yang akan menetapkan semula peranti kepada tetapan kilang. Selepas peranti berjaya dibut masuk dalam Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun. Data peranti akan dihapuskan dan sistem fail akan ditukar kepada ext4 selepas pengesahan. Selepas proses ini selesai, sila kembali untuk mendayakan semula 16KB."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Pemetakan data peranti ini perlu ditukar kepada ext4 sebelum menggunakan pilihan pembangun 16KB. Integriti perisian tidak dapat dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin berisiko. Pengaktifan pilihan 16KB akan memerlukan satu lagi but semula selepas ini. Setelah anda berada dalam mod ini, anda boleh bertukar berulang kali antara mod 4KB dengan 16KB menggunakan satu but semula. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk mengembalikan peranti kepada mod pengeluaran, anda perlu menukar kembali kepada mod 4KB dan mengunci pemuat but, yang akan menetapkan semula peranti kepada tetapan kilang. Selepas peranti berjaya dibut kepada Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun. Data peranti akan dihapuskan dan sistem fail akan ditukar kepada ext4 selepas pengesahan. Selepas proses ini selesai, sila kembali untuk mendayakan semula 16KB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Padamkan semua data"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Gagal memformat semula dan menghapuskan pemetakan data kepada ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Buka Kunci Pemuat But Diperlukan untuk mod 16KB"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Peranti ini perlu membuka kunci pemuat but sebelum menggunakan pilihan pembangun 16KB. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Semua data dan tetapan pengguna akan dihapuskan semasa pengaktifan mod 16KB. Setelah pemuat but tidak berkunci, pengaktifan pilihan 16KB memerlukan dua but semula. Setelah anda menggunakan mod ini, anda boleh bertukar berulang kali antara mod 4KB dengan 16KB menerusi satu but semula. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk mengembalikan peranti kepada mod pengeluaran, anda perlu menukar semula kepada mod 4KB dan melakukan penguncian OEM/pemuat but (yang akan melakukan tetapan semula kilang) pada peranti. Sila buka kunci pemuat but dan cuba lagi. Anda boleh melihat arahan tentang cara melakukan perkara ini menerusi <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Menggunakan mod halaman agnostik 4KB"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Anda menggunakan mod 4KB bagi mod halaman agnostik. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk memasuki semula mod pengeluaran, anda perlu mengunci pemuat but peranti. Ketik untuk baca lagi."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Anda menggunakan mod 4KB bagi mod halaman agnostik. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk memasuki semula mod pengeluaran, anda perlu mengunci pemuat but peranti. Tindakan ini akan menetapkan semula peranti kepada tetapan kilang dan memulihkan peranti pada tetapan pengeluaran. Selepas peranti berjaya dibut masuk dalam Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun. Jika peranti gagal mengebut masuk dalam Android atau tidak stabil, denyar semula peranti dengan imej kilang terkini daripada <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> dan pilih \'Hapuskan Peranti\', \'Kunci Pemuat But\' dan \'Denyar Paksa semua pemetakan\'."</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Anda menggunakan mod 4KB bagi mod halaman agnostik. Integriti perisian tidak dapat dijamin dalam mod ini, dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin berisiko. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk memasuki semula mod pengeluaran, anda perlu mengunci pemuat but peranti. Ketik untuk mengetahui lebih lanjut."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Anda menggunakan mod 4KB bagi mod halaman agnostik. Integriti perisian tidak dapat dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin berisiko. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk memasuki semula mod pengeluaran, anda perlu mengunci pemuat but peranti. Tindakan ini akan menetapkan semula peranti kepada tetapan kilang dan mengembalikan peranti kepada tetapan pengeluaran. Selepas peranti berjaya dibut kepada Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun. Jika peranti gagal mengebut kepada Android atau tidak stabil, denyar semula peranti dengan imej kilang terkini daripada <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> atau gunakan <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> dan pilih \'Hapuskan Peranti\', \'Kunci Pemuat But\' dan \'Denyar Paksa semua pemetakan\'."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Menggunakan mod halaman agnostik 16KB"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Anda menggunakan mod 16KB bagi mod halaman agnostik. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk memasuki semula mod pengeluaran, anda perlu menukar kembali kepada mod 4K dan mengunci pemuat but peranti. Ketik untuk baca lagi."</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Anda menggunakan mod 16KB bagi mod halaman agnostik. Integriti perisian tidak dapat dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin berisiko. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk memasuki semula mod pengeluaran, anda perlu menukar kembali kepada mod 4K dan mengunci pemuat but peranti. Ketik untuk mengetahui lebih lanjut."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Anda menggunakan mod 16KB bagi mod halaman agnostik. Integriti perisian tidak boleh dijamin dalam mod ini dan sebarang data yang disimpan pada telefon semasa pemuat but tidak berkunci mungkin dalam risiko. Sesetengah ciri akan dilumpuhkan dalam mod ini, maka sesetengah aplikasi mungkin tidak berfungsi. Untuk memasuki semula mod pengeluaran, anda perlu menukar kembali kepada mod 4K dan mengunci pemuat but peranti. Tindakan ini akan menetapkan semula peranti kepada tetapan kilang dan memulihkan peranti pada tetapan pengeluaran. Selepas peranti berjaya dibut masuk dalam Android, lumpuhkan pembukaan kunci OEM dalam Pilihan pembangun. Jika peranti gagal mengebut masuk dalam Android atau tidak stabil, denyar semula peranti dengan imej kilang terkini daripada <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> dan pilih \'Hapuskan Peranti\', \'Kunci Pemuat But\' dan \'Denyar Paksa semua pemetakan\'."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Mod Halaman agnostik 16KB"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Baca lebih lanjut"</string>
@@ -5097,7 +5115,7 @@
<string name="dream_complications_toggle_title" msgid="4273232303027449163">"Tunjukkan maklumat tambahan"</string>
<string name="dream_complications_toggle_summary" msgid="8088911054987524904">"Memaparkan perkara seperti masa, cuaca atau maklumat lain pada penyelamat skrin"</string>
<string name="dream_home_controls_toggle_title" msgid="706799741564479248">"Tunjukkan kawalan rumah"</string>
- <string name="dream_home_controls_toggle_summary" msgid="4102519907917430579">"Menunjukkan butang kawalan rumah daripada penyelamat skrin"</string>
+ <string name="dream_home_controls_toggle_summary" msgid="4102519907917430579">"Tunjukkan butang kawalan rumah pada penyelamat skrin"</string>
<string name="dream_more_settings_category" msgid="3119192146760773748">"Lagi tetapan"</string>
<string name="dream_setup_title" msgid="2458303874255396142">"Pilih penyelamat skrin anda"</string>
<string name="dream_setup_description" msgid="7508547154038580296">"Pilih paparan yang ditampilkan pada skrin apabila tablet didok. Peranti mungkin menggunakan lebih banyak tenaga apabila penyelamat skrin digunakan."</string>
diff --git a/res/values-my/arrays.xml b/res/values-my/arrays.xml
index 939b5ae..2382bc9 100644
--- a/res/values-my/arrays.xml
+++ b/res/values-my/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 49ca25f..c359dc8 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"စက်ပစ္စည်းကို ချိတ်ဆက်မှုဖြုတ်လိုပါသလား။"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"စက်အသစ် တွဲချိတ်ရန်"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ဘလူးတုသ်"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"မနက်ဖြန် အလိုအလျောက် ပြန်ဖွင့်ရန်"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"ညာဘက်ကိုတွဲချိတ်ရန်"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ဘယ်ဘက်ကိုတွဲချိတ်ရန်"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"အခြားတစ်ဖက်တွဲချိတ်ခြင်း"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ဘယ်ဘက် ချိတ်ဆက်ရန်"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"နားကြားကိရိယာ ဆက်တင်များ"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ဖြတ်လမ်းလင့်ခ်၊ နားကြားကိရိယာ တွဲဖက်အသုံးပြုနိုင်မှု"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"အသင့်သုံး"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ကြိုတင်သတ်မှတ်ချက်"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"အသင့်သုံးကို အပ်ဒိတ်လုပ်၍မရပါ"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"အသံထွက်မည့် ကိရိယာ"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"အသံထွက်မည့် ကိရိယာအကြောင်း"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"မလုပ်တော့"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"မလိုတော့ပါ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ယခုမလုပ်ပါ"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"သဘောတူသည်"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"နောက်ထပ်"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"သင့်မျက်နှာဖြင့် လော့ခ်ဖွင့်ပါ"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"သတိပြုရန်"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"သင့်ဖုန်းကို လော့ခ်ဖွင့်ရန် သို့မဟုတ် ဝယ်ယူမှုများကို ခွင့်ပြုပေးရန် သင့်လက်ဗွေကို အသုံးပြုပါ။\n\nမှတ်ချက်- ဤစက်ပစ္စည်းကို လော့ခ်ဖွင့်ရန် သင့်လက်ဗွေကို အသုံးမပြုနိုင်ပါ။ အသေးစိတ်အချက်များအတွက် သင့်အဖွဲ့အစည်း၏ စီမံခန့်ခွဲသူကို ဆက်သွယ်ပါ။"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"မလုပ်တော့"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"မလိုပါ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ယခုမလုပ်ပါ"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"သဘောတူသည်"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"လက်ဗွေထည့်သွင်းမှု ကျော်မလား။"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"လက်ဗွေသတ်မှတ်မှုသည် မိနစ်အနည်းငယ်သာ ကြာပါသည်။ ၎င်းကိုကျော်လိုက်လျှင် သင့်လက်ဗွေကို နောင်တွင် ဆက်တင်များ၌ ထည့်သွင်းနိုင်ပါသည်။"</string>
@@ -382,11 +383,11 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"အလုပ်လုပ်ပုံ"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ က သင်ဖြစ်ကြောင်း အတည်ပြုရန်အတွက် သင့်လက်ဗွေ၏ သီးခြားနမူနာတစ်ခုကို ပြုလုပ်သည်။ စနစ်ထည့်သွင်းနေစဉ် ဤလက်ဗွေနမူနာကို ပြုလုပ်ရန်အတွက် သင့်လက်ဗွေကို ရှုထောင့်အမျိုးမျိုးမှ ပုံများရိုက်ကူးရပါမည်။"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ က သင့်ကလေးကို သူဖြစ်ကြောင်း အတည်ပြုရန်အတွက် သူ့လက်ဗွေ၏ သီးခြားနမူနာတစ်ခုကို ပြုလုပ်သည်။ စနစ်ထည့်သွင်းနေစဉ် ဤလက်ဗွေနမူနာကို ပြုလုပ်ရန်အတွက် သူ့လက်ဗွေကို ရှုထောင့်အမျိုးမျိုးမှ ပုံများရိုက်ကူးရပါမည်။"</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"အကောင်းဆုံးရလဒ်များအတွက် ‘Google အတွက် ပြုလုပ်ထားသည်’ လက်မှတ်ရ ဖန်သားပြင် အကာအကွယ်ကို သုံးပါ။ အခြားဖန်သားပြင် အကာအကွယ်များသုံးပါက သင်၏လက်ဗွေ အလုပ် လုပ်ချင်မှ လုပ်ပါမည်။"</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"အကောင်းဆုံးရလဒ်များအတွက် Google အတွက် ပြုလုပ်ထားသည့် အသိအမှတ်ပြုလက်မှတ်ရ ဖန်သားပြင်အကာအကွယ် သုံးနိုင်သည်။ အခြား ဖန်သားပြင်အကာအကွယ်များ သုံးပါက သင့်လက်ဗွေ အလုပ်မလုပ်နိုင်ပါ။"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"အကောင်းဆုံးရလဒ်များအတွက် Google အတွက် ပြုလုပ်ထားသည့် လက်မှတ်ရ ဖန်သားပြင် အကာအကွယ်သုံးပါ။ အခြားဖန်သားပြင် အကာအကွယ်များသုံးပါက သင့်ကလေး၏လက်ဗွေ အလုပ် လုပ်ချင်မှ လုပ်ပါမည်။"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"နာရီဖြင့်ဖွင့်ခြင်း"</string>
- <string name="biometric_settings_intro_with_activeunlock" msgid="5032953826653108646">"‘မျက်နှာပြ လော့ခ်ဖွင့်ခြင်း’ နှင့် ‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ ကို စနစ်ထည့်သွင်းသောအခါ နှာခေါင်းစည်းတပ်ထားလျှင် (သို့) မှောင်သောနေရာသို့ ရောက်နေလျှင် သင်၏ဖုန်းသည် လက်ဗွေတောင်းပါမည်။\n\n‘နာရီဖြင့်ဖွင့်ခြင်း’ သည် သင့်ဖုန်းဖွင့်ရန် အဆင်ပြေသည့် နည်းလမ်းနောက်တစ်ခုဖြစ်သည်။ ဥပမာ သင့်လက်ချောင်းများ ရေစိုနေချိန် (သို့) မျက်နှာကို မမှတ်မိသောအချိန်။"</string>
+ <string name="biometric_settings_intro_with_activeunlock" msgid="5032953826653108646">"မျက်နှာပြ လော့ခ်ဖွင့်ခြင်းနှင့် လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်းကို ထည့်ထားလျှင် သင်နှာခေါင်းစည်း တပ်ထားချိန် (သို့) မှောင်သောနေရာသို့ ရောက်နေချိန်တွင် သင်၏ဖုန်းက သင့်လက်ဗွေကို တောင်းပါမည်။\n\n‘နာရီဖြင့်ဖွင့်ခြင်း’ သည် သင့်ဖုန်းဖွင့်ရန် အဆင်ပြေသည့် နည်းလမ်းနောက်တစ်ခုဖြစ်သည်။ ဥပမာ သင့်လက်ချောင်းများ ရေစိုနေချိန် (သို့) မျက်နှာကို မမှတ်မိသောအချိန်။"</string>
<string name="biometric_settings_intro_with_fingerprint" msgid="5881355884547769337">"‘နာရီဖြင့်ဖွင့်ခြင်း’ သည် သင့်ဖုန်းဖွင့်ရန် အဆင်ပြေသည့် နည်းလမ်းနောက်တစ်ခုဖြစ်သည်။ ဥပမာ သင့်လက်ဗွေကို မမှတ်မိသောအချိန်။"</string>
<string name="biometric_settings_intro_with_face" msgid="7671919122230588521">"‘နာရီဖြင့်ဖွင့်ခြင်း’ သည် သင့်ဖုန်းဖွင့်ရန် အဆင်ပြေသည့် နည်းလမ်းနောက်တစ်ခုဖြစ်သည်။ ဥပမာ သင့်မျက်နှာကို မမှတ်မိသောအချိန်။"</string>
<string name="biometric_settings_use_fingerprint_or_watch_for" msgid="1160830065613858095">"အောက်ပါကိုလုပ်ရန် လက်ဗွေ (သို့) နာရီ သုံးပါ-"</string>
@@ -441,7 +442,7 @@
<string name="security_settings_biometric_preference_summary_none_enrolled" msgid="213377753727694575">"စနစ်ထည့်သွင်းရန် လိုအပ်သည်"</string>
<string name="security_settings_biometric_preference_summary_both_fp_multiple" msgid="4821859306609955966">"မျက်နှာနှင့် လက်ဗွေများ ထည့်ပြီးပါပြီ"</string>
<string name="security_settings_biometric_preference_summary_both_fp_single" msgid="684409535278676426">"မျက်နှာနှင့် လက်ဗွေ ထည့်ပြီးပါပြီ"</string>
- <string name="biometric_settings_intro" msgid="4263069383955676756">"မျက်နှာပြ လော့ခ်ဖွင့်ခြင်းနှင့် လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်းကို ထည့်သွင်းသည့်အခါ သင်နှာခေါင်းစည်း တပ်ဆင်ထားလျှင် (သို့) မှောင်သောနေရာသို့ ရောက်နေလျှင် သင်၏ဖုန်းက သင့်လက်ဗွေကို တောင်းပါမည်"</string>
+ <string name="biometric_settings_intro" msgid="4263069383955676756">"မျက်နှာပြ လော့ခ်ဖွင့်ခြင်းနှင့် လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်းကို ထည့်ထားလျှင် သင်နှာခေါင်းစည်း တပ်ထားချိန် (သို့) မှောင်သောနေရာသို့ ရောက်နေချိန်တွင် သင်၏ဖုန်းက သင့်လက်ဗွေကို တောင်းပါမည်"</string>
<string name="biometric_settings_category_ways_to_unlock" msgid="3384767901580915266">"လော့ခ်ဖွင့်ရန် နည်းလမ်းများ"</string>
<string name="biometric_settings_category_use_face_fingerprint" msgid="4377659744376863913">"အောက်ပါကိုလုပ်ရန် မျက်နှာ (သို့) လက်ဗွေ သုံးခြင်း-"</string>
<string name="biometric_settings_use_biometric_unlock_phone" msgid="8180914579885804358">"သင့်ဖုန်းကို ဖွင့်ရန်"</string>
@@ -559,14 +560,14 @@
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"သီးသန့်နေရာအတွက် မျက်နှာနှင့် လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"သီးသန့်နေရာအတွက် ‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ စနစ်ထည့်သွင်းပါ"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"အက်ပ်များသို့ လက်မှတ်ထိုးဝင်ခြင်း (သို့) ဝယ်ယူမှု အတည်ပြုခြင်း ကဲ့သို့သောအခါမျိုးတွင် သင်ဖြစ်ကြောင်း အတည်ပြုရန် (သို့) သီးသန့်နေရာ လော့ခ်ဖွင့်ရန် သင့်လက်ဗွေကို သုံးပါ"</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"တစ်စုံတစ်ယောက်က သင့်လက်ချောင်းရှေ့တွင် သင့်ဖုန်းကို ကိုင်ထားခြင်းကဲ့သို့ သင်မရည်ရွယ်သည့်အချိန်တွင် သီးသန့်နေရာကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"တစ်စုံတစ်ယောက်က ဖုန်းကို သင့်လက်ချောင်းနှင့်လာထိပြီး သင်မရည်ရွယ်သည့်အချိန်တွင် သင့်ဖုန်းရှိ သီးသန့်နေရာကို လော့ခ်ဖွင့်သွားနိုင်သည်။"</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"သီးသန့်နေရာ လော့ခ်ဖွင့်ရန် (သို့) ဝယ်ယူမှုများ အတည်ပြုရန် သင့်လက်ဗွေကို သုံးပါ"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"သီးသန့်နေရာအတွက် ‘မျက်နှာပြ လော့ခ်ဖွင့်ခြင်း’ စနစ်ထည့်သွင်းပါ"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"အက်ပ်များသို့ လက်မှတ်ထိုးဝင်ချိန် (သို့) ဝယ်ယူမှုအတည်ပြုချိန်များတွင် သင်ဖြစ်ကြောင်းအတည်ပြုရန် (သို့) သင့်သီးသန့်နေရာကို လော့ခ်ဖွင့်ရန် သင့်မျက်နှာကို သုံးနိုင်သည်"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"ဖုန်းကို ကြည့်မိရုံဖြင့် မရည်ရွယ်ဘဲ သီးသန့်နေရာ လော့ခ်ပွင့်သွားနိုင်သည်။ အမြွှာကဲ့သို့ သင်နှင့်အလွန်တူသူကလည်း သင့်သီးသန့်နေရာကို လော့ခ်ဖွင့်နိုင်သည် (သို့) တစ်စုံတစ်ယောက်က ဖုန်းကို သင့်မျက်နှာရှေ့ကိုင်ထားလျှင် လော့ခ်ပွင့်နိုင်သည်။"</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"သင့်မျက်နှာသုံး၍ သီးသန့်နေရာ လော့ခ်ဖွင့်ခြင်းသည် ခိုင်မာသည့်ပုံဖော်ခြင်း၊ ပင်နံပါတ် (သို့) စကားဝှက်လောက် မလုံခြုံနိုင်ပါ"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"သီးသန့်နေရာ လော့ခ်ဖွင့်ရန် သင့်မျက်လုံးများကို ဖွင့်ထားရမည်။ အကောင်းဆုံးရလဒ်ရရှိရန် နေကာမျက်မှန်ချွတ်ပါ။"</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"သီးသန့်နေရာ လော့ခ်ဖွင့်ရန် သင့်မျက်နှာကို သုံးပါ။\n\nသတိပြုရန်-\nတစ်ကြိမ်လျှင် မျက်နှာတစ်ခုသာ ထည့်သွင်းနိုင်သည်။ မျက်နှာနောက်တစ်ခုထည့်ရန် လက်ရှိမျက်နှာကို ဖျက်ပါ။\n\nသင့်ဖုန်းကို မတော်တဆကြည့်မိရုံဖြင့် လော့ခ်ပွင့်သွားနိုင်သည်။\n\nတစ်စုံတစ်ယောက်က သင်၏မျက်နှာအနီးတွင် သင့်ဖုန်းကိုကိုင်ထားခြင်းဖြင့် သင့်သီးသန့်နေရာကို လော့ခ်ဖွင့်နိုင်သည်။\n\nအမြွှာကဲ့သို့ သင်နှင့်အလွန်တူသူက သင့်သီးသန့်နေရာကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"သီးသန့်နေရာ လော့ခ်ဖွင့်ရန် သင့်မျက်နှာကို သုံးပါ။\n\nသတိပြုရန်-\nတစ်ကြိမ်လျှင် မျက်နှာတစ်ခုသာ ထည့်သွင်းနိုင်သည်။ မျက်နှာနောက်တစ်ခုထည့်ရန် လက်ရှိမျက်နှာကို ဖျက်ပါ။\n\nသင့်ဖုန်းကို မတော်တဆကြည့်မိရုံဖြင့် လော့ခ်ပွင့်သွားနိုင်သည်။\n\nတစ်စုံတစ်ယောက်က သင်၏မျက်နှာရှေ့တွင် သင့်ဖုန်းကိုကိုင်ထားခြင်းဖြင့် သင့်သီးသန့်နေရာကို လော့ခ်ဖွင့်နိုင်သည်။\n\nအမြွှာကဲ့သို့ သင်နှင့်အလွန်တူသူက သင့်သီးသန့်နေရာကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"‘မျက်နှာပြ လော့ခ်ဖွင့်ခြင်း’ သုံးလျှင် အတည်ပြုရန် အမြဲလိုအပ်သည်"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"လော့ခ်ဖွင့်ရန် နည်းလမ်းများ"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"စက်ဖန်သားပြင်လော့ခ်နှင့် အတူတူပင်ဖြစ်သည်"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"စက်ပစ္စည်းလော့ခ်ချချိန်တိုင်း"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"စကရင်ပိတ်သွားပြီးနောက် ၅ မိနစ်"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"စက်ကို ပြန်စပြီးမှသာ"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"သင့်သီးသန့်နေရာအတွက် အခြားလော့ခ်ကိုသုံးပါက သီးသန့်နေရာတွင် အက်ပ်များဖွင့်ရန် သင်ဖြစ်ကြောင်း အတည်ပြုရမည်။"</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"သီးသန့်နေရာ ဖျောက်ခြင်း"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"သီးသန့်နေရာကို လော့ခ်ချထားသည့်အခါ ဖျောက်ခြင်း"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"သင့်စက်၌ သီးသန့်နေရာရှိကြောင်း အခြားသူများ မသိစေရန် ၎င်းကို သင့်အက်ပ်စာရင်းမှ ဖျောက်နိုင်သည်"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"စနစ်ထည့်သွင်းရန်"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"သီးသန့်နေရာ"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"သီးခြားနေရာတွင် သီးသန့်အက်ပ်များကို ဖျောက်နိုင် (သို့) လော့ခ်ချနိုင်သည်။ အပိုဆောင်းလုံခြုံရေးအတွက် သတ်မှတ်ထားသော Google Account ကို သုံးနိုင်သည်။"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"သင့်သီးသန့်နေရာ သတ်မှတ်ရန်"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"သင့်နေရာအတွက် Google Account ရွေးပါ"</b>\n"သီးသန့်အကောင့်သုံးခြင်းသည် စင့်ခ်လုပ်ထားသော ဖိုင်၊ ဓာတ်ပုံနှင့် အီးမေးလ်များကို သင့်နေရာ၏ ပြင်ပတွင် မမြင်ရရန် ကူညီသည်"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"အလုပ်လုပ်ပုံ"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"သင်၏နေရာအတွက် Google Account ပြုလုပ်ပါ"</b>\n"သီးသန့်အကောင့်တစ်ခုကို သုံးပါက စင့်ခ်လုပ်ထားသည့် ဖိုင်၊ ဓာတ်ပုံနှင့် အီးမေးလ်များကို သင့်နေရာအပြင်ဘက်တွင် မမြင်ရစေရန် ကူညီတားဆီးနိုင်သည်"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"လော့ခ် သတ်မှတ်ရန်"</b>\n"အခြားသူများက မဖွင့်စေရန် သင့်နေရာကို လော့ခ်ချပါ"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"အက်ပ်များ ထည့်သွင်းရန်"</b>\n"အက်ပ်များကို အလွယ်တကူ ထည့်သွင်းနိုင်ရန် သင့်သီးသန့်နေရာတွင် ၎င်း၏ကိုယ်ပိုင် Play Store ရှိသည်။"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"သင်၏သီးသန့်နေရာကို လော့ခ်ချထားချိန်တွင် ၎င်းရှိ အက်ပ်များကို ခွင့်ပြုချက်စီမံစနစ်၊ ကိုယ်ရေးအချက်အလက် လုံခြုံမှု ဒက်ရှ်ဘုတ်နှင့် အခြားဆက်တင်များတွင် မြင်ရမည်မဟုတ်ပါ။\n\nသင်၏သီးသန့်နေရာကို စက်ပစ္စည်းအသစ်တွင် ပြန်မယူနိုင်ပါ။ ၎င်းကို အခြားစက်ပစ္စည်းတွင် သုံးလိုပါက နောက်ထပ်သီးသန့်နေရာကို စနစ်ထည့်သွင်းရပါမည်။\n\nသင့်စက်ပစ္စည်းကို ကွန်ပျူတာနှင့် ချိတ်ဆက်သော (သို့) သင့်စက်ပစ္စည်းတွင် အန္တရာယ်ရှိသည့်အက်ပ်များ ထည့်သွင်းသော မည်သူမဆို သင်၏သီးသန့်နေရာကို ဝင်နိုင်ပါမည်။"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"အက်ပ်များ ထည့်သွင်းပါ"</b>\n"သင်၏နေရာတွင် သီးသန့်ထားလိုသော အက်ပ်များကို ထည့်သွင်းပါ"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"သတိပြုရန်"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"သင့်နေရာကို လော့ခ်ချပါက အက်ပ်များ ရပ်သွားမည်"</b>\n"သင့်နေရာကို လော့ခ်ချပါက သင်၏နေရာရှိ အက်ပ်များ ရပ်သွားပြီး ၎င်းတို့ထံမှ အကြောင်းကြားချက်များကို ရရှိတော့မည်မဟုတ်ပါ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"သီးသန့်နေရာအကြောင်း ပိုမိုလေ့လာရန်"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"အချိန်အနည်းငယ် ကြာပါမည်"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"သီးသန့်နေရာကို စနစ်ထည့်သွင်းနေသည်…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"သီးသန့်နေရာအတွက် လော့ခ်အသစ် သတ်မှတ်နိုင်သည် (သို့) သင့်စက်ဖွင့်ရန်သုံးသည့် တူညီသော လော့ခ်ကို အသုံးပြုနိုင်သည်"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ဖန်သားပြင်လော့ခ် သုံးရန်"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"လော့ခ်အသစ် ရွေးရန်"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ခဏစောင့်ပါ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ခဏစောင့်ပါ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"အားလုံး အသင့်ပါ။"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"သင်၏သီးသန့်နေရာကို ရှာရန် အက်ပ်စာရင်းသို့ သွားပြီး အောက်သို့လှိမ့်ပါ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"ပြီးပြီ"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"သင့်သီးသန့်နေရာအတွက် ပင်နံပါတ်သတ်မှတ်ပါ"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"သင့်သီးသန့်နေရာအတွက် စကားဝှက်သတ်မှတ်ပါ"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"သင့်သီးသန့်နေရာအတွက် ပုံဖော်ခြင်းသတ်မှတ်ပါ"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"သင့်ဒေတာကို သီးသန့်ထားနိုင်ရန် Google Account ပြုလုပ်ပါ"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"နောက်ဖန်သားပြင်တွင် သင့်သီးသန့်နေရာဖြင့် သုံးရန် အကောင့်သို့ လက်မှတ်ထိုးဝင်နိုင်ပါသည်"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"သီးသန့်နေရာအပြင်ဘက်တွင် ဒေတာပေါ်နေခြင်းကို ရပ်တန့်နိုင်ရန် သီးသန့်အကောင့် ပြုလုပ်ပါ။ ဒေတာနမူနာ-"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"စင့်ခ်လုပ်ထားသော ဓာတ်ပုံ၊ ဖိုင်၊ အီးမေးလ်၊ အဆက်အသွယ်၊ ပြက္ခဒိန်အစီအစဉ်နှင့် အခြားဒေတာများ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"အက်ပ်ဒေါင်းလုဒ်မှတ်တမ်းနှင့် အကြံပြုချက်များ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ကြည့်ရှုမှုမှတ်တမ်း၊ လိပ်စာနှင့် သိမ်းထားသောစကားဝှက်များ"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"သီးသန့်နေရာ အက်ပ်များရှိ သင့်လုပ်ဆောင်ချက်နှင့် သက်ဆိုင်သော အကြံပြုထားသည့် အကြောင်းအရာ"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"နားလည်ပြီ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"လော့ခ်ချရန်"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"ဖျောက်ထားရန်"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"လက်ဗွေ <xliff:g id="COUNT">%d</xliff:g> ခု အထိ ထည့်နိုင်သည်"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"စနစ် အသိအမှတ်ပြုလက်မှတ်"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"အသိအမှတ်ပြုလက်မှတ် ပင်ထိုးခြင်း"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ကွန်ရက် အသေးစိတ်များ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ဤကွန်ရက်သည် WEP ဟုခေါ်သည့် သိပ်မလုံခြုံသော လုံခြုံရေးပရိုတိုကောအဟောင်းကို အသုံးပြုသည်"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet ကွင်းဆက်နံပါတ်"</string>
<string name="server_name_title" msgid="7257095185810299066">"ဆာဗာအမည်"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"အမျိုးအစား"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"စက်ပစ္စည်း Wi‑Fi ၏ MAC လိပ်စာ"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ဘလူးတုသ်လိပ်စာ"</string>
<string name="status_serial_number" msgid="9060064164331466789">"စက်မှတ်ပုံတင်နံပါတ်"</string>
- <string name="status_up_time" msgid="1274778533719495438">"ဖွင့်ထားသောအချိန်"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ပွင့်နေချိန်"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"ထုတ်လုပ်သည့်ရက်စွဲ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ပထမဆုံးအကြိမ် အသုံးပြုခဲ့သည့်ရက်"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"သုံးစွဲမှု အကြိမ်ရေ"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"အောက်ခြေညာကို တို့ခြင်း"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"နောက်ထပ်ရွေးစရာအတွက် တာ့ချ်ပက်၏ အောက်ခြေညာထောင့်ကို တို့ပါ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"မြားရွေ့နှုန်း"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"မြား ဖြည့်စွက်ပုံစံ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"မြား ဖြည့်စွက်ပုံစံကို အမည်း ပြောင်းရန်"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"မြား ဖြည့်စွက်ပုံစံကို အစိမ်း ပြောင်းရန်"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"မြား ဖြည့်စွက်ပုံစံကို အဝါ ပြောင်းရန်"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"မြား ဖြည့်စွက်ပုံစံကို ပန်းရောင် ပြောင်းရန်"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"မြား ဖြည့်စွက်ပုံစံကို အပြာ ပြောင်းရန်"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"တာ့ချ်ပက်လက်ဟန်များကို လေ့လာရန်"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"တာ့ချ်ပက်၊ တာ့ချ်ပက်၊ မောက်စ်၊ ကာဆာ၊ လှိမ့်၊ ပွတ်ဆွဲ၊ ညာဘက်ခလုတ်ကို နှိပ်၊ နှိပ်၊ မြား"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ညာဘက်ခလုတ်ကို နှိပ်၊ တို့"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{မရှိ}=1{အချိန်ဇယား ၁ ခု သတ်မှတ်ထားသည်}other{အချိန်ဇယား # ခု သတ်မှတ်ထားသည်}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"မနှောင့်ယှက်ရ"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ဦးစားပေးမုဒ်"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"အရေးကြီးပုဂ္ဂိုလ်များနှင့် အက်ပ်များထံမှသာ အကြောင်းကြားချက် ရယူပါ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"အနှောင့်အယှက်များကို တားဆီးသည်"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\'မနှောင့်ယှက်ရ\' ဖွင့်ခြင်း"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"ပြက္ခဒိန်ထည့်ရန်"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"သင့်ပြက္ခဒိန်သုံးရန်"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"စီစဉ်ရန်"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"အချိန်ဇယား သတ်မှတ်ပါ"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"အချိန်ဇယားဆွဲရန်"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> နာရီ၊ <xliff:g id="MINUTES">%2$d</xliff:g> မိနစ်"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"အချိန်ဇယား"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"အချို့အချိန်၌ ဖုန်းအသံတိတ်ခြင်း"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"\'မနှောင့်ယှက်ရ\' စည်းမျဉ်းများထည့်ရန်"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"ဤအက်ပ်က အဆင့်မြှင့်ထားသော ဆက်တင်များကို မပံ့ပိုးပါ"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"နောက်ထပ်ဆက်တင်များ"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"ဤအက်ပ်အတွင်း ဆက်တင်များ ရရှိနိုင်သည်"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"အသံလျှော့ချခြင်း"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"အသံလျှော့ချမှု သုံးရန်"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"အချိန်တိုအတွင်း အကြောင်းကြားချက်များစွာ ရရှိပါက သင့်စက်သည် အသံနှောင့်ယှက်မှုနှင့် စခရင်ပေါ်ရှိ ပေါ့ပ်အပ်များကို လျှော့ချပါမည်။ ခေါ်ဆိုမှု၊ နှိုးစက်နှင့် ဦးစားပေးစကားဝိုင်းများအတွက် ပုံမှန်အတိုင်း သတိပေးမည်ဖြစ်ပြီး ရောက်လာသမျှ အကြောင်းကြားချက်အားလုံးကို ‘အကွက်’ ထဲတွင် အလွယ်တကူ ရှာတွေ့နိုင်သည်။"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"အလုပ်ပရိုဖိုင်များတွင် သုံးရန်"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"အလုပ်ပရိုဖိုင်အက်ပ်များတွင် သုံးရန်"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR အထောက်အကူပြု ဝန်ဆောင်မှုများ"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"ရွေးချယ်ထားသော အက်ပ်များ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"မရှိ"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"အားလုံး"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"အက်ပ်များကို အစားထိုးခွင့်ပြုပါ"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ကြားဖြတ်နိုင်သည့် အက်ပ်များ"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"နောက်ထပ်အက်ပ်များကို ရွေးပါ"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} အထိ တစ်နာရီအတွက်သာ နှိုးစက်များတွင် ပြောင်းမည်}other{{time} အထိ # နာရီအတွက်သာ နှိုးစက်များတွင် ပြောင်းမည်}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> အထိနိုးစက်သာလျှင် သို့ပြောင်းမည်"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"အမြဲတမ်း ကြားဖြတ်ရန်သို့ ပြောင်းမည်"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"အမည်ပြောင်းရန်"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"သင်္ကေတပြောင်းရန်"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"သင်္ကေတပြောင်းရန်"</string>
<string name="warning_button_text" msgid="1274234338874005639">"သတိပေးချက်"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"ပိတ်ရန်"</string>
<string name="device_feedback" msgid="5351614458411688608">"ဤကိရိယာအတွက် အကြံပြုချက် ပို့ရန်"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ဘယ်"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ညာ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"နားကြပ်အိတ်"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ဘက်ထရီ"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ဆက်တင်များ အကန့်"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ဒက်စ်တော့ပုံစံ မဖြစ်မနေ ပြောင်းရန်"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ဒုတိယ မျက်နှာပြင်ပြသမှုများတွင် ဒက်စ်တော့ပုံစံ မဖြစ်မနေ စမ်းသပ်ရန်"</string>
diff --git a/res/values-nb/arrays.xml b/res/values-nb/arrays.xml
index 65d7ecc..324fac9 100644
--- a/res/values-nb/arrays.xml
+++ b/res/values-nb/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 2d4c2f4..58879ce 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Koble fra enhet?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Koble til en ny enhet"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Slå på igjen i morgen automatisk"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Tilkoble høyre øre"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Tilkoble venstre øre"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Tilkoble det andre øret"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Tilkoble venstre øre"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Innstillinger for høreapparater"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Snarvei, kompatibilitet med høreapparater"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Forhåndsinnstillinger"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Forhåndsinnstilling"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Kunne ikke oppdatere forhåndsinnstillingen"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Utenhet for lyd"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Om lyd"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Avbryt"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nei takk"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ikke nå"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Godta"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mer"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Lås opp med ansiktet ditt"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Vær obs på dette"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Bruk fingeravtrykk til å låse opp telefonen eller godta kjøp.\n\nMerk: Du kan ikke bruke fingeravtrykk til å låse opp denne enheten. Ta kontakt med administratoren for organisasjonen din for mer informasjon."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Avbryt"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nei takk"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ikke nå"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Godta"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Hoppe over fingeravtrykk?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Det tar bare et minutt eller to å konfigurere fingeravtrykk. Hvis du hopper over dette, kan du legge til fingeravtrykket ditt senere i innstillingene."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Hver gang enheten låses"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutter etter automatisk skjermlås"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Bare etter omstart av enheten"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Hvis du bruker en annen lås for det private området ditt, kan det hende du må bekrefte at det er deg, for å åpne apper i det private området."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Skjul privat område"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Skjul privat område når det er låst"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"For å unngå at andre ser at du har et privat område på enheten, kan du skjule det i applisten"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Konfigurer"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privat område"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Skjul eller lås private apper på et separat område. Bruk en egen Google-konto for å øke sikkerheten."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Konfigurer det private området ditt"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Velg en Google-konto for området ditt"</b>\n"Med en separat konto kan du bidra til å hindre at synkroniserte filer, bilder og e-poster vises utenfor området."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Slik fungerer det"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Opprett en Google-konto for området ditt"</b>\n"Hvis du bruker en separat konto, bidrar det til å hindre at synkroniserte filer, bilder og e-poster vises utenfor området"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Angi en lås"</b>\n"Lås området ditt for å sørge for at andre ikke kan åpne det."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installer apper"</b>\n"Det private området ditt har sin egen Play-butikk, slik at du kan installere apper enkelt."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apper i det private området vises ikke i tillatelseskontrollen, personvernoversikten eller i andre innstillinger når det private området er låst.\n\nDet private området kan ikke gjenopprettes til andre enheter. Hvis du vil bruke det private området på en annen enhet, må du konfigurere et nytt privat område.\n\nHvis noen kobler enheten din til en datamaskin eller installerer skadelige apper på enheten, kan de kanskje åpne det private området ditt."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Installer apper"</b>\n"Installer apper du vil holde private, i området ditt"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Husk"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apper stopper når du låser området ditt"</b>\n"Når du låser området, blir apper i området stoppet, og du mottar ikke varsler fra dem."</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Finn ut mer om det private området"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Dette tar en liten stund"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Konfigurerer det private området …"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Du kan angi en ny lås for det private området eller bruke den samme låsen som du bruker til å låse opp enheten"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Bruk skjermlåsen"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Velg en ny lås"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Vent litt …"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Vent litt …"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Alt er klart!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"For å finne det private området, gå til applisten og rull nedover"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Ferdig"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Angi en PIN-kode for det private området"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Angi et passord for det private området"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Angi et mønster for det private området"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Opprett en Google-konto for å bidra til å holde dataene dine private"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"På neste skjerm kan du logge på en konto du vil bruke med det private området"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Opprett en separat konto for å bidra til å hindre at data vises utenfor det private området, for eksempel:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synkroniserte bilder, filer, e-poster, kontakter, kalenderaktiviteter og andre data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Anbefalinger og nedlastingslogg for apper"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Nettleserlogg, bokmerker og lagrede passord"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Foreslått innhold relatert til aktiviteten din i apper i det private området"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Greit"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lås"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Skjul"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Du kan legge til opptil <xliff:g id="COUNT">%d</xliff:g> fingeravtrykk"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Systemsertifikat"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Festing av sertifikat"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Nettverksdetaljer"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Dette nettverket bruker en eldre sikkerhetsprotokoll som heter WEP, og som er mindre sikker"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Nettverksmaske"</string>
<string name="server_name_title" msgid="7257095185810299066">"Tjenernavn"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Enhetens MAC-adresse for wifi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-adresse"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serienummer"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Oppetid"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Driftstid"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Produksjonsdato"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Dato for første bruk"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Syklusantall"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Trykk nederst til høyre"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Trykk nederst til høyre på styreflaten for alternativer"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Pekerhastighet"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Markørfyllstil"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Endre markørfyllstilen til svart"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Endre markørfyllstilen til grønn"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Endre markørfyllstilen til gul"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Endre markørfyllstilen til rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Endre markørfyllstilen til blå"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Lær styreflatebevegelser"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"styreflate, styre flate, mus, markør, rull, sveip, høyreklikk, klikk, peker"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"høyreklikk, trykk"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ingen}=1{1 tidsplan er angitt}other{# tidsplaner er angitt}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ikke forstyrr"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioritetsmoduser"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Bli bare varslet av viktige personer og apper"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Begrens forstyrrelser"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Slå på Ikke forstyrr"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Legg til en kalender"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Bruk kalenderen"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Tidsplan"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Angi en tidsplan"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Tidsplan"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> t, <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Tidsplan"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Demp telefonen til bestemte tider"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Angi Ikke forstyrr-regler"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Denne appen støtter ikke utvidete innstillinger"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Flere innstillinger"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Flere innstillinger er tilgjengelige i denne appen"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Nedkjøling"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Bruk nedkjøling"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Når du får mange varsler på kort tid, minimerer enheten lydforstyrrelser og forgrunnsvinduer på skjermen. Anrop, alarmer og prioriterte samtaler varsles som normalt, og det er enkelt å finne alle leverte varsler i panelet."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Bruk for jobbprofiler"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Bruk for apper i jobbprofilen"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Hjelpetjenester for VR"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"De valgte appene"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ingen"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Alle"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Tillat at apper overstyrer"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apper som kan forstyrre"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Velg flere apper"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Endre til bare alarmer i én time frem til {time}}other{Endre til bare alarmer i # timer frem til {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Endre til Bare alarmer frem til <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Bytt til Alltid forstyrr"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Gi nytt navn"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Endre ikonet"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Endre ikonet"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Varsel"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Lukk"</string>
<string name="device_feedback" msgid="5351614458411688608">"Send tilbakemelding om enheten"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Venstre"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Høyre"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Etui"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batteri"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Innstillinger-panel"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Tvungen skrivebordsmodus"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Tvungen eksperimentell skrivebordsmodus på sekundære skjermer"</string>
diff --git a/res/values-ne/arrays.xml b/res/values-ne/arrays.xml
index 49344ca..1f36872 100644
--- a/res/values-ne/arrays.xml
+++ b/res/values-ne/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index d6b4e22..3b77ab1 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"यन्त्र विच्छेद गर्ने हो?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"नयाँ डिभाइस कनेक्ट गर्नुहोस्"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ब्लुटुथ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"भोलि फेरि स्वतः अन गर्नुहोस्"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"दायाँ भाग कनेक्ट गर्नुहोस्"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"बायाँ भाग कनेक्ट गर्नुहोस्"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"अर्को भाग कनेक्ट गर्नुहोस्"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"बायाँ भाग कनेक्ट गर्नुहोस्"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"श्रवण यन्त्रसम्बन्धी सेटिङ"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"सर्टकट, श्रवण सहयोगसम्बन्धी कम्प्याटिबिलिटी"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"प्रिसेटहरू"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"पूर्व निर्धारित"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"प्रिसेट अपडेट गर्न सकिएन"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"अडियो आउटपुट"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"अडियो आउटपुटका बारेमा"</string>
@@ -274,7 +275,7 @@
<string name="lock_after_timeout_summary" msgid="4869265514658147304">"<xliff:g id="TIMEOUT_STRING">%1$s</xliff:g> टाइमआउट पछि"</string>
<string name="lock_immediately_summary_with_exception" msgid="40819611828339044">"<xliff:g id="TRUST_AGENT_NAME">%1$s</xliff:g> ले अनलक अवस्थामा राखेको बेलाबाहेक टाइमआउटपछि तुरुन्तै"</string>
<string name="lock_after_timeout_summary_with_exception" msgid="3441806647509073124">"<xliff:g id="TRUST_AGENT_NAME">%2$s</xliff:g> ले अनलक अवस्थामा राखेको बेलाबाहेक टाइमआउटपछि <xliff:g id="TIMEOUT_STRING">%1$s</xliff:g>"</string>
- <string name="owner_info_settings_title" msgid="3555626140700093017">"लक स्क्रिनमा टेक्स्ट थपियोस्"</string>
+ <string name="owner_info_settings_title" msgid="3555626140700093017">"लक स्क्रिनमा टेक्स्ट हाल्नुहोस्"</string>
<string name="owner_info_settings_summary" msgid="347238313388083297">"कुनै पनि होइन"</string>
<string name="owner_info_settings_edit_text_hint" msgid="841926875876050274">"उदाहरण, Joe को Android।"</string>
<string name="location_settings_title" msgid="8375074508036087178">"लोकेसन"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"रद्द गर्नुहोस्"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"पर्दैन, धन्यवाद"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"अहिले होइन"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"म सहमत छु"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"थप"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"आफ्नो अनुहारमार्फत अनलक गर्नु…"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ख्याल गर्नुहोस्"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"तपाईंको फोन अनलक वा खरिदहरूको अनुमोदन गर्न आफ्ना फिंगरप्रिन्टहरूको प्रयोग गर्नुहोस्।\n\nटिपोट: तपाईं यो डिभाइस अनलक गर्न आफ्नो फिंगरप्रिन्टको प्रयोग गर्न सक्नुहुन्न। थप जानकारीका लागि आफ्नो संगठनको प्रशासकलाई सम्पर्क गर्नुहोस्।"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"रद्द गर्नुहोस्"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"पर्दैन, धन्यवाद"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"अहिले होइन"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"म सहमत छु"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"फिंगरप्रिन्ट सेटअप स्किप गर्ने हो?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"फिंगरप्रिन्ट सेटअप गर्न केवल एक वा दुई मिनेट लाग्छ। स्किप गर्नुभएको खण्डमा, तपाईं सेटिङहरूमा गएर पछि आफ्नो फिंगरप्रिन्ट हाल्न सक्नुहुन्छ।"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"डिभाइस लक हुँदैपिच्छे"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"स्क्रिन टाइम आउट भएको ५ मिनेटपछि"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"डिभाइस रिस्टार्ट भएपछि मात्र"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"निजी स्पेस लुकाउनुहोस्"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"निजी स्पेस लक गरिएको बेलामा उक्त स्पेस लुकाउनुहोस्"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"अन्य मानिसहरूलाई तपाईंको डिभाइसमा निजी स्पेस छ भन्ने कुरा थाहा नदिन तपाईं आफ्नो एपको सूचीबाट उक्त स्पेस लुकाउन सक्नुहुन्छ"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"सेटअप गर्नुहोस्"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"निजी स्पेस"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"निजी एपहरू छुट्टै स्पेसमा लुकाउनुहोस् वा लक गर्नुहोस्। थप सुरक्षाका लागि विशेष Google खाता प्रयोग गर्नुहोस्।"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"आफ्नो निजी स्पेस सेटअप गर्नुहोस्"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"आफ्नो स्पेसका लागि Google खाता छनौट गर्नुहोस्"</b>\n"तपाईंले विशेष खाता प्रयोग गर्नुभयो भने तपाईं आफ्नो स्पेस बाहिर देखिने सिंक गरिएको फाइल, फोटो र इमेलहरू रोक्न सक्नुहुन्छ।"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"यसले काम गर्ने तरिका"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"आफ्नो स्पेसमा प्रयोग गर्नका निम्ति Google खाता बनाउनुहोस्"</b>\n"तपाईं स्पेसमा मात्र प्रयोग गर्ने प्रयोजनका लागि एउटा छुट्टै खाता बनाउनुभयो भने सिंक गरिएका फाइल, फोटो र इमेलहरू तपाईंको स्पेसभन्दा बाहिर देखिँदैन"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"लक सेटअप गर्नुहोस्"</b>\n"अरू मान्छेले तपाईंको स्पेस खोल्न नसकून् भन्नाका लागि उक्त स्पेस लक गर्नुहोस्"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"एपहरू इन्स्टल गर्नुहोस्"</b>\n"तपाईंले सजिलैसँग एप इन्स्टल गर्न सक्नुहोस् भन्नाका लागि तपाईंको निजी स्पेसमै Play स्टोर हुन्छ।"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"तपाईंको निजी स्पेस लक गरिएका बेला सो स्पेसमा भएका एपहरू अनुमति व्यवस्थापन, गोपनीयतासम्बन्धी ड्यासबोर्ड र अन्य सेटिङमा देखिने छैनन्।\n\nतपाईंको निजी स्पेस नयाँ डिभाइसमा रिस्टोर गर्न सकिँदैन। तपाईं अर्को डिभाइसमा निजी स्पेस प्रयोग गर्न चाहनुहुन्छ भने तपाईंले सो डिभाइसमा निजी स्पेस सेटअप गर्नु पर्ने हुन्छ।\n\nतपाईंको डिभाइस कम्प्युटरमा कनेक्ट गर्ने वा तपाईंको डिभाइसमा हानिकारक एपहरू इन्स्टल गर्ने सबै जना तपाईंको निजी स्पेस एक्सेस गर्न सक्ने छन्।"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"एपहरू इन्स्टल गर्नुहोस्"</b>\n"तपाईंले आफ्नो स्पेसमा गोप्य राख्न चाहेका एपहरू इन्स्टल गर्नुहोस्"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ख्याल गर्नुहोस्"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"तपाईंले आफ्नो स्पेस लक गर्दा एपहरू बन्द हुन्छन्"</b>\n"तपाईंले आफ्नो स्पेस लक गर्दा तपाईंको स्पेसमा भएका एपहरू बन्द हुन्छन् र तपाईं ती एपबाट नोटिफिकेसन प्राप्त गर्नु हुने छैन"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"निजी स्पेसका बारेमा थप जान्नुहोस्"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"लोड हुन केही बेर लाग्ने छ"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"निजी स्पेस सेटअप गरिँदै छ…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"तपाईं निजी स्पेसका लागि मात्र नयाँ लक सेट गर्न वा तपाईंले आफ्नो डिभाइस अनलक गर्न प्रयोग गर्ने लक नै प्रयोग गर्न सक्नुहुन्छ"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"स्क्रिन लक प्रयोग गर्नुहोस्"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"नयाँ लक छनौट गर्नुहोस्"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"केही बेर पर्खनुहोस्…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"केही बेर पर्खनुहोस्…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"सेटअप भयो!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"आफ्नो निजी स्पेस फेला पार्न आफ्नो एपको सूचीमा जानुहोस् अनि तलतिर स्क्रोल गर्नुहोस्"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"पूरा भयो"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"आफ्नो निजी स्पेसका लागि PIN सेट गर्नुहोस्"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"आफ्नो निजी स्पेसका लागि पासवर्ड सेट गर्नुहोस्"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"आफ्नो निजी स्पेसका लागि प्याटर्न सेट गर्नुहोस्"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"आफ्नो डेटा गोप्य राख्न Google खाता बनाउनुहोस्"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"तपाईं अर्को स्क्रिनमा आफूले निजी स्पेसमा प्रयोग गर्न चाहेको खातामा साइन इन गर्न सक्नुहुन्छ"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"निजी स्पेसबाहिर डेटा देखिन नदिन एउटा छुट्टै खाता बनाउनुहोस्, जस्तै:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"सिंक गरिएका फोटो, फाइल, इमेल, कन्ट्याक्ट, पात्रोमा सेट गरिएका कार्यक्रम र अन्य डेटा"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"विगतमा डाउनलोड गरिएका एप र सिफारिसहरू"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ब्राउजिङ हिस्ट्री, बुकमार्क र सेभ गरिएका पासवर्डहरू"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"तपाईंले निजी स्पेसमा भएका एपमा गरेको क्रियाकलापसम्बन्धी सिफारिस गरिएको सामग्री"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"बुझेँ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"लक गर्नुहोस्"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"लुकाउनुहोस्"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"तपाईं बढीमा <xliff:g id="COUNT">%d</xliff:g> वटा फिंगरप्रिन्टहरू हाल्न सक्नुहुन्छ"</string>
@@ -796,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{अनिवार्य रूपमा अक्षरबाहेकका कम्तीमा पनि १ वर्ण समावेश हुनु पर्छ}other{अनिवार्य रूपमा अक्षरबाहेकका कम्तीमा पनि # वर्ण समावेश हुनु पर्छ}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{अनिवार्य रूपमा अङ्कबाहेकका कम्तीमा पनि १ वर्ण समावेश हुनु पर्छ}other{अनिवार्य रूपमा अङ्कबाहेकका कम्तीमा पनि # वटा वर्ण समावेश हुनु पर्छ}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"डिभाइसको प्रशासकले पछिल्लो पासवर्ड प्रयोग गर्ने अनुमति दिँदैन"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"बढ्दो, घट्दो वा दोहोरिएका अङ्कहरूको अनुक्रमलाई निषेध गरिएको छ"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"बढ्दो, घट्दो क्रममा वा दोहोरिएका अङ्क हाल्न मिल्दैन"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"पुष्टि गर्नुहोस्"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"मेटाउनुहोस्"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"स्क्रिन लक पहिले नै परिवर्तन गरियो। नयाँ स्क्रिन लकमार्फत फेरि प्रयास गर्नुहोस्।"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"सिस्टमको प्रमाणपत्र"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"प्रमाणपत्र पिन गरिँदै छ"</string>
<string name="wifi_details_title" msgid="222735438574597493">"नेटवर्कको विवरण"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"यो नेटवर्कले WEP नामक अझ कम सुरक्षित र पुरानो सुरक्षा प्रोटोकल प्रयोग गर्छ"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"सबनेट मास्क"</string>
<string name="server_name_title" msgid="7257095185810299066">"सर्भरको नाम"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"प्रकार"</string>
@@ -1215,7 +1212,7 @@
<string name="adaptive_sleep_privacy" msgid="7664570136417980556">"कुनै व्यक्तिले स्क्रिनमा हेरिरहेको छ या छैन भन्ने कुरा पत्ता लगाउन \"स्क्रिनमा हेरिरहँदा\" नामक सेटिङले अगाडिको क्यामेरा प्रयोग गर्दछ। यसले यो डिभाइसभित्रै मात्र काम गर्छ र कहिल्यै पनि फोटो भण्डारण गर्ने वा Google मा पठाउने काम गर्दैन।"</string>
<string name="adaptive_sleep_contextual_slice_title" msgid="7467588613212629758">"स्क्रिनमा हेरिरहँदा स्क्रिन सक्रिय राख्ने सुविधा अन गर्नुहोस्"</string>
<string name="adaptive_sleep_contextual_slice_summary" msgid="2993867044745446094">"स्क्रिनमा हेरिरहेका बेला स्क्रिन सक्रिय राख्नुहोस्"</string>
- <string name="power_consumption_footer_summary" msgid="4901490700555257237">"लामो समय पछि स्क्रिन टाइमआउट भयो भने बढी ब्याट्री खपत हुने छ।"</string>
+ <string name="power_consumption_footer_summary" msgid="4901490700555257237">"लामो समयपछि स्क्रिन टाइमआउट भयो भने बढी ब्याट्री खपत हुन्छ।"</string>
<string name="auto_rotate_camera_lock_title" msgid="5369003176695105872">"क्यामेरा लक गरिएको छ"</string>
<string name="auto_rotate_camera_lock_summary" msgid="5699491516271544672">"अनुहार पत्ता लगाउने सुविधा प्रयोग गर्न क्यामेरा अनिवार्य रूपमा अनलक गर्नु पर्छ"</string>
<string name="adaptive_sleep_camera_lock_summary" msgid="8417541183603618098">"स्क्रिनमा हेरिरहेको पहिचान गर्ने सुविधा प्रयोग गर्न क्यामेरा अनलक गरिएको हुनु पर्छ"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"डिभाइसको Wi‑Fi म्याक एड्रेस"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ब्लुटुथ एड्रेस"</string>
<string name="status_serial_number" msgid="9060064164331466789">"क्रम संख्या"</string>
- <string name="status_up_time" msgid="1274778533719495438">"सक्रिय समय"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"अपटाइम"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"बनेको मिति"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"पहिलो पटक प्रयोग गरिएको मिति"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"साइकल काउन्ट"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"पुछारको दायाँतिर ट्याप"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"थप विकल्पहरू हेर्न टचप्याडको पुछारको दायाँ कुनामा ट्याप गर्नुहोस्"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"पोइन्टरको गति"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"पोइन्टर फिलको शैली"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"पोइन्टर फिलको शैली बदलेर कालो बनाउनुहोस्"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"पोइन्टर फिलको शैली बदलेर हरियो बनाउनुहोस्"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"पोइन्टर फिलको शैली बदलेर पहेँलो बनाउनुहोस्"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"पोइन्टर फिलको शैली बदलेर गुलाबी बनाउनुहोस्"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"पोइन्टर फिलको शैली बदलेर निलो बनाउनुहोस्"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"टचप्याड इसाराहरूका बारेमा जानकारी"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ट्र्याकप्याड, ट्र्याक प्याड, माउस, कर्सर, स्क्रोल, स्वाइप, राइट क्लिक, क्लिक, पोइन्टर"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"राइट क्लिक, ट्याप"</string>
@@ -2845,7 +2848,7 @@
<string name="data_usage_label_foreground" msgid="8782117644558473624">"फोरग्राउन्ड"</string>
<string name="data_usage_label_background" msgid="8862781660427421859">"ब्याकग्राउन्ड"</string>
<string name="data_usage_app_restricted" msgid="312065316274378518">"प्रतिबन्धित"</string>
- <string name="data_usage_disable_mobile" msgid="6183809500102606801">"मोबाइल डेटा निष्क्रिय पार्ने हो?"</string>
+ <string name="data_usage_disable_mobile" msgid="6183809500102606801">"मोबाइल डेटा अफ गर्ने हो?"</string>
<string name="data_usage_disable_mobile_limit" msgid="1370147078938479538">"मोबाइल डेटा सीमा निर्धारण गर्नुहोस्"</string>
<string name="data_usage_disable_4g_limit" msgid="3084868504051520840">"4G डेटा सीमा निर्धारण गर्नुहोस्"</string>
<string name="data_usage_disable_3g_limit" msgid="8867555130268898044">"2G-3G डेटा सीमा सेट गर्नुहोस्"</string>
@@ -2990,7 +2993,7 @@
<string name="user_cannot_add_accounts_message" msgid="2351326078338805337">"निषेध लगाइएको प्रोफाइलले खाताहरू थप गर्न सक्दैन"</string>
<string name="user_remove_user_menu" msgid="2183714948094429367">"यस उपकरणबाट <xliff:g id="USER_NAME">%1$s</xliff:g> हटाउनुहोस्"</string>
<string name="user_lockscreen_settings" msgid="4596612658981942092">"लक स्क्रिन सेटिङहरू"</string>
- <string name="user_add_on_lockscreen_menu" msgid="2539059062034644966">"लक स्क्रिनबाट प्रयोगकर्ताहरू थपियोस्"</string>
+ <string name="user_add_on_lockscreen_menu" msgid="2539059062034644966">"लक स्क्रिनबाट प्रयोगकर्ताहरू हाल्नुहोस्"</string>
<string name="switch_to_dock_user_when_docked" msgid="2324395443311905635">"डक गरिएका बेला एड्मिन खाता प्रयोग गर्नुहोस्"</string>
<string name="user_confirm_remove_self_title" msgid="926265330805361832">"आफैंलाई हटाउने हो?"</string>
<string name="user_confirm_remove_title" msgid="3626559103278006002">"यो प्रयोगकर्ता हटाउने हो?"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{कुनै पनि समयतालिका बनाइएको छैन}=1{एउटा समयतालिका बनाइएको छ}other{# वटा समयतालिका बनाइएको छ}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"बाधा नपुऱ्याउनुहोस्"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"महत्त्वपूर्ण मोडहरू"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"महत्त्वपूर्ण मान्छे र एपका सूचना मात्र प्राप्त गर्नुहोस्"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"अवरोधहरू सीमित पार्नुहोस्"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"बाधा नपुऱ्याउनुहोस् नामक मोडलाई अन गर्नुहोस्"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"सम्पादन गर्नुहोस्"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"समयतालिकाहरू"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"समयतालिका"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"स्वतः अन गर्नुहोस्"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"कुनै पात्रो हाल्नुहोस्"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"आफ्नो पात्रो प्रयोग गर्नुहोस्"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"समयतालिका"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"समयतालिका"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"तोकिएको समयमा फोनलाई मौन अवस्थामा राख्नुहोस्"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"यो एपमा परिष्कृत सेटिङ प्रयोग गर्न मिल्दैन"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"थप सेटिङ"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"यस एपभित्र थप सेटिङ उपलब्ध छन्"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"कुलडाउन"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"कुलडाउन प्रयोग गर्नुहोस्"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"तपाईंले छोटो अवधिमा धेरै नोटिफिकेसन प्राप्त गर्दा तपाईंको डिभाइसले ती नोटिफिकेसनको आवाज कम गर्छ र स्क्रिनमा कम पप-अपहरू देखाउँछ। कल, अलार्म र महत्त्वपूर्ण वार्तालापको अलर्ट भने सामान्य रूपमा प्राप्त हुने छ र प्राप्त भएका सबै नोटिफिकेसनहरू सेडमा सजिलैसँग भेट्टाउन सकिने छ।"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"कार्य प्रोफाइलहरूमा लागू गर्नुहोस्"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"कार्य प्रोफाइलका एपहरूमा लागू गर्नुहोस्"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR का सहायक सेवाहरू"</string>
@@ -3670,7 +3680,7 @@
<string name="notification_badge_title" msgid="6854537463548411313">"नयाँ सूचना आएको जनाउने थोप्लो देखाउन दिइयोस्"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"सूचना जनाउने थोप्लो देखाउनुहोस्"</string>
<string name="app_notification_override_dnd_title" msgid="3769539356442226691">"Do Not Disturb ओभरराइड गर्नुहोस्"</string>
- <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"बाधा नपुर्याउनुहोस् नामक सुविधा अन भएका बेला पनि यी सूचना आइरहन दिइयोस्"</string>
+ <string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"बाधा नपुर्याउनुहोस् नामक सुविधा अन भएका बेला पनि यी सूचना आइरहन दिनुहोस्"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"लक स्क्रिन"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"भयो"</string>
<string name="notification_show_lights_title" msgid="5564315979007438583">"झिम झिम बत्ती बल्ने"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"चयन गरिएका एपहरू"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"कुनै पनि होइन"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"सबै"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"एपहरूलाई ओभरराइड गर्ने अनुमति दिनुहोस्"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"अफ गर्न सक्ने एपहरू"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"थप एपहरू चयन गर्नुहोस्"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} सम्म एक घण्टाका लागि मोड बदलेर \"अलार्महरू मात्र\" बनाउनुहोस्}other{{time} सम्म # घण्टाका लागि मोड बदलेर \"अलार्महरू मात्र\" बनाउनुहोस्}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> सम्मको लागि मात्र अलार्म परिवर्तन गर्नुहोस्"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"सधैं अवरोध गर्ने गरी परिवर्तन गर्नुहोस्"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"चेतावनी"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"बन्द गर्नुहोस्"</string>
<string name="device_feedback" msgid="5351614458411688608">"डिभाइसका बारेमा प्रतिक्रिया पठाउनुहोस्"</string>
@@ -4055,7 +4073,7 @@
<string name="storage_summary" msgid="5903562203143572768">"<xliff:g id="PERCENTAGE">%1$s</xliff:g> प्रयोग भएको - खाली <xliff:g id="FREE_SPACE">%2$s</xliff:g>"</string>
<string name="display_dashboard_summary" msgid="1599453894989339454">"अँध्यारो थिम, फन्टको आकार, चमक"</string>
<string name="memory_summary" msgid="8221954450951651735">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> मध्ये औसत <xliff:g id="USED_MEMORY">%1$s</xliff:g> प्रयोग भएको छ"</string>
- <string name="users_summary" msgid="8473589474976307510">"<xliff:g id="USER_NAME">%1$s</xliff:g> रूपमा साइन इन गरिएको छ"</string>
+ <string name="users_summary" msgid="8473589474976307510">"<xliff:g id="USER_NAME">%1$s</xliff:g> का रूपमा साइन इन गरिएको छ"</string>
<string name="android_version_summary" msgid="7818952662015042768">"अपडेट गरी Android <xliff:g id="VERSION">%1$s</xliff:g> बनाइएको छ"</string>
<string name="android_version_pending_update_summary" msgid="5404532347171027730">"अद्यावधिक उपलब्ध छ"</string>
<string name="disabled_by_policy_title" msgid="6852347040813204503">"कार्यसम्बन्धी नीतिका आधारमा ब्लक गरिएको छ"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"बायाँ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"दायाँ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"खोल"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ब्याट्री"</string>
<string name="settings_panel_title" msgid="346363079938069215">"सेटिङहरू नामक प्यानल"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"बलपूर्वक डेस्कटप मोड लागू गर्नुहोस्"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"सहायक डिस्प्लेमा प्रयोगात्मक डेस्कटप मोड बलपूर्वक लागू गर्नुहोस्"</string>
diff --git a/res/values-nl/arrays.xml b/res/values-nl/arrays.xml
index dd2b800..66d5384 100644
--- a/res/values-nl/arrays.xml
+++ b/res/values-nl/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 421ab4d..b2f2248 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Apparaat loskoppelen?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Nieuw apparaat koppelen"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Morgen weer automatisch aanzetten"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Rechteroor koppelen"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Linkeroor koppelen"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Je andere oor koppelen"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Linkeroor koppelen"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Instellingen voor hoortoestel"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Sneltoets, geschiktheid voor hoortoestellen"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Voorinstellingen"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Voorinstelling"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Kan voorinstelling niet updaten"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio-uitvoer"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Over audio-uitvoer"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Annuleren"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nee, bedankt"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Niet nu"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ik ga akkoord"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Meer"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Ontgrendelen met je gezicht"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Goed om te weten"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Gebruik je vingerafdruk om je telefoon te ontgrendelen of aankopen goed te keuren.\n\nOpmerking: Je kunt je vingerafdruk niet gebruiken om dit apparaat te ontgrendelen. Neem contact op met de beheerder van je organisatie voor meer informatie."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Annuleren"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nee, bedankt"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Niet nu"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ik ga akkoord"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Vingerafdruk overslaan?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Het instellen van een vingerafdruk kost maar een minuut of 2. Als je dit nu overslaat, kun je je vingerafdruk later toevoegen via Instellingen."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Hoe het werkt"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Ontgrendelen met vingerafdruk maakt een uniek model van je vingerafdruk om te verifiëren dat jij het bent. Tijdens het instelproces maak je afbeeldingen van je vingerafdruk in verschillende posities om een vingerafdrukmodel te maken."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Ontgrendelen met vingerafdruk maakt een uniek model van de vingerafdruk van je kind om je kind te herkennen tijdens verificatie. Tijdens het instelproces maakt je kind foto\'s van de vingerafdruk in verschillende posities om een vingerafdrukmodel te maken."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Voor de beste resultaten gebruik je een gecertificeerde Made for Google-screenprotector. Bij andere screenprotectors werkt je vingerafdruk misschien niet."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Voor de beste resultaten gebruik je een Made for Google-gecertificeerde screenprotector. Bij andere screenprotectors werkt je vingerafdruk misschien niet."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Voor de beste resultaten gebruik je een gecertificeerde Made for Google-screenprotector. Bij andere screenprotectors werkt de vingerafdruk van je kind misschien niet."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Ontgrendelen via smartwatch"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Elke keer dat apparaat wordt vergrendeld"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minuten na time-out voor scherm"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Alleen nadat apparaat opnieuw opstart"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Als je een andere vergrendeling gebruikt voor je privégedeelte, moet je misschien laten verifiëren dat jij het bent om apps in je privégedeelte te openen."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Privégedeelte verbergen"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Privégedeelte verbergen als het is vergrendeld"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Als je niet wilt dat andere mensen weten dat je een privégedeelte op je apparaat hebt, kun je dit verbergen in de lijst met apps"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Instellen"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privégedeelte"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Verberg of vergrendel privé-apps in een afzonderlijk gedeelte. Gebruik voor extra beveiliging een apart Google-account."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Privégedeelte instellen"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Kies een Google-account voor je gedeelte"</b>\n"Als je een apart account gebruikt, kun je voorkomen dat bestanden, foto\'s en e-mails buiten je privégedeelte worden getoond."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Hoe het werkt"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Een Google account maken voor je gedeelte"</b>\n"Als je een speciaal account gebruikt, kan dit voorkomen dat gesynchroniseerde bestanden, foto\'s en e-mails buiten je gedeelte verschijnen"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Stel een vergrendeling in"</b>\n"Vergrendel je privégedeelte, zodat anderen het niet kunnen openen."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installeer apps"</b>\n"Je privégedeelte heeft een eigen Play Store, zodat je makkelijk apps kunt installeren."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Apps in je privégedeelte verschijnen niet in Rechtenbeheer, het privacydashboard en andere instellingen als je privégedeelte is vergrendeld.\n\nJe privégedeelte kan niet worden hersteld op een nieuw apparaat. Je moet een nieuw privégedeelte instellen als je dit wilt gebruiken op een ander apparaat.\n\nAls iemand je apparaat aan een computer koppelt of schadelijke apps op je apparaat installeert, kan die toegang hebben tot je privégedeelte."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Apps installeren"</b>\n"Installeer apps die je privé wilt houden in je gedeelte"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Goed om te weten"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Apps stoppen als je je gedeelte vergrendelt"</b>\n"Als je je gedeelte vergrendelt, worden apps in je gedeelte gestopt en krijg je geen meldingen van de apps"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Meer informatie over privégedeelte"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Dit duurt even"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Privégedeelte instellen…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Je kunt een nieuwe vergrendeling alleen voor het privégedeelte instellen, of dezelfde vergrendeling gebruiken die je gebruikt om je apparaat te ontgrendelen"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Schermvergrendeling gebruiken"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Nieuwe vergrendeling kiezen"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Een ogenblik…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Een ogenblik…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Dat was het!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Ga naar je lijst met apps en scroll omlaag om je privégedeelte te vinden"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Klaar"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Stel een pincode in voor privégedeelte"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Stel een wachtwoord in voor privégedeelte"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Stel een patroon in voor privégedeelte"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Een Google-account maken om je gegevens privé te houden"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Op het volgende scherm kun je inloggen bij het account dat je wilt gebruiken voor je privégedeelte"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Maak een apart account zodat gegevens niet buiten je privégedeelte worden getoond, zoals:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Gesynchroniseerde foto\'s, bestanden, e-mails, contacten, agenda-afspraken en andere gegevens"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Downloadgeschiedenis en aanbevelingen voor apps"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Browsegeschiedenis, bookmarks en opgeslagen wachtwoorden"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Aanbevolen content met betrekking tot je activiteit in apps in je privégedeelte"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Vergrendelen"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Verbergen"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Je kunt maximaal <xliff:g id="COUNT">%d</xliff:g> vingerafdrukken toevoegen"</string>
@@ -664,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Schermvergrendeling kiezen"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Nieuwe schermvergrendeling"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Vergrendeling werk-apps kiezen"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Nieuwe vergrendeling werk-apps kiezen"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Nieuwe vergrendeling voor werk-apps kiezen"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Stel een extra schermvergrendeling in voor betere beveiliging"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Kies een extra methode voor schermvergrendeling"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Als je je schermvergrendeling vergeet, kan je IT-beheerder deze niet resetten."</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Systeemcertificaat"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Certificaten vastzetten"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Netwerkgegevens"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Dit netwerk gebruikt een ouder beveiligingsprotocol dat WEP wordt genoemd en minder goed beveiligd is"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnetmasker"</string>
<string name="server_name_title" msgid="7257095185810299066">"Servernaam"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Type"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC-adres voor wifi van apparaat"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-adres"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serienummer"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Bedrijfstijd"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Uptime"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Productiedatum"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum van eerste gebruik"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Aantal cycli"</string>
@@ -1619,9 +1617,9 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"Laden..."</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"Laden..."</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"Stel een wachtwoord in"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Een werkwachtwoord instellen"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Wachtwoord voor werkprofiel instellen"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Stel een pincode in"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Een werkpincode instellen"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Pincode voor werkprofiel instellen"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Stel een patroon in"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Stel voor extra beveiliging een patroon in om het apparaat te ontgrendelen"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Stel een patroon in voor je werkprofiel"</string>
@@ -1630,12 +1628,12 @@
<string name="lockpassword_choose_your_pin_message" msgid="7230665212172041837">"Stel een pincode in voor betere beveiliging"</string>
<string name="lockpassword_choose_your_pin_header_for_fingerprint" msgid="2783879743691792556">"Pincode bij gebruik van vingerafdruk"</string>
<string name="lockpassword_confirm_your_password_header" msgid="6132312814563023990">"Voer je wachtwoord opnieuw in"</string>
- <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Je werkwachtwoord opnieuw invullen"</string>
+ <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Wachtwoord werkprofiel opnieuw invoeren"</string>
<string name="lockpassword_confirm_your_work_password_header" msgid="4647071231702288305">"Voer het wachtwoord van je werkprofiel in"</string>
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"Bevestig je patroon"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"Teken het patroon van je werkprofiel"</string>
<string name="lockpassword_confirm_your_pin_header" msgid="2241722970567131308">"Voer je pincode opnieuw in"</string>
- <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Je werkpincode opnieuw invullen"</string>
+ <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Pincode van werkprofiel opnieuw invoeren"</string>
<string name="lockpassword_confirm_your_work_pin_header" msgid="4229765521391960255">"Voer de pincode van je werkprofiel in"</string>
<string name="lockpassword_confirm_passwords_dont_match" msgid="2100071354970605232">"Wachtwoorden komen niet overeen"</string>
<string name="lockpassword_confirm_pins_dont_match" msgid="1103699575489401030">"Pincodes komen niet overeen"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Rechtsonder tikken"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tik rechtsonder op de touchpad voor meer opties"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Snelheid van aanwijzer"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Vulstijl voor aanwijzer"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Vulstijl voor aanwijzer wijzigen in zwart"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Vulstijl voor aanwijzer wijzigen in groen"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Vulstijl voor aanwijzer wijzigen in geel"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Vulstijl voor aanwijzer wijzigen in roze"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Vulstijl voor aanwijzer wijzigen in blauw"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Touchpadgebaren leren"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, muis, cursor, aanwijzer, scrollen, swipen, vegen, klikken met de rechtermuisknop, rechtsklikken, klikken, klik"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"klikken met de rechtermuisknop, rechtsklikken, tikken"</string>
@@ -2036,7 +2040,7 @@
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Opvolgen?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"Verslag van zakenreis"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"Neem voor meer hulp contact op met mij of Helen. Dit rapport wordt"</string>
- <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Klantuitgaven"</string>
+ <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Uitgaven van klant"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"Over kleurcontrast"</string>
<string name="accessibility_turn_screen_darker_title" msgid="5986223133285858349">"Scherm donkerder maken"</string>
<string name="interaction_control_category_title" msgid="2696474616743882372">"Interactieopties"</string>
@@ -2594,7 +2598,7 @@
<string name="battery_saver_turn_on_automatically_pct" msgid="4294335680892392449">"bij <xliff:g id="PERCENT">%1$s</xliff:g> batterijlading"</string>
<string name="battery_percentage" msgid="1779934245963043490">"Batterijpercentage"</string>
<string name="battery_percentage_description" msgid="2321465139126125541">"Toon batterijpercentage in statusbalk"</string>
- <string name="battery_usage_chart_graph_hint_last_full_charge" msgid="6570336408060566877">"Batterijniveau sinds de laatste keer dat de batterij volledig werd opgeladen"</string>
+ <string name="battery_usage_chart_graph_hint_last_full_charge" msgid="6570336408060566877">"Batterijniveau sinds de laatste keer dat de batterij volledig is opgeladen"</string>
<string name="battery_usage_chart_graph_hint" msgid="9182079098173323005">"Batterijniveau voor afgelopen 24 uur"</string>
<string name="battery_app_usage" msgid="8976453608783133770">"App-gebruik sinds de laatste keer dat de batterij volledig werd opgeladen"</string>
<string name="battery_app_usage_for_past_24" msgid="1234770810563940656">"App-gebruik voor afgelopen 24 uur"</string>
@@ -2621,9 +2625,9 @@
<string name="daily_battery_usage_chart" msgid="4176059567682992686">"Diagram van batterijgebruik per dag"</string>
<string name="hourly_battery_usage_chart" msgid="3098314511076561272">"Diagram van batterijgebruik per uur"</string>
<string name="battery_level_percentage" msgid="1433178290838842146">"Percentage batterijniveau van <xliff:g id="START_PERCENTAGE">%1$s</xliff:g> tot <xliff:g id="END_PERCENTAGE">%2$s</xliff:g>"</string>
- <string name="battery_usage_breakdown_title_since_last_full_charge" msgid="435006273323199906">"Batterijgebruik sinds de laatste keer dat de batterij volledig werd opgeladen"</string>
+ <string name="battery_usage_breakdown_title_since_last_full_charge" msgid="435006273323199906">"Batterijgebruik sinds de laatste keer dat de batterij volledig is opgeladen"</string>
<string name="battery_usage_breakdown_title_for_slot" msgid="4823179483667671406">"Batterijgebruik voor <xliff:g id="SLOT">%s</xliff:g>"</string>
- <string name="screen_time_category_last_full_charge" msgid="8856908320256057753">"Schermtijd sinds laatste keer dat de batterij volledig werd opgeladen"</string>
+ <string name="screen_time_category_last_full_charge" msgid="8856908320256057753">"Schermtijd sinds de laatste keer dat de batterij volledig is opgeladen"</string>
<string name="screen_time_category_for_slot" msgid="8287722270554654959">"Schermtijd voor <xliff:g id="SLOT">%s</xliff:g>"</string>
<string name="battery_usage_spinner_view_by_apps" msgid="8769276544072098082">"Bekijken per app"</string>
<string name="battery_usage_spinner_view_by_systems" msgid="7904104223212160541">"Bekijken per systeem"</string>
@@ -2698,7 +2702,7 @@
<string name="adaptive_connectivity_main_switch_title" msgid="261045483524512420">"Aanpasbare connectiviteit gebruiken"</string>
<string name="cellular_security_title" msgid="5562899485544677941">"Beveiliging van mobiel netwerk"</string>
<string name="cellular_security_summary" msgid="1893770670709928113">"Netwerktype, versleuteling, beheeropties voor meldingen"</string>
- <string name="cellular_security_top_intro" msgid="6749166804080092892">"Met deze instellingen kun je je gesprekken, berichten en gegevens beschermen tegen verouderde of niet-versleutelde netwerken waardoor je misschien wordt blootgesteld aan gegevensdiefstal of toezicht"</string>
+ <string name="cellular_security_top_intro" msgid="6749166804080092892">"Met deze instellingen kun je je gesprekken, berichten en gegevens beschermen tegen verouderde of niet-versleutelde netwerken die je misschien blootstellen aan gegevensdiefstal of toezicht"</string>
<string name="cellular_security_settings_title" msgid="7779141923670352595">"Beveiliging van mobiel netwerk"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"Meldingen"</string>
<string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"Netwerkmeldingen"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Geen}=1{1 planning ingesteld}other{# planningen ingesteld}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Niet storen"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioriteitsmodi"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Krijg alleen meldingen van belangrijke mensen en apps"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Onderbrekingen beperken"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Zet Niet storen aan."</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Agenda toevoegen"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Je agenda gebruiken"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Schema"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Schema"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Telefoongeluid uitzetten op bepaalde tijdstippen"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Regels voor \'Niet storen\' instellen"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Deze app ondersteunt geen uitgebreide instellingen"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Meer instellingen"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Er zijn meer instellingen beschikbaar in deze app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Cooldown gebruiken"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Als je in korte tijd veel meldingen krijgt, minimaliseert je apparaat geluidsonderbrekingen en pop-ups op het scherm. Je krijgt nog steeds een waarschuwing voor gesprekken, wekkers en prioriteitsgesprekken en alle geleverde meldingen zijn makkelijk te vinden in het paneel."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Toepassen op werkprofielen"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Toepassen op apps in werkprofiel"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR-helperservices"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Geselecteerde apps"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Geen"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Alles"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Apps toestaan dit te negeren"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps die je mogen storen"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Meer apps selecteren"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Wijzigen in alleen alarmen gedurende 1 uur tot {time}}other{Wijzigen in alleen alarmen gedurende # uur tot {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Wijzigen in \'Alleen wekkers\' tot <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Wijzigen in \'Altijd onderbreken\'"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Waarschuwing"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Sluiten"</string>
<string name="device_feedback" msgid="5351614458411688608">"Feedback sturen over dit apparaat"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Links"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Rechts"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Case"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batterij"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Instellingenvenster"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Desktopmodus afdwingen"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Dwing experimentele desktopmodus af op secundaire schermen"</string>
@@ -4857,7 +4881,7 @@
<string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Je zit in de 4 KB-modus van de niet-paginagebonden modus. In deze modus kan de software-integriteit niet worden gegarandeerd. Ook kunnen alle gegevens die op de telefoon zijn opgeslagen terwijl de bootloader is ontgrendeld gevaar lopen. Sommige functies worden in deze modi uitgezet, dus sommige apps werken misschien niet. Als je wilt terugkeren naar de productiemodus, moet je de bootloader van het apparaat vergrendelen. Hierdoor worden de fabrieksinstellingen teruggezet en worden de productie-instellingen hersteld op het apparaat. Nadat het apparaat succesvol is opgestart in Android, zet je OEM-ontgrendeling uit in de Ontwikkelaarsopties. Als het apparaat niet opstart in Android of instabiel is, flash het apparaat dan opnieuw met de nieuwste fabrieksimages van <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> of gebruik <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> en selecteer Apparaat wissen, Bootloader vergrendelen en Alle partities geforceerd flashen."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Niet-paginagebonden modus van 16 KB gebruiken"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Je zit in de 16 KB-modus van de niet-paginagebonden modus. In deze modus kan de software-integriteit niet worden gegarandeerd. Ook kunnen alle gegevens die op de telefoon zijn opgeslagen terwijl de bootloader is ontgrendeld gevaar lopen. Sommige functies worden in deze modi uitgezet, dus sommige apps werken misschien niet. Als je wilt terugkeren naar de productiemodus, moet je teruggaan naar de 4 KB-modus en daarna de bootloader van het apparaat vergrendelen. Tik om meer te lezen."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Je zit in de 16 KB-modus van de niet-paginagebonden modus. In deze modus kan de software-integriteit niet worden gegarandeerd en kunnen alle gegevens die op de telefoon zijn opgeslagen, terwijl de bootloader is ontgrendeld, gevaar lopen. Sommige functies worden in deze modi uitgezet, dus sommige apps werken misschien niet. Als je wilt terugkeren naar de productiemodus, moet je teruggaan naar de 4 KB-modus en daarna de bootloader van het apparaat vergrendelen. Hierdoor worden de fabrieksinstellingen teruggezet en worden de productie-instellingen hersteld op het apparaat. Nadat het apparaat succesvol is opgestart in Android, zet je OEM-ontgrendeling uit in de Ontwikkelaarsopties. Als het apparaat niet opstart in Android of instabiel is, flash het apparaat dan opnieuw met de nieuwste fabrieksimages van <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> of gebruik <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> en selecteer Apparaat wissen, Bootloader vergrendelen en Alle partities geforceerd flashen."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Je zit in de 16 KB-modus van de niet-paginagebonden modus. In deze modus kan de software-integriteit niet worden gegarandeerd en kunnen alle gegevens die op de telefoon zijn opgeslagen terwijl de bootloader is ontgrendeld, gevaar lopen. Sommige functies worden in deze modi uitgezet, dus sommige apps werken misschien niet. Als je wilt terugkeren naar de productiemodus, moet je teruggaan naar de 4 KB-modus en daarna de bootloader van het apparaat vergrendelen. Hierdoor worden de fabrieksinstellingen teruggezet en worden de productie-instellingen hersteld op het apparaat. Nadat het apparaat succesvol is opgestart in Android, zet je OEM-ontgrendeling uit in de Ontwikkelaarsopties. Als het apparaat niet opstart in Android of instabiel is, flash het apparaat dan opnieuw met de nieuwste fabrieksimages van <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> of gebruik <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> en selecteer Apparaat wissen, Bootloader vergrendelen en Alle partities geforceerd flashen."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Niet-paginagebonden 16 KB-modus"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Meer lezen"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"App voor verwerking bugrapport"</string>
@@ -4909,7 +4933,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Nepmodem toestaan"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Sta toe dat dit apparaat de nepmodemservice uitvoert voor instrumentatietests. Zet dit niet aan tijdens normaal gebruik van de telefoon"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Beveiligingsmaatregelen voor scherm delen uitzetten"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Zet systeembeveiligingen uit voor gevoelige app-content voor aankomende sessies voor scherm delen"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Zet systeembeveiligingen uit voor gevoelige app-content tijdens aankomende sessies waarbij het scherm wordt gedeeld"</string>
<string name="media_controls_title" msgid="403271085636252597">"Media"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Mediaspeler vastzetten"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"De mediaspeler blijft open staan in Snelle instellingen, zodat je snel kunt verdergaan met afspelen"</string>
diff --git a/res/values-or/arrays.xml b/res/values-or/arrays.xml
index 65f977e..4900fcc 100644
--- a/res/values-or/arrays.xml
+++ b/res/values-or/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index 0489cf6..f641842 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -59,13 +59,14 @@
<string name="bluetooth_not_visible_to_other_devices" msgid="6181960579190879601">"ଅନ୍ୟ ବ୍ଲୁଟୂଥ୍ ଡିଭାଇସ୍ଗୁଡ଼ିକୁ ଦେଖାଯିବ ନାହିଁ"</string>
<string name="bluetooth_only_visible_to_paired_devices" msgid="3574936359739213455">"କେବଳ ପେୟାର୍ ହୋଇଥିବା ଡିଭାଇସ୍ଗୁଡ଼ିକୁ ହିଁ ଦେଖାଦେବ"</string>
<string name="bluetooth_devices" msgid="1063177983261608277">"ବ୍ଲୁଟୁଥ୍ ଡିଭାଇସ୍ଗୁଡ଼ିକ"</string>
- <string name="bluetooth_device_name" msgid="1294669733490268384">"ଡିଭାଇସ୍ର ନାମ"</string>
+ <string name="bluetooth_device_name" msgid="1294669733490268384">"ଡିଭାଇସର ନାମ"</string>
<string name="bluetooth_rename_device" msgid="4219655243836021443">"ଏହି ଡିଭାଇସ୍ର ନାମ ବଦଳାନ୍ତୁ"</string>
<string name="bluetooth_rename_button" msgid="9162500408570289545">"ରିନେମ କରନ୍ତୁ"</string>
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ଡିଭାଇସ୍କୁ ବିଚ୍ଛିନ୍ନ କରିବେ?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"ନୂଆ ଡିଭାଇସକୁ ପେୟାର କରନ୍ତୁ"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ବ୍ଲୁଟୁଥ୍"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"ଆସନ୍ତାକାଲି ସ୍ୱତଃ ପୁଣି ଚାଲୁ ହେବ"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"ଡାହାଣ କାନକୁ ପେୟାର କର"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ବାମ କାନକୁ ପେୟାର କର"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"ଅନ୍ୟ କାନକୁ ପେୟାର କରନ୍ତୁ"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ବାମ କାନକୁ ପେୟାର କର"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ହିଅରିଂ ଡିଭାଇସ ସେଟିଂସ"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ସର୍ଟକଟ, ଶ୍ରବଣଯନ୍ତ୍ର ଉପଯୋଗୀ"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"ପ୍ରିସେଟଗୁଡ଼ିକ"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ପ୍ରିସେଟ"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"ପ୍ରିସେଟକୁ ଅପଡେଟ କରାଯାଇପାରିବ ନାହିଁ"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ଅଡିଓ ଆଉଟପୁଟ"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ଅଡିଓ ଆଉଟପୁଟ ବିଷୟରେ"</string>
@@ -280,7 +281,7 @@
<string name="location_settings_title" msgid="8375074508036087178">"ଲୋକେସନ୍"</string>
<string name="location_settings_primary_switch_title" msgid="8849081766644685127">"ଲୋକେସନ ବ୍ୟବହାର କରନ୍ତୁ"</string>
<string name="location_settings_summary_location_off" msgid="4797932754681162262">"ବନ୍ଦ"</string>
- <string name="location_settings_summary_location_on" msgid="4273299717586679786">"{count,plural, =1{ଚାଲୁ ଅଛି / #ଟି ଆପର ଲୋକେସନକୁ ଆକ୍ସେସ ଅଛି}other{ଚାଲୁ ଅଛି / #ଟି ଆପ୍ସର ଲୋକେସନକୁ ଆକ୍ସେସ ଅଛି}}"</string>
+ <string name="location_settings_summary_location_on" msgid="4273299717586679786">"{count,plural, =1{ଚାଲୁ ଅଛି / # ଆପର ଲୋକେସନକୁ ଆକ୍ସେସ ଅଛି}other{ଚାଲୁ ଅଛି / # ଆପ୍ସର ଲୋକେସନକୁ ଆକ୍ସେସ ଅଛି}}"</string>
<string name="location_settings_loading_app_permission_stats" msgid="6054103701535557342">"ଲୋଡ୍ ହେଉଛି…"</string>
<string name="location_settings_footer_general" msgid="1040507068701188821">"ଆଖପାଖର ଡିଭାଇସଗୁଡ଼ିକ ପାଇଁ ଅନୁମତି ଥିବା ଆପ୍ସ କନେକ୍ଟ ହୋଇଥିବା ଡିଭାଇସଗୁଡ଼ିକର ଆପେକ୍ଷିକ ଅବସ୍ଥିତିକୁ ନିର୍ଦ୍ଧାରଣ କରିପାରିବ।"</string>
<string name="location_settings_footer_location_off" msgid="8568995909147566720">"ଆପ୍ସ ଓ ସେବାଗୁଡ଼ିକ ପାଇଁ ଲୋକେସନ ଆକ୍ସେସ ବନ୍ଦ ଅଛି। ଆପଣ ଏକ ଜରୁରୀକାଳୀନ ନମ୍ବରକୁ କଲ କରିବା କିମ୍ବା ଟେକ୍ସଟ ମେସେଜ ପଠାଇବା ସମୟରେ ଆପଣଙ୍କ ଡିଭାଇସର ଲୋକେସନ ଏବେ ବି ଜରୁରୀକାଳୀନ ଉତ୍ତରଦାତାମାନଙ୍କୁ ପଠାଯାଇପାରେ।"</string>
@@ -311,8 +312,8 @@
<string name="security_settings_face_enroll_introduction_accessibility" msgid="5748221179069430975">"ଆକ୍ସେସିବିଲିଟୀ ସେଟ୍ଅପ୍ ବ୍ୟବହାର କରନ୍ତୁ"</string>
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
- <string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ବାତିଲ"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"ନା, ଧନ୍ୟବାଦ"</string>
+ <string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ବାତିଲ କରନ୍ତୁ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ବର୍ତ୍ତମାନ ନୁହେଁ"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ମୁଁ ରାଜି"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"ଅଧିକ"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ନିଜର ଫେସ୍ରେ ଅନଲକ୍ କରନ୍ତୁ"</string>
@@ -345,9 +346,9 @@
<string name="security_settings_face_enroll_improve_face_alert_body_fingerprint" msgid="2469599074650327489">"ଫେସ୍ ଅନଲକ୍ ପୁଣି ସେଟ୍ ଅପ୍ କରିବା ପାଇଁ ଆପଣଙ୍କ ବର୍ତ୍ତମାନର ଫେସ୍ ମଡେଲ୍ ଡିଲିଟ୍ କରନ୍ତୁ।\n\nଆପଣଙ୍କ ଫେସ୍ ମଡେଲକୁ ସ୍ଥାୟୀ ଏବଂ ସୁରକ୍ଷିତ ଭାବରେ ଡିଲିଟ୍ କରିଦିଆଯିବ।\n\nଡିଲିଟ୍ କରିବା ପରେ ଆପଣଙ୍କ ଫୋନକୁ ଅନଲକ୍ କରିବା କିମ୍ବା ଆପଗୁଡ଼ିକରେ ପ୍ରମାଣୀକରଣ ପାଇଁ ଆପଣ ଆପଣଙ୍କର ଟିପଚିହ୍ନ, PIN, ପାଟର୍ନ କିମ୍ବା ପାସୱାର୍ଡ ଆବଶ୍ୟକ କରିବେ।"</string>
<string name="security_settings_face_settings_use_face_category" msgid="1638314154119800188">"ଏଥିପାଇଁ ଫେସ୍ ଅନଲକ୍ ବ୍ୟବହାର କରନ୍ତୁ"</string>
<string name="security_settings_face_settings_preferences_category" msgid="7628929873407280453">"ଫେସ ଅନଲକ ବ୍ୟବହାର କରିବା ସମୟରେ"</string>
- <string name="security_settings_face_settings_require_attention" msgid="4395309855914391104">"ଆଖି ଖୋଲା ରଖିବା ଆବଶ୍ୟକ ହୋଇଥାଏ"</string>
+ <string name="security_settings_face_settings_require_attention" msgid="4395309855914391104">"ଆଖି ଖୋଲା ରଖିବା ଆବଶ୍ୟକ"</string>
<string name="security_settings_face_settings_require_attention_details" msgid="2546230511769544074">"ଫୋନ୍ ଅନ୍ଲକ୍ କରିବା ପାଇଁ, ଆପଣଙ୍କ ଆଖି ଖୋଲା ରହିବା ଉଚିତ"</string>
- <string name="security_settings_face_settings_require_confirmation" msgid="6603039421004198334">"ସବୁବେଳେ ସୁନିଶ୍ଚିତକରଣ ଆବଶ୍ୟକ ହୋଇଥାଏ"</string>
+ <string name="security_settings_face_settings_require_confirmation" msgid="6603039421004198334">"ସବୁବେଳେ ସୁନିଶ୍ଚିତକରଣ ଆବଶ୍ୟକ"</string>
<string name="security_settings_face_settings_require_confirmation_details" msgid="3498729789625461914">"ଆପ୍ସରେ ଫେସ ଅନଲକ ବ୍ୟବହାର କରିବା ବେଳେ ସର୍ବଦା ସୁନିଶ୍ଚିତକରଣ ଷ୍ଟେପ ଆବଶ୍ୟକ"</string>
<string name="security_settings_face_settings_remove_face_model" msgid="812920481303980846">"ଫେସ ମଡେଲ ଡିଲିଟ କରନ୍ତୁ"</string>
<string name="security_settings_face_settings_enroll" msgid="3726313826693825029">"ଫେସ ଅନଲକ ସେଟ ଅପ କରନ୍ତୁ"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ମନେ ରଖନ୍ତୁ"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"ଫୋନକୁ ଅନଲକ କରିବା କିମ୍ୱା କ୍ରୟକୁ ଅନୁମୋଦନ କରିବା ପାଇଁ ନିଜ ଟିପଚିହ୍ନର ବ୍ୟବହାର କରନ୍ତୁ।\n\nଧ୍ୟାନଦିଅନ୍ତୁ: ଏହି ଡିଭାଇସ ଅନଲକ କରିବାକୁ ଆପଣ ଟିପଚିହ୍ନ ବ୍ୟବହାର କରିପାରିବେ ନାହିଁ। ଅଧିକ ସୂଚନା ପାଇଁ, ଆପଣଙ୍କ ସଂସ୍ଥାର ଆଡମିନଙ୍କ ସହ କଣ୍ଟାକ୍ଟ କରନ୍ତୁ।"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ବାତିଲ"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"ନା, ଧନ୍ୟବାଦ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ବର୍ତ୍ତମାନ ନୁହେଁ"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ମୁଁ ରାଜି"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ଟିପଚିହ୍ନ ବାଦ ଦେବେ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ଟିପଚିହ୍ନ ସେଟଅପ କେବଳ ଏକ କିମ୍ବା ଦୁଇ ମିନିଟ ସମୟ ନିଏ। ଯଦି ଆପଣ ଏହାକୁ ବାଦ ଦିଅନ୍ତି, ଆପଣ ପରେ ସେଟିଂସରେ ନିଜର ଟିପଚିହ୍ନ ଯୋଗ କରିପାରିବେ।"</string>
@@ -556,10 +557,10 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"ସେଟ ଅପ କରିବାକୁ ଟାପ କରନ୍ତୁ"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଫେସ ଅନଲକ"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଫେସ & ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଫେସ ଏବଂ ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ ସେଟ ଅପ କରନ୍ତୁ"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"ଆପଣ ଆପ୍ସରେ ସାଇନ ଇନ କରିବା କିମ୍ବା ଏକ କ୍ରୟକୁ ଅନୁମୋଦନ ଦେବା ପରି କାର୍ଯ୍ୟ କରିବା ସମୟରେ, ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଅନଲକ କରିବା କିମ୍ବା ଏହା ଆପଣ ବୋଲି ଯାଞ୍ଚ କରିବା ପାଇଁ ଆପଣଙ୍କ ଟିପଚିହ୍ନକୁ ବ୍ୟବହାର କରନ୍ତୁ"</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"ଯଦି କେହି ଜଣେ ବ୍ୟକ୍ତି ଆପଣଙ୍କ ଫୋନକୁ ଆପଣଙ୍କ ଆଙ୍ଗୁଠିରେ ସ୍ପର୍ଶ କରନ୍ତି, ତେବେ ଆପଣଙ୍କ ଅଜାଣତରେ ମଧ୍ୟ ଆପଣହ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଅନଲକ କରାଯାଇପାରିବ।"</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"କେହି ଜଣେ ବ୍ୟକ୍ତି ଆପଣଙ୍କ ଫୋନକୁ ଆପଣଙ୍କ ଆଙ୍ଗୁଠିରେ ସ୍ପର୍ଶ କଲେ ଆପଣଙ୍କ ଅଜାଣତରେ ମଧ୍ୟ ଆପଣଙ୍କର ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଅନଲକ କରାଯାଇପାରିବ।"</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଅନଲକ କରିବା କିମ୍ୱା କ୍ରୟକୁ ଅନୁମୋଦନ କରିବା ପାଇଁ ଆପଣଙ୍କ ଟିପଚିହ୍ନ ବ୍ୟବହାର କରନ୍ତୁ"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଫେସ ଅନଲକ ସେଟ ଅପ କରନ୍ତୁ"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"ଆପଣ ଆପ୍ସରେ ସାଇନ ଇନ କରିବା କିମ୍ବା ଏକ କ୍ରୟକୁ ଅନୁମୋଦନ ଦେବା ପରି କାର୍ଯ୍ୟ କରିବା ସମୟରେ, ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଅନଲକ କରିବା କିମ୍ବା ଏହା ଆପଣ ବୋଲି ଯାଞ୍ଚ କରିବା ପାଇଁ ଆପଣଙ୍କ ଫେସ ବ୍ୟବହାର କରନ୍ତୁ"</string>
@@ -575,10 +576,8 @@
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ସ୍ୱତଃ ଲକ କରନ୍ତୁ"</string>
<string name="private_space_auto_lock_page_summary" msgid="8679844515655838654">"ଯଦି ଆପଣ ଆପଣଙ୍କ ଡିଭାଇସକୁ ଏକ ସମୟ ଅବଧି ପାଇଁ ବ୍ୟବହାର କରିନାହାଁନ୍ତି ତେବେ ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଆପଣ ସ୍ୱତଃ ଲକ କରିପାରିବେ"</string>
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ପ୍ରତି ଥର ଡିଭାଇସ ଲକ ହେଲେ"</string>
- <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"ସ୍କ୍ରିନ ଟାଇମଆଉଟ ପରେ 5 ମିନିଟ"</string>
+ <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"ସ୍କ୍ରିନ ଟାଇମଆଉଟର 5 ମିନିଟ ପରେ"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"କେବଳ ଡିଭାଇସ ରିଷ୍ଟାର୍ଟ ହେବା ପରେ"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଲୁଚାନ୍ତୁ"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ଲକ ଥିବା ସମୟରେ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଲୁଚାନ୍ତୁ"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"ଆପଣଙ୍କ ଡିଭାଇସରେ ଆପଣଙ୍କର ଏକ ପ୍ରାଇଭେଟ ସ୍ପେସ ଥିବା ଅନ୍ୟ ଲୋକମାନଙ୍କୁ ନଜଣାଇବାକୁ ଆପଣ ଆପଣଙ୍କ ଆପ୍ସ ତାଲିକାରୁ ଏହାକୁ ଲୁଚାଇପାରିବେ"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"ସେଟ ଅପ କରନ୍ତୁ"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"ପ୍ରାଇଭେଟ ସ୍ପେସ"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ଏକ ଅଲଗା ସ୍ପେସରେ ପ୍ରାଇଭେଟ ଆପ୍ସକୁ ଲୁଚାନ୍ତୁ କିମ୍ବା ଲକ କରନ୍ତୁ। ଅତିରିକ୍ତ ସୁରକ୍ଷା ପାଇଁ ଏକ ନିର୍ଦ୍ଦିଷ୍ଟ Google ଆକାଉଣ୍ଟ ବ୍ୟବହାର କରନ୍ତୁ।"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସ ସେଟ ଅପ କରନ୍ତୁ"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"ଆପଣଙ୍କ ସ୍ପେସ ପାଇଁ ଏକ Google ଆକାଉଣ୍ଟ ବାଛନ୍ତୁ"</b>\n"ଏକ ନିର୍ଦ୍ଦିଷ୍ଟ ଆକାଉଣ୍ଟ ବ୍ୟବହାର କରିବା ସିଙ୍କ ହୋଇଥିବା ଫାଇଲ, ଫଟୋ ଏବଂ ଇମେଲଗୁଡ଼ିକୁ ଆପଣଙ୍କ ସ୍ପେସ ବାହାରେ ଦେଖାଯିବାରୁ ବନ୍ଦ କରିବାରେ ସାହାଯ୍ୟ କରେ"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"ଏହା କିପରି କାମ କରେ"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"ଆପଣଙ୍କ ସ୍ପେସ ପାଇଁ ଏକ Google ଆକାଉଣ୍ଟ ତିଆରି କରନ୍ତୁ"</b>\n"ଯଦି ଆପଣ ଏକ ସ୍ୱତନ୍ତ୍ର ଆକାଉଣ୍ଟ ବ୍ୟବହାର କରନ୍ତି ତେବେ ଏହା ଆପଣଙ୍କ ସ୍ପେସ ବାହାରେ ଦେଖାଯାଉଥିବା ସିଙ୍କ ହୋଇଥିବା ଫାଇଲ, ଫଟୋ ଏବଂ ଇମେଲଗୁଡ଼ିକୁ ବନ୍ଦ କରିବାରେ ସାହାଯ୍ୟ କରେ"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ଏକ ଲକ ସେଟ କରନ୍ତୁ"</b>\n"ଆପଣଙ୍କ ସ୍ପେସକୁ ଖୋଲିବାରୁ ଅନ୍ୟ ଲୋକଙ୍କୁ ବାରଣ କରିବା ପାଇଁ ଏହାକୁ ଲକ କରନ୍ତୁ"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ଆପ୍ସ ଇନଷ୍ଟଲ କରନ୍ତୁ"</b>\n"ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସରେ ଏହାର ନିଜସ୍ୱ Play Store ଅଛି ଯାହା ଫଳରେ ଆପଣ ସହଜରେ ଆପ୍ସକୁ ଇନଷ୍ଟଲ କରିପାରିବେ।"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସ ଲକ ଥିବା ସମୟରେ ଆପଣଙ୍କର ପ୍ରାଇଭେଟ ସ୍ପେସରେ ଥିବା ଆପ୍ସ ଅନୁମତି ପରିଚାଳକ, ଗୋପନୀୟତା ଡେସବୋର୍ଡ ଏବଂ ଅନ୍ୟ ସେଟିଂସରେ ଦେଖାଯିବ ନାହିଁ।\n\nଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଏକ ନୂଆ ଡିଭାଇସରେ ରିଷ୍ଟୋର କରାଯାଇପାରିବ ନାହିଁ। ଯଦି ଆପଣ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଅନ୍ୟ ଏକ ଡିଭାଇସରେ ବ୍ୟବହାର କରିବାକୁ ଚାହାଁନ୍ତି ତେବେ ଆପଣଙ୍କୁ ଅନ୍ୟ ଏକ ପ୍ରାଇଭେଟ ସ୍ପେସ ସେଟ ଅପ କରିବାକୁ ହେବ।\n\nଆପଣଙ୍କ ଡିଭାଇସକୁ ଏକ କମ୍ପ୍ୟୁଟର ସହ କନେକ୍ଟ କରୁଥିବା କିମ୍ବା ଆପଣଙ୍କ ଡିଭାଇସରେ କ୍ଷତିକାରକ ଆପ୍ସ ଇନଷ୍ଟଲ କରୁଥିବା ଯେ କୌଣସି ବ୍ୟକ୍ତି ଆପଣଙ୍କର ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଆକ୍ସେସ କରିବା ପାଇଁ ସକ୍ଷମ ହୋଇପାରନ୍ତି।"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ଆପ୍ସ ଇନଷ୍ଟଲ କରନ୍ତୁ"</b>\n"ଆପଣଙ୍କ ସ୍ପେସରେ ଆପଣ ପ୍ରାଇଭେଟ ରଖିବାକୁ ଚାହୁଁଥିବା ଆପ୍ସ ଇନଷ୍ଟଲ କରନ୍ତୁ"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ମନେ ରଖନ୍ତୁ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"ଆପଣଙ୍କ ସ୍ପେସକୁ ଆପଣ ଲକ କଲେ ଆପ୍ସ ବନ୍ଦ ହୋଇଯାଏ"</b>\n"ଆପଣଙ୍କର ସ୍ପେସକୁ ଆପଣ ଲକ କଲେ, ଆପଣଙ୍କ ସ୍ପେସରେ ଥିବା ଆପ୍ସ ବନ୍ଦ ହୋଇଯାଏ ଏବଂ ଆପଣ ସେଗୁଡ଼ିକଠାରୁ ବିଜ୍ଞପ୍ତି ପାଇବେ ନାହିଁ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ପ୍ରାଇଭେଟ ସ୍ପେସ ବିଷୟରେ ଅଧିକ ଜାଣନ୍ତୁ"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ଏଥିପାଇଁ କିଛି ସମୟ ଲାଗିବ"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"ପ୍ରାଇଭେଟ ସ୍ପେସ ସେଟ ଅପ କରାଯାଉଛି…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"ଆପଣ କେବଳ ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଏକ ନୂଆ ଲକ ସେଟ କରିପାରିବେ କିମ୍ବା ଆପଣଙ୍କ ଡିଭାଇସକୁ ଅନଲକ କରିବା ପାଇଁ ଆପଣ ବ୍ୟବହାର କରୁଥିବା ସେହି ସମାନ ଲକ ବ୍ୟବହାର କରିପାରିବେ"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ସ୍କ୍ରିନ ଲକ ବ୍ୟବହାର କରନ୍ତୁ"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"ନୂଆ ଲକ ବାଛନ୍ତୁ"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ଏକ ସେକେଣ୍ତ ରୁହନ୍ତୁ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"କିଛି ସମୟ ଅପେକ୍ଷା କରନ୍ତୁ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"ସମ୍ପୂର୍ଣ୍ଣ ଭାବେ ପ୍ରସ୍ତୁତ!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"ଆପଣଙ୍କର ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଖୋଜିବା ପାଇଁ ଆପଣଙ୍କ ଆପ୍ସ ତାଲିକାକୁ ଯାଇ ତଳକୁ ସ୍କ୍ରୋଲ କରନ୍ତୁ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"ହୋଇଗଲା"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ନିଜ ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଏକ PIN ସେଟ କର"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ନିଜ ପ୍ରାଇଭେଟ ସ୍ପେସର ଏକ ପାସୱାର୍ଡ ସେଟ କର"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ନିଜ ପ୍ରାଇଭେଟ ସ୍ପେସ ପାଇଁ ଏକ ପାଟର୍ନ ସେଟ କର"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"ଆପଣଙ୍କ ଡାଟାକୁ ପ୍ରାଇଭେଟ ରଖିବାରେ ସାହାଯ୍ୟ କରିବାକୁ ଏକ Google ଆକାଉଣ୍ଟ ତିଆରି କରନ୍ତୁ"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"ପରବର୍ତ୍ତୀ ସ୍କ୍ରିନରେ ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସ ସହ ବ୍ୟବହାର କରିବାକୁ ଆପଣ ଏକ ଆକାଉଣ୍ଟରେ ସାଇନ ଇନ କରିପାରିବେ"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"ପ୍ରାଇଭେଟ ସ୍ପେସ ବାହାରେ ଦେଖାଯିବାରୁ ଡାଟାକୁ ପ୍ରତିରୋଧ କରିବାରେ ସାହାଯ୍ୟ କରିବା ପାଇଁ ଏକ ନିର୍ଦ୍ଦିଷ୍ଟ ଆକାଉଣ୍ଟ ତିଆରି କରନ୍ତୁ, ଯେପରି:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"ସିଙ୍କ ହୋଇଥିବା ଫଟୋ, ଫାଇଲ, ଇମେଲ, କଣ୍ଟାକ୍ଟ, କେଲେଣ୍ଡର ଇଭେଣ୍ଟ ଏବଂ ଅନ୍ୟ ଡାଟା"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ଆପ ଡାଉନଲୋଡ ଇତିହାସ ଏବଂ ସୁପାରିଶଗୁଡ଼ିକ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ବ୍ରାଉଜିଂ ଇତିହାସ, ବୁକମାର୍କ ଏବଂ ସେଭ ହୋଇଥିବା ପାସୱାର୍ଡଗୁଡ଼ିକ"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ପ୍ରାଇଭେଟ ସ୍ପେସ ଆପ୍ସରେ ଆପଣଙ୍କ କାର୍ଯ୍ୟକଳାପ ସମ୍ବନ୍ଧିତ ପ୍ରସ୍ତାବିତ ବିଷୟବସ୍ତୁ"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"ବୁଝିଗଲି"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ଲକ କରନ୍ତୁ"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"ଲୁଚାନ୍ତୁ"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"ଆପଣ ସର୍ବାଧିକ <xliff:g id="COUNT">%d</xliff:g> ଟିପଚିହ୍ନ ଯୋଗ କରିପାରିବେ"</string>
@@ -665,12 +661,12 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"ଏକ ସ୍କ୍ରିନ ଲକ ବାଛନ୍ତୁ"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"ଏକ ନୂଆ ସ୍କ୍ରିନ୍ ଲକ୍ ବାଛନ୍ତୁ"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"ୱାର୍କ ଆପ୍ସ ପାଇଁ ଏକ ଲକ ବାଛନ୍ତୁ"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"ଏକ ନୂଆ ୱାର୍କ ଲକ୍ ବାଛନ୍ତୁ"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"ଏକ ନୂଆ ୱାର୍କ ଲକ ବାଛନ୍ତୁ"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"ଅତିରିକ୍ତ ସୁରକ୍ଷା ପାଇଁ, ଏକ ବେକଅପ ସ୍କ୍ରିନ ଲକ ସେଟ କରନ୍ତୁ"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"ଆପଣଙ୍କ ବେକଅପ ସ୍କ୍ରିନ ଲକ ପଦ୍ଧତି ବାଛନ୍ତୁ"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"ଯଦି ଆପଣ ଆପଣଙ୍କ ସ୍କ୍ରିନ ଲକ ଭୁଲି ଯାଆନ୍ତି, ଆପଣଙ୍କ IT ଆଡମିନ ତାହା ରିସେଟ କରିପାରିବେ ନାହିଁ।"</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"ଏକ ଅଲଗା ୱାର୍କ ଲକ ସେଟ କର"</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"ଯଦି ଆପଣ ଏହି ଲକଟି ଭୁଲି ଯାଆନ୍ତି, ଏହାକୁ ରିସେଟ୍ କରିବାକୁ ଆପଣଙ୍କ IT ଆଡମିନଙ୍କୁ ପଚାରନ୍ତୁ"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"ଆପଣ ଏହି ଲକଟି ଭୁଲିଗଲେ, ଏହାକୁ ରିସେଟ କରିବାକୁ ଆପଣଙ୍କ IT ଆଡମିନଙ୍କୁ କୁହନ୍ତୁ"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"ସ୍କ୍ରିନ୍ ଲକ୍ ବିକଳ୍ପ"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"ସ୍କ୍ରିନ ଲକ ବିକଳ୍ପ"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"ଅନଲକକୁ ସ୍ୱତଃ-ସୁନିଶ୍ଚିତ କରନ୍ତୁ"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"ସିଷ୍ଟମ ସାର୍ଟିଫିକେଟ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"ସାର୍ଟିଫିକେଟ ପିନ କରିବା"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ନେଟୱାର୍କ ବିବରଣୀ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ଏହି ନେଟୱାର୍କ କମ ସୁରକ୍ଷିତ ହୋଇଥିବା WEP ନାମକ ଏକ ପୁରୁଣା ସୁରକ୍ଷା ପ୍ରୋଟୋକଲ ବ୍ୟବହାର କରେ"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"ସବନେଟ ମାସ୍କ"</string>
<string name="server_name_title" msgid="7257095185810299066">"ସର୍ଭରର ନାମ"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ପ୍ରକାର"</string>
@@ -1192,7 +1189,7 @@
<string name="color_mode_option_natural" msgid="6192875655101283303">"ପ୍ରାକୃତିକ"</string>
<string name="color_mode_option_boosted" msgid="4698797857766774289">"ବର୍ଦ୍ଧିତ"</string>
<string name="color_mode_option_saturated" msgid="3413853820158447300">"ସାଚୁରେଟେଡ୍"</string>
- <string name="color_mode_option_automatic" msgid="2281217686509980870">"ଆଡେପ୍ଟିଭ୍"</string>
+ <string name="color_mode_option_automatic" msgid="2281217686509980870">"ଆଡେପ୍ଟିଭ"</string>
<string name="brightness" msgid="6216871641021779698">"ଉଜ୍ଜ୍ୱଳତା ସ୍ତର"</string>
<string name="auto_brightness_title" msgid="4239324728760986697">"ଆଡେପ୍ଟିଭ୍ ଉଜ୍ଜ୍ୱଳତା"</string>
<string name="auto_brightness_description" msgid="6807117118142381193">"ଆପଣଙ୍କ ସ୍କ୍ରିନର ଉଜ୍ଜ୍ଵଳତା ଆପଣଙ୍କ ପରିବେଶ ଓ କାର୍ଯ୍ୟକଳାପ ଅନୁସାରେ ସ୍ୱତଃ ଆଡଜଷ୍ଟ ହେବ। ଆପଣ ସ୍ଲାଇଡର୍କୁ ହାତରେ ଘୁଞ୍ଚାଇ ଆଡେପ୍ଟିଭ୍ ଉଜ୍ଜ୍ୱଳତାକୁ ଆପଣଙ୍କ ପସନ୍ଦଗୁଡ଼ିକ ଜାଣିବାରେ ସାହାଯ୍ୟ କରିପାରିବେ।"</string>
@@ -1207,12 +1204,12 @@
<string name="peak_refresh_rate_summary" msgid="3212309985294885790">"କିଛି ବିଷୟବସ୍ତୁ ପାଇଁ ରିଫ୍ରେସ ରେଟକୁ ସ୍ୱତଃ <xliff:g id="ID_1">%1$d</xliff:g> Hz ପର୍ଯ୍ୟନ୍ତ ବଢ଼ାଇଥାଏ। ବେଟେରୀର ବ୍ୟବହାର ବଢ଼ାଇଥାଏ।"</string>
<string name="force_high_refresh_rate_toggle" msgid="3325789621928312050">"ସର୍ବାଧିକ ରିଫ୍ରେସ୍ ହାରକୁ ଲାଗୁ କରନ୍ତୁ"</string>
<string name="force_high_refresh_rate_desc" msgid="7794566420873814875">"ଉନ୍ନତ ସ୍ପର୍ଶ ପ୍ରତିକ୍ରିୟା ଓ ଆନିମେସନ ଗୁଣବତ୍ତା ପାଇଁ ସର୍ବାଧିକ ରିଫ୍ରେସ ରେଟ। ବେଟେରୀର ବ୍ୟବହାର ବଢ଼ାଇଥାଏ।"</string>
- <string name="adaptive_sleep_title" msgid="2987961991423539233">"ସ୍କ୍ରିନ୍ ଆଟେନ୍ସନ୍"</string>
+ <string name="adaptive_sleep_title" msgid="2987961991423539233">"ସ୍କ୍ରିନ ଆଟେନସନ"</string>
<string name="adaptive_sleep_title_no_permission" msgid="1719759921214237016">"କ୍ୟାମେରା ଆକ୍ସେସ ଦରକାର"</string>
<string name="adaptive_sleep_summary_no_permission" msgid="5822591289468803691">"ସ୍କ୍ରିନ୍ ଆଟେନସନ୍ ପାଇଁ କ୍ୟାମେରା ଆକ୍ସେସ୍ ଆବଶ୍ୟକ। ଡିଭାଇସ୍ ପର୍ସନାଲାଇଜେସନ୍ ସାର୍ଭିସେସ୍ ପାଇଁ ଅନୁମତିଗୁଡ଼ିକୁ ପରିଚାଳନା କରିବାକୁ ଟାପ୍ କରନ୍ତୁ"</string>
<string name="adaptive_sleep_manage_permission_button" msgid="1404510197847664846">"ଅନୁମତିଗୁଡ଼ିକୁ ପରିଚାଳନା କରନ୍ତୁ"</string>
- <string name="adaptive_sleep_description" msgid="1835321775327187860">"ଯଦି ଆପଣ ଏହାକୁ ଦେଖୁଥିବେ ତେବେ ଆପଣଙ୍କର ସ୍କ୍ରିନ୍ ବନ୍ଦ ହୋଇନଥାଏ"</string>
- <string name="adaptive_sleep_privacy" msgid="7664570136417980556">"ସ୍କ୍ରିନ୍କୁ କେହି ଦେଖୁଛନ୍ତି ନା ନାହିଁ ତାହା ଦେଖିବା ପାଇଁ \'ସ୍କ୍ରିନ୍ ଆଟେନ୍ସନ୍\' ସାମ୍ନା କ୍ୟାମେରା ବ୍ୟବହାର କରେ। ଏହା ଡିଭାଇସ୍ରେ କାର୍ଯ୍ୟ କରିଥାଏ ଏବଂ ଛବିଗୁଡ଼ିକୁ କେବେ ବି ଷ୍ଟୋର୍ କରାଯାଇ ନଥାଏ କିମ୍ବା Googleକୁ ପଠାଯାଇ ନଥାଏ।"</string>
+ <string name="adaptive_sleep_description" msgid="1835321775327187860">"ଆପଣ ଏହାକୁ ଦେଖୁଥିଲେ ଆପଣଙ୍କ ସ୍କ୍ରିନ ବନ୍ଦ ହୋଇନଥାଏ"</string>
+ <string name="adaptive_sleep_privacy" msgid="7664570136417980556">"ସ୍କ୍ରିନକୁ କେହି ଦେଖୁଛନ୍ତି ନା ନାହିଁ ତାହା ଦେଖିବା ପାଇଁ \'ସ୍କ୍ରିନ ଆଟେନସନ\' ଫ୍ରଣ୍ଟ କେମେରା ବ୍ୟବହାର କରେ। ଏହା ଡିଭାଇସରେ କାର୍ଯ୍ୟ କରିଥାଏ ଏବଂ ଇମେଜଗୁଡ଼ିକୁ କେବେ ବି ଷ୍ଟୋର କରାଯାଇ ନଥାଏ କିମ୍ବା Googleକୁ ପଠାଯାଇ ନଥାଏ।"</string>
<string name="adaptive_sleep_contextual_slice_title" msgid="7467588613212629758">"ସ୍କ୍ରିନ୍ ଆଟେନସନ୍ ଚାଲୁ କରନ୍ତୁ"</string>
<string name="adaptive_sleep_contextual_slice_summary" msgid="2993867044745446094">"ସ୍କ୍ରିନକୁ ଦେଖିବା ସମୟରେ ଏହାକୁ ଚାଲୁ ରଖନ୍ତୁ"</string>
<string name="power_consumption_footer_summary" msgid="4901490700555257237">"ଅଧିକ ଲମ୍ବା ସ୍କ୍ରିନ ଟାଇମଆଉଟ ଅଧିକ ବେଟେରୀ ବ୍ୟବହାର କରିବ।"</string>
@@ -1232,7 +1229,7 @@
<string name="night_display_temperature_title" msgid="857248782470764263">"ତୀବ୍ରତା"</string>
<string name="night_display_summary_off_auto_mode_never" msgid="7406899634169354142">"ଆଦୌ ସ୍ୱଚାଳିତ ଭାବେ ଚାଲୁ ହେବନାହିଁ"</string>
<string name="night_display_summary_off_auto_mode_custom" msgid="6667008039080687931">"<xliff:g id="ID_1">%1$s</xliff:g> ରେ ସ୍ୱଚାଳିତ ଭାବେ ଅନ୍ ହେବ।"</string>
- <string name="night_display_summary_off_auto_mode_twilight" msgid="3669132200611324994">"ସୂର୍ଯ୍ୟାସ୍ତରେ ସ୍ୱଚାଳିତ ଭାବେ ଅନ୍ ହେବ।"</string>
+ <string name="night_display_summary_off_auto_mode_twilight" msgid="3669132200611324994">"ସୂର୍ଯ୍ୟାସ୍ତ ସମୟରେ ସ୍ୱତଃ ଚାଲୁ ହେବ"</string>
<string name="night_display_summary_on_auto_mode_never" msgid="832333009202889350">"କେବେ ବି ସ୍ୱତଃ ବନ୍ଦ ହେବନାହିଁ"</string>
<string name="night_display_summary_on_auto_mode_custom" msgid="2096677025343425755">"<xliff:g id="ID_1">%1$s</xliff:g> ରେ ସ୍ୱଚାଳିତ ଭାବେ ଅଫ୍ କରିବ।"</string>
<string name="night_display_summary_on_auto_mode_twilight" msgid="8070517472000680361">"ସୂର୍ଯ୍ୟଦୋୟରେ ସ୍ୱଚାଳିତ ଭାବେ ଅଫ୍ ହେବ।"</string>
@@ -1263,7 +1260,7 @@
<string name="dark_ui_bedtime_footer_action" msgid="1493095487994054339">"ଶୋଇବା ସମୟ ମୋଡ ସେଟିଂସ"</string>
<string name="even_dimmer_display_title" msgid="6731255736830410149">"ଆହୁରି ଡିମ"</string>
<string name="even_dimmer_display_summary" msgid="120301078873242172">"ସାଧାରଣ ଅପେକ୍ଷା ଅଧିକ ଡିମ ହେବା ପାଇଁ ଡିଭାଇସକୁ ଅନୁମତି ଦିଅନ୍ତୁ"</string>
- <string name="screen_timeout" msgid="7709947617767439410">"ସ୍କ୍ରିନ୍ ସମୟ ସମାପ୍ତିର ଅବଧି"</string>
+ <string name="screen_timeout" msgid="7709947617767439410">"ସ୍କ୍ରିନ ଟାଇମଆଉଟ"</string>
<string name="screen_timeout_summary" msgid="5558778019594643427">"ନିଷ୍କ୍ରିୟତାର <xliff:g id="TIMEOUT_DESCRIPTION">%1$s</xliff:g> ପରେ"</string>
<string name="screen_timeout_summary_not_set" msgid="5107680774964178875">"ସେଟ ହୋଇନାହିଁ"</string>
<string name="wallpaper_settings_title" msgid="5635129851136006383">"ୱାଲପେପର୍"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ଡିଭାଇସ ୱାଇ-ଫାଇ MAC ଠିକଣା"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ବ୍ଲୁଟୁଥ ଠିକଣା"</string>
<string name="status_serial_number" msgid="9060064164331466789">"କ୍ରମିକ ନମ୍ବର"</string>
- <string name="status_up_time" msgid="1274778533719495438">"ଚାଲୁ ରହିଥିବାର ସମୟ"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ଅପଟାଇମ"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"ଉତ୍ପାଦନ ତାରିଖ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ପ୍ରଥମ ବ୍ୟବହାରର ତାରିଖ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ସାଇକେଲ ସଂଖ୍ୟା"</string>
@@ -1559,7 +1556,7 @@
<string name="tethering_footer_info_sta_ap_concurrency" msgid="2079039077487477676">"ଆପଣଙ୍କ ୱାଇ-ଫାଇ ବା ମୋବାଇଲ ଡାଟା କନେକ୍ସନ ମାଧ୍ୟମରେ ଅନ୍ୟ ଡିଭାଇସଗୁଡ଼ିକୁ ଇଣ୍ଟରନେଟ ପ୍ରଦାନ କରିବାକୁ ହଟସ୍ପଟ ଏବଂ ଟିଥରିଂ ବ୍ୟବହାର କରନ୍ତୁ। ଆଖପାଖର ଡିଭାଇସଗୁଡ଼ିକ ସହ ବିଷୟବସ୍ତୁ ସେୟାର କରିବାକୁ ଆପ୍ସ ଏକ ହଟସ୍ପଟ ମଧ୍ୟ ତିଆରି କରିପାରିବ।"</string>
<string name="tethering_help_button_text" msgid="2823655011510912001">"ସାହାଯ୍ୟ"</string>
<string name="network_settings_title" msgid="4663717899931613176">"ମୋବାଇଲ୍ ନେଟ୍ୱାର୍କ"</string>
- <string name="sms_application_title" msgid="4791107002724108809">"SMS ଆପ୍"</string>
+ <string name="sms_application_title" msgid="4791107002724108809">"SMS ଆପ"</string>
<string name="sms_change_default_dialog_title" msgid="2343439998715457307">"SMS ଆପ୍ ବଦଳାଇବେ?"</string>
<string name="sms_change_default_dialog_text" msgid="8777606240342982531">"<xliff:g id="CURRENT_APP">%2$s</xliff:g> ବଦଳରେ <xliff:g id="NEW_APP">%1$s</xliff:g> କୁ ଆପଣଙ୍କ SMS ଆପ୍ ପରି ବ୍ୟବହାର କରିବେ?"</string>
<string name="sms_change_default_no_previous_dialog_text" msgid="6215622785087181275">"<xliff:g id="NEW_APP">%s</xliff:g> କୁ ଆପଣଙ୍କ ଏସ୍ଏମ୍ଏସ୍ ଆପ୍ ପରି ବ୍ୟବହାର କରିବେ?"</string>
@@ -1620,9 +1617,9 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"ଲୋଡ୍ ହେଉଛି…"</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"ଲୋଡ୍ କରୁଛି…"</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"ଏକ ପାସୱାର୍ଡ ସେଟ କରନ୍ତୁ"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"ଏକ ୱାର୍କ ପାସୱାର୍ଡ ସେଟ୍ କରନ୍ତୁ"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"ଏକ ୱାର୍କ ପାସୱାର୍ଡ ସେଟ କରନ୍ତୁ"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ଏକ PIN ସେଟ କରନ୍ତୁ"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ଏକ ୱାର୍କ PIN ସେଟ୍ କରନ୍ତୁ"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ଏକ ୱାର୍କ PIN ସେଟ କରନ୍ତୁ"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ଏକ ପାଟର୍ନ ସେଟ କରନ୍ତୁ"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ଅତିରିକ୍ତ ସୁରକ୍ଷା ପାଇଁ, ଡିଭାଇସ ଅନଲକ କରିବାକୁ ଏକ ପାଟର୍ନ ସେଟ କରନ୍ତୁ"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ଏକ ୱାର୍କ ପାଟର୍ନ ସେଟ୍ କରନ୍ତୁ"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ନିମ୍ନ-ଡାହାଣ କୋଣରେ ଟାପ କରନ୍ତୁ"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"ଅଧିକ ବିକଳ୍ପ ପାଇଁ ଟଚପେଡର ନିମ୍ନ ଡାହାଣ କୋଣରେ ଟାପ କରନ୍ତୁ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"ପଏଣ୍ଟରର ସ୍ପିଡ"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"ପଏଣ୍ଟର ଫିଲ ଷ୍ଟାଇଲ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"ପଏଣ୍ଟର ଫିଲ ଷ୍ଟାଇଲକୁ କଳାରେ ବଦଳାନ୍ତୁ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"ପଏଣ୍ଟର ଫିଲ ଷ୍ଟାଇଲକୁ ସବୁଜରେ ବଦଳାନ୍ତୁ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"ପଏଣ୍ଟର ଫିଲ ଷ୍ଟାଇଲ ହଳଦିଆରେ ବଦଳାନ୍ତୁ"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"ପଏଣ୍ଟର ଫିଲ ଷ୍ଟାଇଲ ଗୋଲାପିରେ ବଦଳାନ୍ତୁ"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"ପଏଣ୍ଟର ଫିଲ ଷ୍ଟାଇଲକୁ ନୀଳରେ ବଦଳାନ୍ତୁ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ଟଚପେଡର ଜେଶ୍ଚରଗୁଡ଼ିକ ବିଷୟରେ ଜାଣନ୍ତୁ"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ଟ୍ରାକପେଡ ଟ୍ରାକ ପେଡ, ମାଉସ, କର୍ସର, ସ୍କ୍ରୋଲ, ସ୍ୱାଇପ, ଡାହାଣ କ୍ଲିକ, କ୍ଲିକ, ପଏଣ୍ଟର"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ଡାହାଣ କ୍ଲିକ, ଟାପ"</string>
@@ -2573,7 +2576,7 @@
<string name="process_dex2oat_label" msgid="1190208677726583153">"ଆପ୍ ଅନୁକୁଳତା"</string>
<string name="process_network_tethering" msgid="6822671758152900766">"ଟିଥରିଂ"</string>
<string name="process_removed_apps" msgid="6544406592678476902">"କାଢ଼ି ଦିଆଯାଇଥିବା ଆପ୍ସ"</string>
- <string name="battery_saver" msgid="7737147344510595864">"ବ୍ୟାଟେରୀ ସେଭର୍"</string>
+ <string name="battery_saver" msgid="7737147344510595864">"ବେଟେରୀ ସେଭର"</string>
<string name="battery_saver_auto_title" msgid="6789753787070176144">"ସ୍ୱଚାଳିତ ଭାବେ ଚାଲୁ ହେବ"</string>
<string name="battery_saver_auto_no_schedule" msgid="5123639867350138893">"କୋଣସି ସିଡୁଲ୍ ନାହିଁ"</string>
<string name="battery_saver_auto_routine" msgid="4656495097900848608">"ଆପଣଙ୍କ ରୁଟିନ୍ ଅନୁସାରେ"</string>
@@ -2976,7 +2979,7 @@
<string name="ssl_ca_cert_info_message" msgid="3111724430981667845">"{numberOfCertificates,plural, =1{{orgName} ଆପଣଙ୍କ ୱାର୍କ ପ୍ରୋଫାଇଲ ପାଇଁ ଏକ ସାର୍ଟିଫିକେଟ ପ୍ରାଧିକରଣ ଇନଷ୍ଟଲ କରିଛନ୍ତି, ଯାହା ଇମେଲ, ଆପ୍ସ ଓ ସୁରକ୍ଷିତ ୱେବସାଇଟଗୁଡ଼ିକ ସମେତ, ୱାର୍କ ନେଟୱାର୍କର କାର୍ଯ୍ୟକଳାପକୁ ମନିଟର କରିବା ପାଇଁ ତାଙ୍କୁ ଅନୁମତି ଦେଇପାରେ।\n\nଏହି ସାର୍ଟିଫିକେଟ ବିଷୟରେ ଅଧିକ ସୂଚନା ପାଇଁ ଆପଣଙ୍କ ଆଡମିନଙ୍କ ସହ କଣ୍ଟାକ୍ଟ କରନ୍ତୁ।}other{{orgName} ଆପଣଙ୍କ ୱାର୍କ ପ୍ରୋଫାଇଲ ପାଇଁ ଏକ ସାର୍ଟିଫିକେଟ ପ୍ରାଧିକରଣ ଇନଷ୍ଟଲ କରିଛନ୍ତି, ଯାହା ଇମେଲ, ଆପ୍ସ ଓ ସୁରକ୍ଷିତ ୱେବସାଇଟଗୁଡ଼ିକ ସମେତ, ୱାର୍କ ନେଟୱାର୍କର କାର୍ଯ୍ୟକଳାପକୁ ମନିଟର କରିବା ପାଇଁ ତାଙ୍କୁ ଅନୁମତି ଦେଇପାରେ।\n\nଏହି ସାର୍ଟିଫିକେଟଗୁଡ଼ିକ ବିଷୟରେ ଅଧିକ ସୂଚନା ପାଇଁ ଆପଣଙ୍କ ଆଡମିନଙ୍କ ସହ କଣ୍ଟାକ୍ଟ କରନ୍ତୁ।}}"</string>
<string name="ssl_ca_cert_warning_message" msgid="4374052724815563051">"ଇମେଲ୍, ଆପ୍ ଏବଂ ନିରାପଦ ୱେବ୍ସାଇଟ୍ଗୁଡ଼ିକ ଅନ୍ତର୍ଭୂକ୍ତ କରି ଏକ ତୃତୀୟ ପକ୍ଷ ଆପଣଙ୍କ ନେଟୱାର୍କ୍ ଗତିବିଧି ମନିଟର୍ କରିପାରିବେ।\n\nଆପଣଙ୍କ ଡିଭାଇସ୍ରେ ଇନ୍ଷ୍ଟଲ୍ କରାଯାଇଥିବା ତଥ୍ୟ ଏହା କରାଇବାରେ ସମ୍ଭବ କରାଉଛି।"</string>
<string name="ssl_ca_cert_settings_button" msgid="2044927302268394991">"{count,plural, =1{ସାର୍ଟିଫିକେଟକୁ ଯାଞ୍ଚ କରନ୍ତୁ}other{ସାର୍ଟିଫିକେଟଗୁଡ଼ିକୁ ଯାଞ୍ଚ କରନ୍ତୁ}}"</string>
- <string name="user_settings_title" msgid="9208831545558787202">"ୟୁଜରମାନେ"</string>
+ <string name="user_settings_title" msgid="9208831545558787202">"ୟୁଜର"</string>
<string name="user_list_title" msgid="1387379079186123404">"ୟୁଜର ଓ ପ୍ରୋଫାଇଲ"</string>
<string name="user_add_user_or_profile_menu" msgid="305851380425838287">"ୟୁଜର୍ ବା ପ୍ରୋଫାଇଲ ଯୋଡ଼ନ୍ତୁ"</string>
<string name="user_summary_restricted_profile" msgid="451650609582185813">"ପ୍ରତିବନ୍ଧିତ ପ୍ରୋଫାଇଲ୍"</string>
@@ -3308,7 +3311,7 @@
<string name="emergency_tone_alert" msgid="1977698889522966589">"ଟୋନ୍"</string>
<string name="emergency_tone_vibrate" msgid="6282296789406984698">"କମ୍ପନ"</string>
<string name="boot_sounds_title" msgid="5033062848948884111">"ଚାଲୁ ହେବାର ଶବ୍ଦ"</string>
- <string name="live_caption_title" msgid="8617086825712756983">"ଲାଇଭ କ୍ୟାପ୍ସନ"</string>
+ <string name="live_caption_title" msgid="8617086825712756983">"ଲାଇଭ କେପ୍ସନ"</string>
<string name="live_caption_summary" msgid="2898451867595161809">"ସ୍ୱତଃ କେପସନ ମିଡିଆ"</string>
<string name="spatial_audio_wired_headphones" msgid="2237355789145828648">"ତାରଯୁକ୍ତ ହେଡଫୋନଗୁଡ଼ିକ"</string>
<string name="spatial_audio_text" msgid="8201387855375146000">"କମ୍ପାଟିବଲ ମିଡିଆରୁ ଆସିଥିବା ଅଡିଓ ଅଧିକ ଇମର୍ସିଭ ହୋଇଥାଏ"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{କିଛି ନାହିଁ}=1{1ଟି ସିଡୁଲ୍ ସେଟ୍ ହୋଇଛି}other{#ଟି ସିଡୁଲ୍ ସେଟ୍ ହୋଇଛି}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ବିରକ୍ତ କରନ୍ତୁ ନାହିଁ"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ପ୍ରାଥମିକତା ମୋଡ"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"କେବଳ ଗୁରୁତ୍ଵପୂର୍ଣ୍ଣ ଲୋକ ଏବଂ ଆପ୍ସ ଦ୍ୱାରା ସୂଚନା ପାଆନ୍ତୁ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"ବ୍ୟାଘାତଗୁଡ଼ିକୁ ସୀମିତ କରନ୍ତୁ"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\"ବିରକ୍ତ କରନ୍ତୁ ନାହିଁ\" ଅନ୍ କରନ୍ତୁ"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"ଏଡିଟ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"ସିଡୁଲ୍"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"ସିଡୁଲ୍"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"ସ୍ୱଚାଳିତ ଭାବେ ଚାଲୁ ହୋଇଥାଏ"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"ଏକ କେଲେଣ୍ଡର ଯୋଗ କରନ୍ତୁ"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ଆପଣଙ୍କ କେଲେଣ୍ଡରକୁ ବ୍ୟବହାର କରନ୍ତୁ"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"ସିଡୁଲ"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"ସିଡୁଲ୍"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ନିର୍ଦ୍ଦିଷ୍ଟ ସମୟରେ ଫୋନ୍କୁ ନିରବ କରନ୍ତୁ"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"ଏହି ଆପ ଉନ୍ନତ ସେଟିଂସକୁ ସମର୍ଥନ କରେ ନାହିଁ"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"ଅଧିକ ସେଟିଂସ"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"ଏହି ଆପରେ ଅଧିକ ସେଟିଂସ ଉପଲବ୍ଧ ଅଛି"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"କୁଲଡାଉନ"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"କୁଲଡାଉନ ବ୍ୟବହାର କରନ୍ତୁ"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"ଆପଣ ଅଳ୍ପ ସମୟ ମଧ୍ୟରେ ଅନେକ ବିଜ୍ଞପ୍ତି ପାଇଲେ, ଆପଣଙ୍କ ଡିଭାଇସ ସ୍କ୍ରିନରେ ସାଉଣ୍ଡ ସମ୍ବନ୍ଧିତ ବାଧା ଏବଂ ପପ-ଅପକୁ ହ୍ରାସ କରିବ। କଲ, ଆଲାରାମ ଏବଂ ପ୍ରାଥମିକତା ବାର୍ତ୍ତାଳାପଗୁଡ଼ିକ ପାଇଁ ଏବେ ବି ସ୍ୱାଭାବିକ ଭାବେ ଆଲର୍ଟ କରାଯିବ ଏବଂ ଡେଲିଭର କରାଯାଇଥିବା ସମସ୍ତ ବିଜ୍ଞପ୍ତି ଶେଡରେ ଖୋଜିବା ସହଜ ଅଟେ।"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ୱାର୍କ ପ୍ରୋଫାଇଲରେ ଲାଗୁ କରନ୍ତୁ"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ୱାର୍କ ପ୍ରୋଫାଇଲ ଆପ୍ସରେ ଲାଗୁ କରନ୍ତୁ"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR ସାହାଯ୍ୟକାରୀ ସେବାଗୁଡ଼ିକ"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"ଚୟନିତ ଆପ୍ସ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"କିଛି ନାହିଁ"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ସମସ୍ତ"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ନିଷ୍କ୍ରିୟ କରିବାକୁ ଆପ୍ସକୁ ଅନୁମତି ଦିଅନ୍ତୁ"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ବାଧା ସୃଷ୍ଟି କରିପାରୁଥିବା ଆପଗୁଡ଼ିକ"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"ଅଧିକ ଆପ୍ ଚୟନ କରନ୍ତୁ"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} ପର୍ଯ୍ୟନ୍ତ କେବଳ ଏକ ଘଣ୍ଟା ପାଇଁ ଆଲାରାମରେ ପରିବର୍ତ୍ତନ କରନ୍ତୁ}other{{time} ପର୍ଯ୍ୟନ୍ତ କେବଳ # ଘଣ୍ଟା ପାଇଁ ଆଲାରାମରେ ପରିବର୍ତ୍ତନ କରନ୍ତୁ}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> ପର୍ଯ୍ୟନ୍ତ କେବଳ ଆଲାର୍ମଗୁଡିକ ପରିବର୍ତ୍ତନ କରନ୍ତୁ"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ସର୍ବଦା ବାଧାକୁ ବଦଳାନ୍ତୁ"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"ଚେତାବନୀ"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"ବନ୍ଦ କରନ୍ତୁ"</string>
<string name="device_feedback" msgid="5351614458411688608">"ଏହି ଡିଭାଇସ ବିଷୟରେ ମତାମତ ପଠାନ୍ତୁ"</string>
@@ -4425,7 +4443,7 @@
<string name="storage_documents" msgid="7873134307844320096">"ଡକ୍ୟୁମେଣ୍ଟଗୁଡ଼ିକ"</string>
<string name="storage_other" msgid="7922190148479988838">"ଅନ୍ୟ"</string>
<string name="storage_apps" msgid="3564291603258795216">"ଆପ୍ସ"</string>
- <string name="storage_system" msgid="8472410119822911844">"ସିଷ୍ଟମ୍"</string>
+ <string name="storage_system" msgid="8472410119822911844">"ସିଷ୍ଟମ"</string>
<string name="storage_os_name" msgid="4637680493234672410">"Android <xliff:g id="VERSION">%s</xliff:g>"</string>
<string name="storage_temporary_files" msgid="8254109904032452219">"ଅସ୍ଥାୟୀ ସିଷ୍ଟମ ଫାଇଲଗୁଡ଼ିକ"</string>
<string name="storage_trash" msgid="2807138998886084856">"ଟ୍ରାସ୍"</string>
@@ -4480,7 +4498,7 @@
<string name="autofill_max_visible_datasets" msgid="4970201981694392229">"ସର୍ବାଧିକ ଦେଖାଯାଉଥିବା ଡାଟାସେଟଗୁଡ଼ିକ"</string>
<string name="autofill_reset_developer_options" msgid="6425613608979498608">"ଡିଫଲ୍ଟ ମୂଲ୍ୟକୁ ରିସେଟ୍ କରନ୍ତୁ"</string>
<string name="autofill_reset_developer_options_complete" msgid="1276741935956594965">"ଅଟୋଫିଲ୍ ଡେଭଲପର୍ ବିକଳ୍ପଗୁଡିକ ରିସେଟ୍ ହୋଇଛି"</string>
- <string name="location_category" msgid="3496759112306219062">"ଲୋକେସନ୍"</string>
+ <string name="location_category" msgid="3496759112306219062">"ଲୋକେସନ"</string>
<string name="location_indicator_settings_title" msgid="6655916258720093451">"ଷ୍ଟାଟସ୍ ବାରରେ ଲୋକେସନ୍ ସୂଚକ"</string>
<string name="location_indicator_settings_description" msgid="2888022085372804021">"ନେଟୱାର୍କ ଏବଂ ସଂଯୋଗ ସମେତ, ସମସ୍ତ ଲୋକେସନ୍ ଦେଖାନ୍ତୁ"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1206679951510243341">"ପୂର୍ଣ୍ଣ GNSS ପରିମାପ ବାଧ୍ୟ କରନ୍ତୁ"</string>
@@ -4786,6 +4804,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ବାମ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ଡାହାଣ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"କେସ୍"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ବେଟେରୀ"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ସେଟିଂସ ପ୍ୟାନେଲ"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ଫୋର୍ସ ଡେସ୍କଟପ୍ ମୋଡ୍"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ଦ୍ବିତୀୟ ପ୍ରଦର୍ଶନରେ ଫୋର୍ସ ପରୀକ୍ଷାମୂଳକ ମୋଡ୍"</string>
@@ -4969,7 +4988,7 @@
<string name="mobile_data_temp_using" msgid="5211002380149434155">"ଅସ୍ଥାୟୀ ରୂପେ <xliff:g id="SUBNAME">%1$s</xliff:g>କୁ ବ୍ୟବହାର କରୁଛି"</string>
<string name="mobile_data_no_connection" msgid="905897142426974030">"ସଂଯୋଗ ନାହିଁ"</string>
<string name="mobile_data_off_summary" msgid="1884248776904165539">"ମୋବାଇଲ ଡାଟା ସ୍ୱତଃ-କନେକ୍ଟ ହେବ ନାହିଁ"</string>
- <string name="mobile_data_disable_title" msgid="8438714772256088913">"ମୋବାଇଲ୍ ଡାଟା ବନ୍ଦ କରିବେ?"</string>
+ <string name="mobile_data_disable_title" msgid="8438714772256088913">"ମୋବାଇଲ ଡାଟା ବନ୍ଦ କରିବେ?"</string>
<string name="mobile_data_disable_message" msgid="7829414836454769970">"<xliff:g id="CARRIER">%s</xliff:g> ମାଧ୍ୟମରେ ଡାଟା କିମ୍ବା ଇଣ୍ଟରନେଟକୁ ଆପଣଙ୍କର ଆକ୍ସେସ୍ ରହିବ ନାହିଁ। କେବଳ ୱାଇ-ଫାଇ ମାଧ୍ୟମରେ ଇଣ୍ଟରନେଟ୍ ଉପଲବ୍ଧ ହେବ।"</string>
<string name="mobile_data_disable_message_default_carrier" msgid="4449469407705838612">"ଆପଣଙ୍କ କ୍ୟାରିଅର୍"</string>
<string name="not_allowed_by_ent" msgid="1958611623122304411">"ଆପଣଙ୍କ ସଂସ୍ଥା ଦ୍ୱାରା ଅନୁମତି ଦିଆଯାଇ ନାହିଁ"</string>
@@ -5103,7 +5122,7 @@
<string name="dream_complications_toggle_title" msgid="4273232303027449163">"ଅତିରିକ୍ତ ସୂଚନା ଦେଖାନ୍ତୁ"</string>
<string name="dream_complications_toggle_summary" msgid="8088911054987524904">"ସମୟ, ପାଣିପାଗ କିମ୍ବା ଅନ୍ୟ ସୂଚନା ପରି ବିଷୟଗୁଡ଼ିକୁ ସ୍କ୍ରିନ ସେଭରରେ ଡିସପ୍ଲେ କରନ୍ତୁ"</string>
<string name="dream_home_controls_toggle_title" msgid="706799741564479248">"ହୋମ କଣ୍ଟ୍ରୋଲ୍ସ ଦେଖାନ୍ତୁ"</string>
- <string name="dream_home_controls_toggle_summary" msgid="4102519907917430579">"ସ୍କ୍ରିନ ସେଭରରୁ ହୋମ କଣ୍ଟ୍ରୋଲ୍ସ ବଟନ ଦେଖାନ୍ତୁ"</string>
+ <string name="dream_home_controls_toggle_summary" msgid="4102519907917430579">"ସ୍କ୍ରିନ ସେଭରରୁ ହୋମ କଣ୍ଟ୍ରୋଲ ବଟନ ଦେଖାନ୍ତୁ"</string>
<string name="dream_more_settings_category" msgid="3119192146760773748">"ଅଧିକ ସେଟିଂସ"</string>
<string name="dream_setup_title" msgid="2458303874255396142">"ଆପଣଙ୍କ ସ୍କ୍ରିନ ସେଭର ବାଛନ୍ତୁ"</string>
<string name="dream_setup_description" msgid="7508547154038580296">"ଆପଣଙ୍କ ଟାବଲେଟକୁ ଡକ କରାଯାଇଥିବା ସମୟରେ ଆପଣ ଆପଣଙ୍କ ସ୍କ୍ରିନରେ କଣ ଦେଖିବେ ତାହା ବାଛନ୍ତୁ। ଏକ ସ୍କ୍ରିନ ସେଭର ବ୍ୟବହାର କରାଯିବା ସମୟରେ ଆପଣଙ୍କ ଡିଭାଇସ ଅଧିକ ଏନର୍ଜି ବ୍ୟବହାର କରିପାରେ।"</string>
diff --git a/res/values-pa/arrays.xml b/res/values-pa/arrays.xml
index 679294d..d0fad2b 100644
--- a/res/values-pa/arrays.xml
+++ b/res/values-pa/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index 6aee667..34fc579 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"ਕੀ ਡੀਵਾਈਸ ਡਿਸਕਨੈਕਟ ਕਰਨਾ ਹੈ?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"ਨਵਾਂ ਡੀਵਾਈਸ ਜੋੜਾਬੱਧ ਕਰੋ"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"ਬਲੂਟੁੱਥ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"ਕੱਲ੍ਹ ਨੂੰ ਆਪਣੇ ਆਪ ਦੁਬਾਰਾ ਚਾਲੂ ਹੋ ਜਾਵੇਗਾ"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"ਸੱਜਾ ਕੰਨ ਜੋੜਾਬੱਧ ਕਰੋ"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ਖੱਬਾ ਕੰਨ ਜੋੜਾਬੱਧ ਕਰੋ"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"ਆਪਣਾ ਦੂਜਾ ਕੰਨ ਜੋੜਾਬੱਧ ਕਰੋ"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ਖੱਬਾ ਕੰਨ ਜੋੜਾਬੱਧ ਕਰੋ"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ਸੁਣਨ ਵਾਲੇ ਡੀਵਾਈਸ ਸੰਬੰਧੀ ਸੈਟਿੰਗਾਂ"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ਸ਼ਾਰਟਕੱਟ, ਸੁਣਨ ਦੇ ਸਾਧਨ ਦੀ ਅਨੁਰੂਪਤਾ"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"ਪ੍ਰੀਸੈੱਟ"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ਪ੍ਰੀਸੈੱਟ"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"ਪ੍ਰੀਸੈੱਟ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ਆਡੀਓ ਆਊਟਪੁੱਟ"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ਆਡੀਓ ਆਊਟਪੁੱਟ ਬਾਰੇ"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ਰੱਦ ਕਰੋ"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"ਨਹੀਂ ਧੰਨਵਾਦ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ਹਾਲੇ ਨਹੀਂ"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ਮੈਂ ਸਹਿਮਤ ਹਾਂ"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"ਹੋਰ"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ਆਪਣੇ ਚਿਹਰੇ ਨਾਲ ਅਣਲਾਕ ਕਰੋ"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"ਧਿਆਨ ਵਿੱਚ ਰੱਖੋ"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"ਆਪਣੇ ਫ਼ੋਨ ਨੂੰ ਅਣਲਾਕ ਕਰਨ ਜਾਂ ਖਰੀਦਾਂ ਨੂੰ ਮਨਜ਼ੂਰ ਕਰਨ ਲਈ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੀ ਵਰਤੋਂ ਕਰੋ। \n\nਨੋਟ ਕਰੋ: ਤੁਸੀਂ ਇਸ ਡੀਵਾਈਸ ਨੂੰ ਅਣਲਾਕ ਕਰਨ ਲਈ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਸਕਦੇ। ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ, ਆਪਣੇ ਸੰਗਠਨ ਦੇ ਪ੍ਰਸ਼ਾਸਕ ਨਾਲ ਸੰਪਰਕ ਕਰੋ।"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ਰੱਦ ਕਰੋ"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"ਨਹੀਂ ਧੰਨਵਾਦ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ਹਾਲੇ ਨਹੀਂ"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ਮੈਂ ਸਹਿਮਤ ਹਾਂ"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ਕੀ ਫਿੰਗਰਪ੍ਰਿੰਟ ਛੱਡਣਾ ਹੈ?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈੱਟਅੱਪ ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ ਜਾਂ ਦੋ ਮਿੰਟ ਲੱਗਦੇ ਹਨ। ਜੇਕਰ ਤੁਸੀਂ ਇਸ ਨੂੰ ਛੱਡ ਦਿੰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਬਾਅਦ ਵਿੱਚ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਜਾ ਕੇ ਆਪਣਾ ਫਿੰਗਰਪ੍ਰਿੰਟ ਸ਼ਾਮਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"ਇਹ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਤੁਹਾਡੀ ਪਛਾਣ ਕਰਨ ਲਈ ਤੁਹਾਡੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦਾ ਇੱਕ ਵਿਲੱਖਣ ਮਾਡਲ ਬਣਾਉਂਦਾ ਹੈ। ਸੈੱਟਅੱਪ ਦੌਰਾਨ ਇਸ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਮਾਡਲ ਨੂੰ ਬਣਾਉਣ ਲਈ, ਤੁਸੀਂ ਵੱਖ-ਵੱਖ ਕੋਣਾਂ ਤੋਂ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਚਿੱਤਰ ਲਓਗੇ।"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਤੁਹਾਡੇ ਬੱਚੇ ਦੀ ਪਛਾਣ ਕਰਨ ਲਈ ਉਸਦੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦਾ ਇੱਕ ਵਿਲੱਖਣ ਮਾਡਲ ਬਣਾਉਂਦਾ ਹੈ। ਸੈੱਟਅੱਪ ਦੌਰਾਨ ਇਸ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਮਾਡਲ ਨੂੰ ਬਣਾਉਣ ਲਈ, ਉਹ ਵੱਖ-ਵੱਖ ਕੋਣਾਂ ਤੋਂ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਚਿੱਤਰ ਲਵੇਗਾ।"</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ਬਿਹਤਰੀਨ ਨਤੀਜਿਆਂ ਲਈ, Made for Google ਵੱਲੋਂ ਪ੍ਰਮਾਣਿਤ ਸਕ੍ਰੀਨ ਗਾਰਡ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਦੂਜੇ ਸਕ੍ਰੀਨ ਗਾਰਡਾਂ ਨਾਲ ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡਾ ਫਿੰਗਰਪ੍ਰਿੰਟ ਕੰਮ ਨਾ ਕਰੇ।"</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ਬਿਹਤਰੀਨ ਨਤੀਜਿਆਂ ਲਈ, Made for Google ਵੱਲੋਂ ਪ੍ਰਮਾਣਿਤ ਸਕ੍ਰੀਨ ਗਾਰਡ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਹੋਰ ਸਕ੍ਰੀਨ ਗਾਰਡਾਂ ਨਾਲ, ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡਾ ਫਿੰਗਰਪ੍ਰਿੰਟ ਕੰਮ ਨਾ ਕਰੇ।"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ਬਿਹਤਰੀਨ ਨਤੀਜਿਆਂ ਲਈ, Made for Google ਵੱਲੋਂ ਪ੍ਰਮਾਣਿਤ ਸਕ੍ਰੀਨ ਗਾਰਡ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਦੂਜੇ ਸਕ੍ਰੀਨ ਗਾਰਡਾਂ ਨਾਲ ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡੇ ਬੱਚੇ ਦਾ ਫਿੰਗਰਪ੍ਰਿੰਟ ਕੰਮ ਨਾ ਕਰੇ।"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"ਵਾਚ ਅਣਲਾਕ"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ਹਰ ਵਾਰ ਡੀਵਾਈਸ ਦੇ ਲਾਕ ਹੋਣ \'ਤੇ"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"ਸਕ੍ਰੀਨ ਸਮਾਂ ਸਮਾਪਤ ਦੇ 5 ਮਿੰਟ ਬਾਅਦ"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"ਸਿਰਫ਼ ਡੀਵਾਈਸ ਦੇ ਮੁੜ-ਚਾਲੂ ਹੋਣ \'ਤੇ"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"ਜੇ ਤੁਸੀਂ ਆਪਣੇ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਈ ਵੱਖਰੇ ਲਾਕ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਆਪਣੇ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਵਿੱਚ ਐਪਾਂ ਖੋਲ੍ਹਣ ਲਈ ਆਪਣੀ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ।"</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲੁਕਾਉਣਾ"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਾਕ ਹੋਣ \'ਤੇ ਇਸਨੂੰ ਲੁਕਾਉਣਾ"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"ਹੋਰ ਲੋਕਾਂ ਤੋਂ ਤੁਹਾਡੇ ਡੀਵਾਈਸ \'ਤੇ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਦੀ ਮੌਜੂਦਗੀ ਨੂੰ ਲੁਕਾਉਣ ਲਈ, ਤੁਸੀਂ ਇਸਨੂੰ ਆਪਣੀ ਐਪ ਸੂਚੀ ਤੋਂ ਲੁਕਾ ਸਕਦੇ ਹੋ"</string>
@@ -601,18 +601,23 @@
<string name="private_space_delete_failed" msgid="7705795653796174741">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨੂੰ ਮਿਟਾਇਆ ਨਹੀਂ ਜਾ ਸਕਿਆ"</string>
<string name="private_space_unlocked" msgid="9091600948712932046">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਅਣਲਾਕ ਕੀਤਾ ਗਿਆ"</string>
<string name="no_device_lock_title" msgid="1078223464721029954">"ਸਕ੍ਰੀਨ ਲਾਕ ਸੈੱਟ ਕਰੋ"</string>
- <string name="no_device_lock_summary" msgid="7436025227616244687">"ਆਪਣੀ ਨਿੱਜੀ ਸਪੇਸ ਵਰਤਣ ਲਈ, ਇਸ ਡੀਵਾਈਸ \'ਤੇ ਸਕ੍ਰੀਨ ਲਾਕ ਸੈੱਟ ਕਰੋ"</string>
+ <string name="no_device_lock_summary" msgid="7436025227616244687">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਵਰਤਣ ਲਈ, ਇਸ ਡੀਵਾਈਸ \'ਤੇ ਸਕ੍ਰੀਨ ਲਾਕ ਸੈੱਟ ਕਰੋ"</string>
<string name="no_device_lock_action_label" msgid="2640487005629001288">"ਸਕ੍ਰੀਨ ਲਾਕ ਸੈੱਟ ਕਰੋ"</string>
<string name="no_device_lock_cancel" msgid="4412602160321228863">"ਰੱਦ ਕਰੋ"</string>
<string name="private_space_cancel_label" msgid="379259667396956886">"ਰੱਦ ਕਰੋ"</string>
<string name="private_space_setup_button_label" msgid="2094882154623560585">"ਸੈੱਟਅੱਪ ਕਰੋ"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ"</string>
- <string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ਨਿੱਜੀ ਐਪਾਂ ਨੂੰ ਕਿਸੇ ਵੱਖਰੀ ਸਪੇਸ \'ਤੇ ਲੁਕਾਓ ਜਾਂ ਲਾਕ ਕਰੋ। ਵਾਧੂ ਸੁਰੱਖਿਆ ਲਈ ਸਮਰਪਿਤ Google ਖਾਤਾ ਵਰਤੋ।"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਦਾ ਸੈੱਟਅੱਪ ਕਰੋ"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"ਆਪਣੀ ਸਪੇਸ ਲਈ Google ਖਾਤਾ ਵਰਤੋਂ"</b>\n"ਸਮਰਪਿਤ ਖਾਤਾ ਵਰਤਣ ਨਾਲ ਸਿੰਕ ਕੀਤੀਆਂ ਫ਼ਾਈਲਾਂ, ਫ਼ੋਟੋਆਂ ਅਤੇ ਈਮੇਲਾਂ ਨੂੰ ਤੁਹਾਡੀ ਸਪੇਸ ਤੋਂ ਬਾਹਰ ਦਿਸਣ ਤੋਂ ਰੋਕਣ ਵਿੱਚ ਮਦਦ ਮਿਲਦੀ ਹੈ"</string>
+ <string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ਪ੍ਰਾਈਵੇਟ ਐਪਾਂ ਨੂੰ ਕਿਸੇ ਵੱਖਰੀ ਸਪੇਸ \'ਤੇ ਲੁਕਾਓ ਜਾਂ ਲਾਕ ਕਰੋ। ਵਾਧੂ ਸੁਰੱਖਿਆ ਲਈ ਸਮਰਪਿਤ Google ਖਾਤਾ ਵਰਤੋ।"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"ਇਸਦੇ ਕੰਮ ਕਰਨ ਦਾ ਤਰੀਕਾ"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"ਆਪਣੀ ਸਪੇਸ ਲਈ ਇੱਕ Google ਖਾਤਾ ਬਣਾਓ"</b>\n"ਜੇ ਤੁਸੀਂ ਇੱਕ ਸਮਰਪਿਤ ਖਾਤਾ ਵਰਤਦੇ ਹੋ, ਤਾਂ ਇਹ ਸਿੰਕ ਕੀਤੀਆਂ ਫ਼ਾਈਲਾਂ, ਫ਼ੋਟੋਆਂ ਅਤੇ ਈਮੇਲਾਂ ਨੂੰ ਤੁਹਾਡੀ ਸਪੇਸ ਤੋਂ ਬਾਹਰ ਦਿਖਾਈ ਦੇਣ ਤੋਂ ਰੋਕਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ਲਾਕ ਸੈੱਟ ਕਰੋ"</b>\n"ਆਪਣੀ ਸਪੇਸ ਨੂੰ ਲਾਕ ਕਰੋ ਤਾਂ ਜੋ ਹੋਰ ਲੋਕਾਂ ਨੂੰ ਇਸਨੂੰ ਖੋਲ੍ਹਣ ਤੋਂ ਰੋਕਿਆ ਜਾ ਸਕੇ"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ਐਪਾਂ ਨੂੰ ਸਥਾਪਤ ਕਰੋ"</b>\n"ਤੁਹਾਡੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਕੋਲ ਆਪਣਾ ਖੁਦ ਦਾ Play Store ਹੈ, ਇਸ ਲਈ ਤੁਸੀਂ ਆਸਾਨੀ ਨਾਲ ਐਪਾਂ ਨੂੰ ਸਥਾਪਤ ਕਰ ਸਕਦੇ ਹੋ।"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"ਤੁਹਾਡੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਾਕ ਹੋਣ \'ਤੇ ਇਜਾਜ਼ਤ ਪ੍ਰਬੰਧਕ, ਪਰਦੇਦਾਰੀ ਸੰਬੰਧੀ ਡੈਸ਼ਬੋਰਡ ਅਤੇ ਹੋਰ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਵਿਚਲੀਆਂ ਐਪਾਂ ਦਿਖਾਈ ਨਹੀਂ ਦੇਣਗੀਆਂ।\n\nਤੁਹਾਡੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨੂੰ ਨਵੇਂ ਡੀਵਾਈਸ \'ਤੇ ਮੁੜ-ਬਹਾਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। ਜੇ ਤੁਸੀਂ ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨੂੰ ਕਿਸੇ ਹੋਰ ਡੀਵਾਈਸ \'ਤੇ ਵਰਤਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਇੱਕ ਹੋਰ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਦਾ ਸੈੱਟਅੱਪ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ।\n\nਜਦੋਂ ਕੋਈ ਵਿਅਕਤੀ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਨੂੰ ਕਿਸੇ ਕੰਪਿਊਟਰ ਨਾਲ ਕਨੈਕਟ ਕਰਦਾ ਹੈ ਜਾਂ ਤੁਹਾਡੇ ਡੀਵਾਈਸ \'ਤੇ ਨੁਕਸਾਨਦੇਹ ਐਪਾਂ ਦੀ ਸਥਾਪਨਾ ਕਰਦਾ ਹੈ, ਤਾਂ ਉਹ ਤੁਹਾਡੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਤੱਕ ਪਹੁੰਚ ਕਰ ਸਕਦਾ ਹੈ।"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ਐਪਾਂ ਸਥਾਪਤ ਕਰੋ"</b>\n"ਉਨ੍ਹਾਂ ਐਪਾਂ ਨੂੰ ਸਥਾਪਤ ਕਰੋ ਜਿਨ੍ਹਾਂ ਨੂੰ ਤੁਸੀਂ ਆਪਣੀ ਸਪੇਸ ਵਿੱਚ ਪ੍ਰਾਈਵੇਟ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹੋ"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ਧਿਆਨ ਵਿੱਚ ਰੱਖੋ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"ਜਦੋਂ ਤੁਸੀਂ ਆਪਣੀ ਸਪੇਸ ਨੂੰ ਲਾਕ ਕਰ ਦਿੰਦੇ ਹੋ, ਤਾਂ ਐਪਾਂ ਬੰਦ ਹੋ ਜਾਂਦੀਆਂ ਹਨ"</b>\n"ਜਦੋਂ ਤੁਸੀਂ ਆਪਣੀ ਸਪੇਸ ਨੂੰ ਲਾਕ ਕਰ ਦਿੰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਡੀ ਸਪੇਸ ਵਿਚਲੀਆਂ ਐਪਾਂ ਬੰਦ ਹੋ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ ਤੁਹਾਨੂੰ ਉਨ੍ਹਾਂ ਤੋਂ ਸੂਚਨਾਵਾਂ ਪ੍ਰਾਪਤ ਨਹੀਂ ਹੋਣਗੀਆਂ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਬਾਰੇ ਹੋਰ ਜਾਣੋ"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"ਇਸ ਵਿੱਚ ਕੁਝ ਸਮਾਂ ਲੱਗੇਗਾ"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਦਾ ਸੈੱਟਅੱਪ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"ਤੁਸੀਂ ਬਸ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਈ ਨਵੇਂ ਲਾਕ ਨੂੰ ਸੈੱਟ ਕਰ ਸਕਦੇ ਹੋ ਜਾਂ ਬਿਲਕੁਲ ਉਹੀ ਲਾਕ ਵਰਤੋ ਜੋ ਤੁਸੀਂ ਆਪਣੇ ਡੀਵਾਈਸ ਨੂੰ ਅਣਲਾਕ ਕਰਨ ਲਈ ਵਰਤਦੇ ਹੋ"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ਸਕ੍ਰੀਨ ਲਾਕ ਵਰਤੋ"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"ਨਵਾਂ ਲਾਕ ਚੁਣੋ"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ਬਸ ਇੱਕ ਸਕਿੰਟ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ਬਸ ਇੱਕ ਸਕਿੰਟ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"ਸਭ ਹੋ ਗਿਆ!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲੱਭਣ ਲਈ, ਆਪਣੀ ਐਪ ਸੂਚੀ \'ਤੇ ਜਾ ਕੇ ਹੇਠਾਂ ਵੱਲ ਸਕ੍ਰੋਲ ਕਰੋ"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"ਹੋ ਗਿਆ"</string>
@@ -631,19 +636,11 @@
<string name="private_space_retry_summary" msgid="1920444015972648774">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨਾਲ ਵਰਤਣ ਲਈ ਖਾਤੇ ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰੋ"</string>
<string name="private_space_skip_login_label" msgid="7078019409056628192">"ਹਾਲੇ ਨਹੀਂ"</string>
<string name="private_space_continue_login_label" msgid="7779965766333065391">"ਜਾਰੀ ਰੱਖੋ"</string>
- <string name="private_space_lock_setup_title" msgid="6541564212199510787">"ਆਪਣੀ ਨਿੱਜੀ ਸਪੇਸ ਲਈ ਲਾਕ ਚੁਣੋ"</string>
+ <string name="private_space_lock_setup_title" msgid="6541564212199510787">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਈ ਲਾਕ ਚੁਣੋ"</string>
<string name="private_space_lock_setup_description" msgid="423405593476300918">"ਤੁਸੀਂ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੀ ਵਰਤੋਂ ਕਰ ਕੇ ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨੂੰ ਅਣਲਾਕ ਕਰ ਸਕਦੇ ਹੋ। ਸੁਰੱਖਿਆ ਲਈ, ਇਸ ਵਿਕਲਪ ਨੂੰ ਬੈਕਅੱਪ ਲਾਕ ਦੀ ਲੋੜ ਹੈ।"</string>
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਈ ਪਿੰਨ ਸੈੱਟ ਕਰੋ"</string>
- <string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ਆਪਣੀ ਨਿੱਜੀ ਸਪੇਸ ਲਈ ਪਾਸਵਰਡ ਸੈੱਟ ਕਰੋ"</string>
- <string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ਆਪਣੀ ਨਿੱਜੀ ਸਪੇਸ ਲਈ ਪੈਟਰਨ ਸੈੱਟ ਕਰੋ"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"ਆਪਣੇ ਡਾਟੇ ਨੂੰ ਨਿੱਜੀ ਰੱਖਣ ਵਿੱਚ ਮਦਦ ਲਈ Google ਖਾਤਾ ਬਣਾਓ"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"ਅਗਲੀ ਸਕ੍ਰੀਨ ’ਤੇ, ਤੁਸੀਂ ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨਾਲ ਵਰਤਣ ਲਈ ਕਿਸੇ ਖਾਤੇ ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰ ਸਕਦੇ ਹੋ"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"ਡਾਟੇ ਨੂੰ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਤੋਂ ਬਾਹਰ ਦਿਸਣ ਤੋਂ ਰੋਕਣ ਵਿੱਚ ਮਦਦ ਲਈ ਸਮਰਪਿਤ ਖਾਤਾ ਬਣਾਓ, ਜਿਵੇਂ ਕਿ:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"ਸਿੰਕ ਕੀਤੀਆਂ ਫ਼ੋਟੋਆਂ, ਫ਼ਾਈਲਾਂ, ਈਮੇਲਾਂ, ਸੰਪਰਕ, ਕੈਲੰਡਰ ਇਵੈਂਟ ਅਤੇ ਹੋਰ ਡਾਟਾ"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ਐਪ ਡਾਊਨਲੋਡ ਇਤਿਹਾਸ ਅਤੇ ਸਿਫ਼ਾਰਸ਼ਾਂ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ਬ੍ਰਾਊਜ਼ਿੰਗ ਇਤਿਹਾਸ, ਬੁੱਕਮਾਰਕ ਅਤੇ ਰੱਖਿਅਤ ਕੀਤੇ ਪਾਸਵਰਡ"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਐਪਾਂ ਵਿੱਚ ਤੁਹਾਡੀ ਸਰਗਰਮੀ ਨਾਲ ਸੰਬੰਧਿਤ ਸੁਝਾਈ ਗਈ ਸਮੱਗਰੀ"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"ਸਮਝ ਲਿਆ"</string>
+ <string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਈ ਪਾਸਵਰਡ ਸੈੱਟ ਕਰੋ"</string>
+ <string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ਆਪਣੀ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਲਈ ਪੈਟਰਨ ਸੈੱਟ ਕਰੋ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ਲਾਕ ਕਰੋ"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"ਲੁਕਾਓ"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"ਤੁਸੀਂ <xliff:g id="COUNT">%d</xliff:g> ਤੱਕ ਫਿੰਗਰਪ੍ਰਿੰਟ ਸ਼ਾਮਲ ਕਰ ਸਕਦੇ ਹੋ"</string>
@@ -795,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{ਘੱਟੋ-ਘੱਟ 1 ਗੈਰ-ਅੱਖਰੀ ਅੱਖਰ-ਚਿੰਨ੍ਹ ਲਾਜ਼ਮੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ}one{ਘੱਟੋ-ਘੱਟ # ਗੈਰ-ਅੱਖਰੀ ਅੱਖਰ-ਚਿੰਨ੍ਹ ਲਾਜ਼ਮੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ}other{ਘੱਟੋ-ਘੱਟ # ਗੈਰ-ਅੱਖਰੀ ਅੱਖਰ-ਚਿੰਨ੍ਹ ਲਾਜ਼ਮੀ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{ਘੱਟੋ-ਘੱਟ 1 ਗੈਰ-ਸੰਖਿਆਤਮਿਕ ਅੱਖਰ-ਚਿੰਨ੍ਹ ਲਾਜ਼ਮੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ}one{ਘੱਟੋ-ਘੱਟ # ਗੈਰ-ਸੰਖਿਆਤਮਿਕ ਅੱਖਰ-ਚਿੰਨ੍ਹ ਲਾਜ਼ਮੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ}other{ਘੱਟੋ-ਘੱਟ # ਗੈਰ-ਸੰਖਿਆਤਮਿਕ ਅੱਖਰ-ਚਿੰਨ੍ਹ ਲਾਜ਼ਮੀ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"ਡੀਵਾਈਸ ਪ੍ਰਸ਼ਾਸਕ ਇੱਕ ਹਾਲੀਆ ਪਾਸਵਰਡ ਵਰਤਣ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਦਿੰਦਾ ਹੈ।"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"ਅੰਕਾਂ ਦਾ ਵਧਦਾ ਕ੍ਰਮ, ਘਟਦਾ ਕ੍ਰਮ, ਜਾਂ ਦੁਹਰਾਈ ਗਈ ਲੜੀ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"ਅੰਕਾਂ ਦਾ ਵਧਦਾ ਕ੍ਰਮ, ਘਟਦਾ ਕ੍ਰਮ ਜਾਂ ਦੁਹਰਾਈ ਗਈ ਲੜੀ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"ਤਸਦੀਕ ਕਰੋ"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"ਕਲੀਅਰ ਕਰੋ"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"ਸਕ੍ਰੀਨ ਲਾਕ ਪਹਿਲਾਂ ਹੀ ਬਦਲ ਦਿੱਤਾ ਗਿਆ ਸੀ। ਨਵੇਂ ਸਕ੍ਰੀਨ ਲਾਕ ਨਾਲ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
@@ -848,11 +845,11 @@
<string name="bluetooth_max_connected_audio_devices_string" msgid="3114156958598821615">"ਵੱਧ ਤੋਂ ਵੱਧ ਕਨੈਕਟ ਕੀਤੇ ਬਲੂਟੁੱਥ ਆਡੀਓ ਡੀਵਾਈਸ"</string>
<string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="4056811727247312473">"ਵੱਧ ਤੋਂ ਵੱਧ ਕਨੈਕਟ ਕੀਤੇ ਬਲੂਟੁੱਥ ਆਡੀਓ ਡੀਵਾਈਸ ਚੁਣੋ"</string>
<string name="nfc_verbose_vendor_log_title" msgid="5554505631122964628">"NFC ਵਰਬੋਸ ਵਿਕਰੇਤਾ ਡੀਬੱਗ ਲੌਗ"</string>
- <string name="nfc_verbose_vendor_log_summary" msgid="3049128322855928507">"ਬੱਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਵਧੀਕ ਡੀਵਾਈਸ ਨਾਲ ਸੰਬੰਧਿਤ ਵਿਕਰੇਤਾ ਲੌਗ ਸ਼ਾਮਲ ਕਰੋ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਨਿੱਜੀ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।"</string>
+ <string name="nfc_verbose_vendor_log_summary" msgid="3049128322855928507">"ਬੱਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਵਧੀਕ ਡੀਵਾਈਸ ਨਾਲ ਸੰਬੰਧਿਤ ਵਿਕਰੇਤਾ ਲੌਗ ਸ਼ਾਮਲ ਕਰੋ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਪ੍ਰਾਈਵੇਟ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।"</string>
<string name="nfc_snoop_log_title" msgid="1576197495976952388">"NFC NCI ਦਾ ਫਿਲਟਰ-ਰਹਿਤ ਲੌਗ"</string>
- <string name="nfc_snoop_log_summary" msgid="3988383328800163180">"ਵੇਰਵੇ ਵਾਲੇ NFC ਪੈਕੇਟਾਂ ਨੂੰ ਕੈਪਚਰ ਕਰੋ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਨਿੱਜੀ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।"</string>
+ <string name="nfc_snoop_log_summary" msgid="3988383328800163180">"ਵੇਰਵੇ ਵਾਲੇ NFC ਪੈਕੇਟਾਂ ਨੂੰ ਕੈਪਚਰ ਕਰੋ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਪ੍ਰਾਈਵੇਟ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।"</string>
<string name="nfc_reboot_dialog_title" msgid="2033983438635768169">"ਕੀ ਡੀਵਾਈਸ ਮੁੜ-ਸ਼ੁਰੂ ਕਰਨਾ ਹੈ?"</string>
- <string name="nfc_reboot_dialog_message" msgid="4929353168157966992">"ਵੇਰਵੇ ਵਾਲੀ NFC ਲੌਗਿੰਗ ਨੂੰ ਸਿਰਫ਼ ਵਿਕਾਸ ਦੇ ਉਦੇਸ਼ਾਂ ਲਈ ਬਣਾਇਆ ਗਿਆ ਹੈ। ਬੱਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਵਧੀਕ NFC ਡਾਟਾ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਨਿੱਜੀ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ। ਇਸ ਸੈਟਿੰਗ ਨੂੰ ਬਦਲਣ ਲਈ ਆਪਣਾ ਡੀਵਾਈਸ ਮੁੜ-ਸ਼ੁਰੂ ਕਰੋ।"</string>
+ <string name="nfc_reboot_dialog_message" msgid="4929353168157966992">"ਵੇਰਵੇ ਵਾਲੀ NFC ਲੌਗਿੰਗ ਨੂੰ ਸਿਰਫ਼ ਵਿਕਾਸ ਦੇ ਉਦੇਸ਼ਾਂ ਲਈ ਬਣਾਇਆ ਗਿਆ ਹੈ। ਬੱਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਵਧੀਕ NFC ਡਾਟਾ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਪ੍ਰਾਈਵੇਟ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ। ਇਸ ਸੈਟਿੰਗ ਨੂੰ ਬਦਲਣ ਲਈ ਆਪਣਾ ਡੀਵਾਈਸ ਮੁੜ-ਸ਼ੁਰੂ ਕਰੋ।"</string>
<string name="nfc_reboot_dialog_confirm" msgid="4769763632008584567">"ਮੁੜ-ਸ਼ੁਰੂ ਕਰੋ"</string>
<string name="wifi_display_settings_title" msgid="6451625615274960175">"ਕਾਸਟ ਕਰੋ"</string>
<string name="keywords_wifi_display_settings" msgid="5753883229564422679">"ਸ਼ੀਸ਼ਾ"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"ਸਿਸਟਮ ਪ੍ਰਮਾਣ-ਪੱਤਰ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"ਪ੍ਰਮਾਣ-ਪੱਤਰ ਪਿੰਨ ਕਰਨ ਦੀ ਸੁਵਿਧਾ"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ਨੈੱਟਵਰਕ ਵੇਰਵੇ"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ਇਹ ਨੈੱਟਵਰਕ WEP ਨਾਮ ਦੇ ਕਿਸੇ ਪੁਰਾਣੇ ਸੁਰੱਖਿਆ ਪ੍ਰੋਟੋਕੋਲ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਜੋ ਕਿ ਘੱਟ ਸੁਰੱਖਿਅਤ ਹੈ"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"ਸਬਨੈੱਟ ਮਾਸਕ"</string>
<string name="server_name_title" msgid="7257095185810299066">"ਸਰਵਰ ਦਾ ਨਾਮ"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ਕਿਸਮ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ਡੀਵਾਈਸ ਵਾਈ-ਫਾਈ MAC ਪਤਾ"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ਬਲੂਟੁੱਥ ਪਤਾ"</string>
<string name="status_serial_number" msgid="9060064164331466789">"ਸੀਰੀਅਲ ਨੰਬਰ"</string>
- <string name="status_up_time" msgid="1274778533719495438">"ਚਾਲੂ ਰਹਿਣ ਦਾ ਸਮਾਂ"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ਕਿਰਿਆਸ਼ੀਲ ਸਮਾਂ"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"ਬਣਾਉਣ ਦੀ ਤਾਰੀਖ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"ਪਹਿਲੀ ਵਰਤੋਂ ਦੀ ਤਾਰੀਖ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ਸਾਈਕਲ ਕਾਊਂਟ"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"ਹੇਠਲਾ-ਸੱਜਾ ਟੈਪ"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"ਹੋਰ ਵਿਕਲਪਾਂ ਲਈ ਟੱਚਪੈਡ ਦੇ ਹੇਠਲੇ ਸੱਜੇ ਕੋਨੇ \'ਤੇ ਟੈਪ ਕਰੋ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"ਪੁਆਇੰਟਰ ਸਪੀਡ"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"ਪੁਆਇੰਟਰ ਭਰਨ ਦਾ ਸਟਾਈਲ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"ਪੁਆਇੰਟਰ ਭਰਨ ਦਾ ਸਟਾਈਲ ਕਾਲੇ ਵਿੱਚ ਬਦਲੋ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"ਪੁਆਇੰਟਰ ਭਰਨ ਦਾ ਸਟਾਈਲ ਹਰੇ ਵਿੱਚ ਬਦਲੋ"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"ਪੁਆਇੰਟਰ ਭਰਨ ਦਾ ਸਟਾਈਲ ਪੀਲੇ ਵਿੱਚ ਬਦਲੋ"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"ਪੁਆਇੰਟਰ ਭਰਨ ਦਾ ਸਟਾਈਲ ਗੁਲਾਬੀ \'ਚ ਬਦਲੋ"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"ਪੁਆਇੰਟਰ ਭਰਨ ਦਾ ਸਟਾਈਲ ਨੀਲੇ ਵਿੱਚ ਬਦਲੋ"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ਟੱਚਪੈਡ ਇਸ਼ਾਰਿਆਂ ਬਾਰੇ ਜਾਣੋ"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ਟਰੈਕਪੈਡ, ਟਰੈਕ ਪੈਡ, ਮਾਊਸ, ਕਰਸਰ, ਸਕ੍ਰੋਲ ਕਰੋ, ਸਵਾਈਪ ਕਰੋ, ਸੱਜਾ ਕਲਿੱਕ, ਕਲਿੱਕ ਕਰੋ, ਪੁਆਇੰਟ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"ਸੱਜਾ ਕਲਿੱਕ, ਟੈਪ ਕਰੋ"</string>
@@ -2029,7 +2033,7 @@
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"ਰੰਗ ਅਤੇ ਮੋਸ਼ਨ"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"ਰੰਗ ਦਾ ਕੰਟ੍ਰਾਸਟ"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"ਜ਼ਿਆਦਾ ਕੰਟ੍ਰਾਸਟ ਨਾਲ ਲਿਖਤ, ਬਟਨ ਅਤੇ ਪ੍ਰਤੀਕ ਹੋਰ ਵੀ ਵੱਖਰੇ ਨਜ਼ਰ ਆਉਂਦੇ ਹਨ। ਤੁਹਾਨੂੰ ਸਭ ਤੋਂ ਵਧੀਆ ਦਿਸਣ ਵਾਲਾ ਕੰਟ੍ਰਾਸਟ ਚੁਣੋ।"</string>
- <string name="color_contrast_note" msgid="7592686603372566198">"ਸ਼ਾਇਦ ਕੁਝ ਐਪਾਂ ਸਾਰੀਆਂ ਰੰਗ ਅਤੇ ਲਿਖਤ ਦੀਆਂ ਕੰਟ੍ਰਾਸਟ ਸੈਟਿੰਗਾਂ ਦਾ ਸਮਰਥਨ ਨਾ ਕਰਨ"</string>
+ <string name="color_contrast_note" msgid="7592686603372566198">"ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਕੁਝ ਐਪਾਂ ਸਾਰੀਆਂ ਰੰਗ ਅਤੇ ਲਿਖਤ ਦੀਆਂ ਕੰਟ੍ਰਾਸਟ ਸੈਟਿੰਗਾਂ ਦਾ ਸਮਰਥਨ ਨਾ ਕਰਨ"</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"ਪੂਰਵ-ਝਲਕ ਦੇਖੋ"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"ਹੈਲਨ, ਐਡਮ"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 ਦਿਨ ਪਹਿਲਾਂ"</string>
@@ -2307,7 +2311,7 @@
<string name="accessibility_hearingaid_right_side_device_summary" msgid="8645789702686724188">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> / ਸਿਰਫ਼ ਸੱਜਾ"</string>
<string name="accessibility_hearingaid_left_and_right_side_device_summary" msgid="3314103411842694197">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> / ਖੱਬਾ ਅਤੇ ਸੱਜਾ"</string>
<string name="accessibility_hearingaid_more_device_summary" msgid="8092641784056942546">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> +1 ਹੋਰ"</string>
- <string name="accessibility_hearing_device_pairing_title" msgid="2701812183769537320">"ਨਵਾਂ ਡੀਵਾਈਸ ਜੋੜਾਬੱਧ ਕਰੋ"</string>
+ <string name="accessibility_hearing_device_pairing_title" msgid="2701812183769537320">"ਨਵਾਂ ਡੀਵਾਈਸ ਜੋੜਾਬੱਧ ਕਰਨਾ"</string>
<string name="accessibility_hearing_device_connected_title" msgid="3785140037249487287">"ਸੁਣਨ ਵਾਲੇ ਡੀਵਾਈਸ"</string>
<string name="accessibility_hearing_device_saved_title" msgid="7573926212664909296">"ਰੱਖਿਅਤ ਕੀਤੇ ਡੀਵਾਈਸ"</string>
<string name="accessibility_hearing_device_control" msgid="2661965917013100611">"ਸੁਣਨ ਦੇ ਡੀਵਾਈਸ ਦੇ ਕੰਟਰੋਲ"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ਕੋਈ ਨਹੀਂ}=1{1 ਸਮਾਂ-ਸੂਚੀ ਸੈੱਟ ਹੈ}other{# ਸਮਾਂ-ਸੂਚੀਆਂ ਸੈੱਟ ਹਨ}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ਤਰਜੀਹ ਮੋਡ"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"ਸਿਰਫ਼ ਮਹੱਤਵਪੂਰਨ ਲੋਕਾਂ ਅਤੇ ਐਪਾਂ ਵੱਲੋਂ ਸੂਚਨਾ ਪ੍ਰਾਪਤ ਕਰੋ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"ਰੁਕਾਵਟਾਂ ਸੀਮਤ ਕਰੋ"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਨੂੰ ਚਾਲੂ ਕਰੋ"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"ਕੋਈ ਕੈਲੰਡਰ ਸ਼ਾਮਲ ਕਰੋ"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ਆਪਣਾ ਕੈਲੰਡਰ ਵਰਤੋ"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"ਸਮਾਂ-ਸੂਚੀ"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"ਕੋਈ ਸਮਾਂ-ਸੂਚੀ ਸੈੱਟ ਕਰੋ"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"ਸਮਾਂ-ਸੂਚੀ"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> ਘੰ., <xliff:g id="MINUTES">%2$d</xliff:g> ਮਿੰ."</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"ਸਮਾਂ-ਸੂਚੀ"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ਕੁਝ ਖਾਸ ਸਮਿਆਂ \'ਤੇ ਫ਼ੋਨ ਸ਼ਾਂਤ ਰੱਖੋ"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"\'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਦੇ ਨਿਯਮ ਸੈੱਟ ਕਰੋ"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"ਇਹ ਐਪ ਵਿਸਤ੍ਰਿਤ ਸੈਟਿੰਗਾਂ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"ਹੋਰ ਸੈਟਿੰਗਾਂ"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"ਇਸ ਐਪ ਵਿੱਚ ਹੋਰ ਸੈਟਿੰਗਾਂ ਉਪਲਬਧ ਹਨ"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"ਕੂਲਡਾਊਨ"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"\'ਕੂਲਡਾਊਨ\' ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"ਜੇ ਤੁਸੀਂ ਘੱਟ ਸਮਾਂ ਮਿਆਦ ਵਿੱਚ ਕਈ ਸੂਚਨਾਵਾਂ ਪ੍ਰਾਪਤ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਡਾ ਡੀਵਾਈਸ ਸਕ੍ਰੀਨ \'ਤੇ ਧੁਨੀ ਰੁਕਾਵਟਾਂ ਅਤੇ ਪੌਪ-ਅੱਪਾਂ ਨੂੰ ਛੋਟਾ ਕਰ ਦੇਵੇਗਾ। ਕਾਲਾਂ, ਅਲਾਰਮ ਅਤੇ ਤਰਜੀਹੀ ਗੱਲਾਂਬਾਤਾਂ ਹਾਲੇ ਵੀ ਪਹਿਲਾਂ ਵਾਂਗ ਅਲਰਟ ਰਹਿਣਗੀਆਂ ਅਤੇ ਸਾਰੀਆਂ ਡਿਲੀਵਰ ਕੀਤੀਆਂ ਸੂਚਨਾਵਾਂ ਨੂੰ ਸ਼ੇਡ ਵਿੱਚ ਲੱਭਣਾ ਆਸਾਨ ਹੈ।"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲਾਂ ਦੇ ਲਾਗੂ ਕਰੋ"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਐਪਾਂ \'ਤੇ ਲਾਗੂ ਕਰੋ"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR ਮਦਦਗਾਰ ਸੇਵਾਵਾਂ"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"ਚੁਣੀਆਂ ਗਈਆਂ ਐਪਾਂ"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ਕੋਈ ਨਹੀਂ"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ਸਭ"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ਐਪਾਂ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਨ ਦਿਓ"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ਐਪਾਂ ਜੋ ਵਿਘਨ ਪਾ ਸਕਦੀਆਂ ਹਨ"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"ਹੋਰ ਐਪਾਂ ਚੁਣੋ"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} ਤੱਕ ਸਿਰਫ਼ ਇੱਕ ਘੰਟੇ ਲਈ ਅਲਾਰਮਾਂ ਵਿੱਚ ਬਦਲੋ}one{{time} ਤੱਕ ਸਿਰਫ਼ # ਘੰਟੇ ਲਈ ਅਲਾਰਮਾਂ ਵਿੱਚ ਬਦਲੋ}other{{time} ਤੱਕ ਸਿਰਫ਼ # ਘੰਟਿਆਂ ਲਈ ਅਲਾਰਮਾਂ ਵਿੱਚ ਬਦਲੋ}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"ਅਲਾਰਮ ਨੂੰ ਸਿਰਫ਼ <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> ਤੱਕ ਬਦਲੋ"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ਹਮੇਸ਼ਾਂ ਵਿਘਨ ਪਾਓ ਵਿੱਚ ਬਦਲੋ"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"ਨਾਮ ਬਦਲੋ"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"ਪ੍ਰਤੀਕ ਬਦਲੋ"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"ਪ੍ਰਤੀਕ ਬਦਲੋ"</string>
<string name="warning_button_text" msgid="1274234338874005639">"ਚਿਤਾਵਨੀ"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"ਬੰਦ ਕਰੋ"</string>
<string name="device_feedback" msgid="5351614458411688608">"ਇਸ ਡੀਵਾਈਸ ਬਾਰੇ ਵਿਚਾਰ ਭੇਜੋ"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ਖੱਬਾ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ਸੱਜਾ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"ਕੇਸ"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"ਬੈਟਰੀ"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ਸੈਟਿੰਗਾਂ ਪੈਨਲ"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ਡੈਸਕਟਾਪ ਮੋਡ ਜ਼ਬਰਦਸਤੀ ਲਾਗੂ ਕਰੋ"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ਸੈਕੰਡਰੀ ਡਿਸਪਲੇ \'ਤੇ ਪ੍ਰਯੋਗਮਈ ਡੈਸਕਟਾਪ ਮੋਡ ਜ਼ਬਰਦਸਤੀ ਲਾਗੂ ਕਰੋ"</string>
@@ -4841,22 +4859,22 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"16KB ਦੇ ਪੰਨੇ ਦੇ ਆਕਾਰ ਨਾਲ ਬੂਟ ਕਰੋ"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"ਡੀਵਾਈਸ ਨੂੰ 16KB ਦੇ ਪੰਨੇ ਦੇ ਆਕਾਰ ਲਈ ਸਮਰਥਿਤ ਕਰਨਲ ਵਰਤ ਕੇ ਬੂਟ ਕਰੋ"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"4KB ਮੋਡ ਤੋਂ 16KB ਮੋਡ \'ਤੇ ਸਵਿੱਚ ਕਰੋ"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"ਤੁਸੀਂ 4KB ਕਰਨਲ \'ਤੇ ਚੱਲ ਰਹੇ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਵਿੱਚ ਹੋ ਅਤੇ ਤੁਹਾਨੂੰ 16KB ਮੋਡ \'ਤੇ ਸਵਿੱਚ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਹੋਣ ਵੇਲੇ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਜੋਖਮ ਵਿੱਚ ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਨਾਲ ਡੀਵਾਈਸ ਰੀਬੂਟ ਹੋ ਜਾਵੇਗਾ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਡੀਵਾਈਸ ਨੂੰ ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ \'ਤੇ ਵਾਪਸ ਲਿਜਾਉਣ ਲਈ, ਤੁਹਾਨੂੰ 4KB ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰ ਕੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ, ਜਿਸ ਨਾਲ ਡੀਵਾਈਸ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਚੋਣਾਂ ਵਿੱਚ OEM ਅਣਲਾਕ ਸੈਟਿੰਗ ਨੂੰ ਬੰਦ ਕਰੋ।"</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"ਤੁਸੀਂ 4KB ਕਰਨਲ \'ਤੇ ਚੱਲ ਰਹੇ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਵਿੱਚ ਹੋ ਅਤੇ ਤੁਹਾਨੂੰ 16KB ਮੋਡ \'ਤੇ ਸਵਿੱਚ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਰਹਿਣ ਦੌਰਾਨ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਖਤਰੇ ਵਿੱਚ ਰਹਿ ਸਕਦਾ ਹੈ। ਇਸ ਨਾਲ ਡੀਵਾਈਸ ਰੀਬੂਟ ਹੋ ਜਾਵੇਗਾ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਡੀਵਾਈਸ ਨੂੰ ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ \'ਤੇ ਵਾਪਸ ਲਿਜਾਉਣ ਲਈ, ਤੁਹਾਨੂੰ 4KB ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰ ਕੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਪਵੇਗਾ, ਜਿਸ ਨਾਲ ਡੀਵਾਈਸ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਵਿਕਲਪ ਵਿੱਚ OEM ਅਣਲਾਕ ਨੂੰ ਬੰਦ ਕਰੋ।"</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"16KB ਮੋਡ ਤੋਂ 4KB ਮੋਡ \'ਤੇ ਸਵਿੱਚ ਕਰੋ"</string>
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"ਤੁਸੀਂ 16KB ਕਰਨਲ \'ਤੇ ਚੱਲ ਰਹੇ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਵਿੱਚ ਹੋ ਅਤੇ ਤੁਹਾਨੂੰ 4KB ਮੋਡ \'ਤੇ ਸਵਿੱਚ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਹੋਣ ਵੇਲੇ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਜੋਖਮ ਵਿੱਚ ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਨਾਲ ਡੀਵਾਈਸ ਰੀਬੂਟ ਹੋ ਜਾਵੇਗਾ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਡੀਵਾਈਸ ਨੂੰ ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ \'ਤੇ ਵਾਪਸ ਲਿਜਾਉਣ ਲਈ, ਤੁਹਾਨੂੰ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ, ਜਿਸ ਨਾਲ ਡੀਵਾਈਸ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਚੋਣਾਂ ਵਿੱਚ OEM ਅਣਲਾਕ ਸੈਟਿੰਗ ਨੂੰ ਬੰਦ ਕਰੋ।"</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"ਕਰਨਲ ਨੂੰ 16KB ਪੰਨਿਆਂ ਦੇ ਅਨੁਰੂਪ ਕਰਨਲ ਨਾਲ ਅੱਪਡੇਟ ਕਰਨਾ ਅਸਫਲ ਰਿਹਾ।"</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"ਤਬਦੀਲੀ ਨੂੰ ਲਾਗੂ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"ਕੀ ਡੀਵਾਈਸ ਦੇ ਡਾਟੇ ਨੂੰ ext4 \'ਤੇ ਮੁੜ-ਫਾਰਮੈਟ ਕਰਨਾ ਹੈ? (16KB ਮੋਡ ਲਈ ਲੋੜੀਂਦਾ ਹੈ)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"16KB ਵਿਕਾਸਕਾਰ ਚੋਣ ਵਰਤਣ ਤੋਂ ਪਹਿਲਾਂ, ਇਸ ਡੀਵਾਈਸ ਦੇ ਡਾਟੇ ਦੇ ਹਿੱਸੇ ਨੂੰ ext4 ਫਾਰਮੈਟ ਵਿੱਚ ਬਦਲਣ ਦੀ ਲੋੜ ਹੈ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਹੋਣ ਵੇਲੇ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਜੋਖਮ ਵਿੱਚ ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ ਬਾਅਦ, 16KB ਚੋਣ ਦੀ ਕਿਰਿਆਸ਼ੀਲਤਾ ਲਈ ਇੱਕ ਵਾਰ ਹੋਰ ਰੀਬੂਟ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ। ਇਸ ਮੋਡ ਵਿੱਚ ਆਉਣ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ ਡੀਵਾਈਸ ਨੂੰ ਦੁਬਾਰਾ ਰੀਬੂਟ ਕਰ ਕੇ 4KB ਅਤੇ 16KB ਮੋਡ ਵਿਚਕਾਰ ਸਵਿੱਚ ਕਰ ਸਕਦੇ ਹੋ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਡੀਵਾਈਸ ਨੂੰ ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ \'ਤੇ ਵਾਪਸ ਲਿਜਾਉਣ ਲਈ, ਤੁਹਾਨੂੰ 4KB ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰ ਕੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ, ਜਿਸ ਨਾਲ ਡੀਵਾਈਸ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਚੋਣਾਂ ਵਿੱਚ OEM ਅਣਲਾਕ ਸੈਟਿੰਗ ਨੂੰ ਬੰਦ ਕਰੋ। ਡੀਵਾਈਸ ਸਾਫ਼ ਹੋ ਜਾਵੇਗਾ ਅਤੇ ਤਸਦੀਕ ਤੋਂ ਬਾਅਦ ਫ਼ਾਈਲਸਿਸਟਮ ext4 ਦੇ ਫਾਰਮੈਟ ਵਿੱਚ ਬਦਲ ਜਾਵੇਗਾ। ਇਸਦੇ ਪੂਰਾ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਕਿਰਪਾ ਕਰਕੇ 16KB ਮੋਡ ਨੂੰ ਦੁਬਾਰਾ ਚਾਲੂ ਕਰਨ ਲਈ ਵਾਪਸ ਆਓ।"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"16KB ਵਿਕਾਸਕਾਰ ਵਿਕਲਪ ਵਰਤਣ ਤੋਂ ਪਹਿਲਾਂ, ਇਸ ਡੀਵਾਈਸ ਦੇ ਡਾਟੇ ਦੇ ਹਿੱਸੇ ਨੂੰ ext4 ਫਾਰਮੈਟ ਵਿੱਚ ਬਦਲਣ ਦੀ ਲੋੜ ਹੈ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਰਹਿਣ ਦੌਰਾਨ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਖਤਰੇ ਵਿੱਚ ਰਹਿ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ ਬਾਅਦ, 16KB ਵਿਕਲਪ ਦੀ ਕਿਰਿਆਸ਼ੀਲਤਾ ਲਈ ਇੱਕ ਵਾਰ ਹੋਰ ਰੀਬੂਟ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ। ਇਸ ਮੋਡ ਵਿੱਚ ਆਉਣ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ ਡੀਵਾਈਸ ਨੂੰ ਇੱਕ ਵਾਰ ਰੀਬੂਟ ਕਰ ਕੇ 4KB ਅਤੇ 16KB ਮੋਡ ਵਿਚਕਾਰ ਸਵਿੱਚ ਕਰ ਸਕਦੇ ਹੋ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਡੀਵਾਈਸ ਨੂੰ ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ \'ਤੇ ਵਾਪਸ ਲਿਜਾਉਣ ਲਈ, ਤੁਹਾਨੂੰ 4KB ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰ ਕੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ, ਜਿਸ ਨਾਲ ਡੀਵਾਈਸ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਵਿਕਲਪ ਵਿੱਚ OEM ਅਣਲਾਕ ਨੂੰ ਬੰਦ ਕਰੋ। ਡੀਵਾਈਸ ਸਾਫ਼ ਹੋ ਜਾਵੇਗਾ ਅਤੇ ਤਸਦੀਕ ਤੋਂ ਬਾਅਦ ਫ਼ਾਈਲਸਿਸਟਮ ext4 ਦੇ ਫਾਰਮੈਟ ਵਿੱਚ ਬਦਲ ਜਾਵੇਗਾ। ਇਸਦੇ ਪੂਰਾ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਕਿਰਪਾ ਕਰਕੇ 16KB ਮੋਡ ਨੂੰ ਦੁਬਾਰਾ ਚਾਲੂ ਕਰਨ ਲਈ ਵਾਪਸ ਆਓ।"</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"ਸਾਰਾ ਡਾਟਾ ਮਿਟਾਓ"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"ਡਾਟੇ ਦੇ ਹਿੱਸੇ ਨੂੰ ext4 ਵਿੱਚ ਮੁੜ-ਫਾਰਮੈਟ ਕਰਨਾ ਅਤੇ ਸਾਫ਼ ਕਰਨਾ ਅਸਫਲ ਰਿਹਾ।"</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"16KB ਮੋਡ ਲਈ ਬੂਟਲੋਡਰ ਨੂੰ ਅਣਲਾਕ ਕਰਨਾ ਲੋੜੀਂਦਾ ਹੈ"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"16KB ਵਿਕਾਸਕਾਰ ਵਿਕਲਪ ਵਰਤਣ ਤੋਂ ਪਹਿਲਾਂ, ਇਸ ਡੀਵਾਈਸ ਲਈ ਬੂਟਲੋਡਰ ਅਣਲਾਕ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਰਹਿਣ ਦੌਰਾਨ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਖਤਰੇ ਵਿੱਚ ਰਹਿ ਸਕਦਾ ਹੈ। 16KB ਮੋਡ ਦੇ ਕਿਰਿਆਸ਼ੀਲ ਹੋਣ \'ਤੇ, ਸਾਰਾ ਵਰਤੋਂਕਾਰ ਡਾਟਾ ਅਤੇ ਸੈਟਿੰਗਾਂ ਸਾਫ਼ ਹੋ ਜਾਣਗੀਆਂ। ਬੂਟਲੋਡਰ ਅਣਲਾਕ ਹੋਣ ਤੋਂ ਬਾਅਦ, 16KB ਵਿਕਲਪ ਦੀ ਕਿਰਿਆਸ਼ੀਲਤਾ ਲਈ ਡੀਵਾਈਸ ਨੂੰ ਦੋ ਵਾਰ ਰੀਬੂਟ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ। ਇਸ ਮੋਡ ਵਿੱਚ ਆਉਣ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ ਡੀਵਾਈਸ ਨੂੰ ਇੱਕ ਵਾਰ ਰੀਬੂਟ ਕਰ ਕੇ 4KB ਅਤੇ 16KB ਮੋਡ ਵਿਚਕਾਰ ਸਵਿੱਚ ਕਰ ਸਕਦੇ ਹੋ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਡੀਵਾਈਸ ਨੂੰ ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ \'ਤੇ ਵਾਪਸ ਲਿਜਾਉਣ ਲਈ, ਤੁਹਾਨੂੰ 4KB ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰਨ ਦੀ ਲੋੜ ਪਵੇਗੀ ਅਤੇ ਫਿਰ OEM/ਬੂਟਲੋਡਰ ਡੀਵਾਈਸ ਨੂੰ ਲਾਕ ਕਰੇਗਾ (ਜਿਸ ਨਾਲ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਜਾਵੇਗਾ)। ਕਿਰਪਾ ਕਰਕੇ ਬੂਟਲੋਡਰ ਨੂੰ ਅਣਲਾਕ ਕਰੋ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a> \'ਤੇ ਜਾ ਕੇ ਇਸਨੂੰ ਕਰਨ ਦੇ ਤਰੀਕੇ ਸੰਬੰਧੀ ਹਿਦਾਇਤਾਂ ਦੇਖ ਸਕਦੇ ਹੋ"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4KB ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"ਤੁਸੀਂ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਦੇ 4KB ਮੋਡ ਵਿੱਚ ਹੋ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਹੋਣ ਵੇਲੇ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਜੋਖਮ ਵਿੱਚ ਹੋ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ ਵਿੱਚ ਮੁੜ-ਦਾਖਲ ਹੋਣ ਲਈ, ਤੁਹਾਡਾ ਡੀਵਾਈਸ ਦੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਲਾਜ਼ਮੀ ਹੈ। ਹੋਰ ਪੜ੍ਹਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"ਤੁਸੀਂ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਦੇ 4KB ਮੋਡ ਵਿੱਚ ਹੋ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਹੋਣ ਵੇਲੇ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਜੋਖਮ ਵਿੱਚ ਹੋ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ ਵਿੱਚ ਮੁੜ-ਦਾਖਲ ਹੋਣ ਲਈ, ਤੁਹਾਡਾ ਡੀਵਾਈਸ ਦੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਲਾਜ਼ਮੀ ਹੈ। ਇਸ ਨਾਲ ਡੀਵਾਈਸ ਦੁਬਾਰਾ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਕੇ ਪ੍ਰੋਡਕਸ਼ਨ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਮੁੜ-ਬਹਾਲ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਚੋਣਾਂ ਵਿੱਚ OEM ਅਣਲਾਕ ਸੈਟਿੰਗ ਨੂੰ ਬੰਦ ਕਰੋ। ਜੇ ਡੀਵਾਈਸ Android ਵਿੱਚ ਬੂਟ ਹੋਣ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦਾ ਹੈ ਜਾਂ ਅਸਥਿਰ ਹੈ, ਤਾਂ <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ਤੋਂ ਨਵੇਂ ਫੈਕਟਰੀ ਪ੍ਰਤਿਬਿੰਬਾਂ ਨਾਲ ਡੀਵਾਈਸ ਨੂੰ ਮੁੜ-ਫਲੈਸ਼ ਕਰੋ ਜਾਂ <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ਵਰਤੋ ਅਤੇ \'ਡੀਵਾਈਸ ਸਾਫ਼ ਕਰੋ\', \'ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰੋ\' ਅਤੇ \'ਸਾਰਿਆਂ ਹਿੱਸਿਆਂ ਨੂੰ ਜ਼ਬਰਦਸਤੀ ਫਲੈਸ਼ ਕਰੋ\'।"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"ਤੁਸੀਂ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਦੇ 4KB ਮੋਡ ਵਿੱਚ ਹੋ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਰਹਿਣ ਦੌਰਾਨ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਖਤਰੇ ਵਿੱਚ ਰਹਿ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ ਵਿੱਚ ਮੁੜ-ਦਾਖਲ ਹੋਣ ਲਈ, ਡੀਵਾਈਸ ਦੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ। ਹੋਰ ਪੜ੍ਹਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"ਤੁਸੀਂ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਦੇ 4KB ਮੋਡ ਵਿੱਚ ਹੋ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਰਹਿਣ ਦੌਰਾਨ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਖਤਰੇ ਵਿੱਚ ਰਹਿ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ ਵਿੱਚ ਮੁੜ-ਦਾਖਲ ਹੋਣ ਲਈ, ਡੀਵਾਈਸ ਦੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ। ਇਸ ਨਾਲ ਡੀਵਾਈਸ ਦੁਬਾਰਾ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਕੇ ਪ੍ਰੋਡਕਸ਼ਨ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਮੁੜ-ਬਹਾਲ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਵਿਕਲਪ ਵਿੱਚ OEM ਅਣਲਾਕ ਨੂੰ ਬੰਦ ਕਰੋ। ਜੇ ਡੀਵਾਈਸ Android ਵਿੱਚ ਬੂਟ ਹੋਣ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦਾ ਹੈ ਜਾਂ ਅਸਥਿਰ ਹੈ, ਤਾਂ <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ਤੋਂ ਨਵੀਆਂ ਫੈਕਟਰੀ ਇਮੇਜਾਂ ਨਾਲ ਡੀਵਾਈਸ ਨੂੰ ਮੁੜ-ਫਲੈਸ਼ ਕਰੋ ਜਾਂ <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ਵਰਤੋ ਅਤੇ \'ਡੀਵਾਈਸ ਸਾਫ਼ ਕਰੋ\', \'ਬੂਟਲੋਡਰ ਲਾਕ ਕਰੋ\' ਅਤੇ \'ਸਾਰੇ ਹਿੱਸਿਆਂ ਨੂੰ ਜ਼ਬਰਦਸਤੀ ਫਲੈਸ਼ ਕਰੋ\' ਨੂੰ ਚੁਣੋ।"</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16KB ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"ਤੁਸੀਂ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਦੇ 16KB ਮੋਡ ਵਿੱਚ ਹੋ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਹੋਣ ਵੇਲੇ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਜੋਖਮ ਵਿੱਚ ਹੋ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ ਵਿੱਚ ਮੁੜ-ਦਾਖਲ ਹੋਣ ਲਈ, ਤੁਹਾਡਾ 4K ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰ ਕੇ ਡੀਵਾਈਸ ਦੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਲਾਜ਼ਮੀ ਹੈ। ਹੋਰ ਪੜ੍ਹਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"ਤੁਸੀਂ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਦੇ 16KB ਮੋਡ ਵਿੱਚ ਹੋ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਰਹਿਣ ਦੌਰਾਨ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਖਤਰੇ ਵਿੱਚ ਰਹਿ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ ਵਿੱਚ ਮੁੜ-ਦਾਖਲ ਹੋਣ ਲਈ, 4K ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰ ਕੇ ਡੀਵਾਈਸ ਦੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ। ਹੋਰ ਪੜ੍ਹਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"ਤੁਸੀਂ ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ ਦੇ 16KB ਮੋਡ ਵਿੱਚ ਹੋ। ਇਸ ਮੋਡ ਵਿੱਚ ਸਾਫ਼ਟਵੇਅਰ ਅਖੰਡਤਾ ਦੀ ਗਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਅਤੇ ਬੂਟਲੋਡਰ ਦੇ ਅਣਲਾਕ ਰਹਿਣ ਦੌਰਾਨ ਫ਼ੋਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਡਾਟਾ ਖਤਰੇ ਵਿੱਚ ਰਹਿ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੋਡਾਂ ਵਿੱਚ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹੋ ਜਾਣਗੀਆਂ, ਇਸ ਲਈ ਸ਼ਾਇਦ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਕੰਮ ਨਾ ਕਰਨ। ਪ੍ਰੋਡਕਸ਼ਨ ਮੋਡ ਵਿੱਚ ਮੁੜ-ਦਾਖਲ ਹੋਣ ਲਈ, 4K ਮੋਡ \'ਤੇ ਵਾਪਸ ਸਵਿੱਚ ਕਰ ਕੇ ਡੀਵਾਈਸ ਦੇ ਬੂਟਲੋਡਰ ਨੂੰ ਲਾਕ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ। ਇਸ ਨਾਲ ਡੀਵਾਈਸ ਦੁਬਾਰਾ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਹੋ ਕੇ ਪ੍ਰੋਡਕਸ਼ਨ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਮੁੜ-ਬਹਾਲ ਹੋ ਜਾਵੇਗਾ। ਡੀਵਾਈਸ ਦੇ Android ਵਿੱਚ ਸਫਲਤਾਪੂਰਵਕ ਬੂਟ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਵਿਕਾਸਕਾਰ ਵਿਕਲਪ ਵਿੱਚ OEM ਅਣਲਾਕ ਨੂੰ ਬੰਦ ਕਰੋ। ਜੇ ਡੀਵਾਈਸ Android ਵਿੱਚ ਬੂਟ ਹੋਣ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦਾ ਹੈ ਜਾਂ ਅਸਥਿਰ ਹੈ, ਤਾਂ <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ਤੋਂ ਨਵੀਆਂ ਫੈਕਟਰੀ ਇਮੇਜਾਂ ਨਾਲ ਡੀਵਾਈਸ ਨੂੰ ਮੁੜ-ਫਲੈਸ਼ ਕਰੋ ਜਾਂ <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> ਵਰਤੋ ਅਤੇ \'ਡੀਵਾਈਸ ਸਾਫ਼ ਕਰੋ\', \'ਬੂਟਲੋਡਰ ਲਾਕ ਕਰੋ\' ਅਤੇ \'ਸਾਰੇ ਹਿੱਸਿਆਂ ਨੂੰ ਜ਼ਬਰਦਸਤੀ ਫਲੈਸ਼ ਕਰੋ\' ਨੂੰ ਚੁਣੋ।"</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16KB ਪੇਜ-ਐਗਨੌਸਟਿਕ ਮੋਡ"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"ਹੋਰ ਪੜ੍ਹੋ"</string>
@@ -5137,7 +5155,7 @@
<string name="bluetooth_find_broadcast" msgid="1768337775649457586">"ਪ੍ਰਸਾਰਨ ਲੱਭੋ"</string>
<string name="bluetooth_find_broadcast_button_leave" msgid="7881206581147104908">"ਪ੍ਰਸਾਰਨ ਛੱਡੋ"</string>
<string name="bluetooth_find_broadcast_button_scan" msgid="3995664694641895189">"QR ਕੋਡ ਸਕੈਨ ਕਰੋ"</string>
- <string name="find_broadcast_password_dialog_title" msgid="3176988702535737484">"ਪਾਸਵਰਡ ਦਾਖਲ ਕਰੋ"</string>
+ <string name="find_broadcast_password_dialog_title" msgid="3176988702535737484">"ਪਾਸਵਰਡ ਪਾਓ"</string>
<string name="find_broadcast_password_dialog_connection_error" msgid="47873617983439400">"ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
<string name="find_broadcast_password_dialog_password_error" msgid="243855327674765">"ਗਲਤ ਪਾਸਵਰਡ"</string>
<string name="find_broadcast_join_broadcast_error" msgid="5486980388774711346">"ਪ੍ਰਸਾਰਨ ਵਿੱਚ ਸ਼ਾਮਲ ਨਹੀਂ ਹੋ ਸਕਦੇ"</string>
diff --git a/res/values-pl/arrays.xml b/res/values-pl/arrays.xml
index 48e7178..320e906 100644
--- a/res/values-pl/arrays.xml
+++ b/res/values-pl/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 62568bb..72b5c88 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Rozłączyć urządzenie?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Sparuj nowe urządzenie"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automatycznie włącz ponownie jutro"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Sparuj prawe ucho"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Sparuj lewe ucho"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Sparuj drugie ucho"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Sparuj lewe ucho"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Ustawienia urządzenia słuchowego"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Skrót, zgodność z aparatem słuchowym"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Gotowe ustawienia"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Gotowe ustawienia"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Nie udało się zaktualizować gotowego ustawienia"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Wyjście audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"O wyjściu audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Anuluj"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nie, dziękuję"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Nie teraz"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Zgadzam się"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Więcej"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Odblokowywanie skanem twarzy"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Pamiętaj"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Odblokowuj telefon i zatwierdzaj zakupy odciskiem palca.\n\nUwaga: nie możesz odblokowywać tego urządzenia odciskiem palca. Więcej informacji uzyskasz od administratora swojej organizacji."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Anuluj"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nie, dziękuję"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Nie teraz"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Zgadzam się"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Pominąć odcisk palca?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Zapisanie odcisku palca zajmuje tylko chwilę. Zawsze możesz go dodać później w ustawieniach."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Jak to działa"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Odblokowywanie odciskiem palca tworzy unikalny model odcisku palca, który pozwala zweryfikować Twoją tożsamość. Aby taki model mógł powstać, musisz odcisnąć palec kilka razy pod różnymi kątami."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Odblokowywanie odciskiem palca tworzy unikalny model odcisku palca, który pozwala zweryfikować tożsamość Twojego dziecka. Aby utworzyć taki model odcisku palca podczas konfiguracji, trzeba odcisnąć palec kilka razy pod różnymi kątami."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Najlepsze efekty daje osłona ekranu z oznaczeniem „Made for Google”. W przypadku innych osłon ekranu Twój odcisk palca może nie zadziałać."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Najlepsze efekty z osłoną ekranu z oznaczeniem „Made for Google”. W przypadku innych osłon ekranu Twój odcisk palca może nie zadziałać."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Najlepsze efekty daje osłona ekranu z oznaczeniem „Made for Google”. W przypadku innych osłon ekranu odcisk palca Twojego dziecka może nie zadziałać."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Odblokowywanie za pomocą zegarka"</string>
@@ -555,7 +556,7 @@
<string name="private_space_face_title" msgid="3290402865367663079">"Rozpoznawanie twarzy"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Kliknij, aby skonfigurować"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Odblokowywanie przestrzeni prywatnej odciskiem palca"</string>
- <string name="private_space_face_unlock_title" msgid="462248384776453613">"Rozpoznawanie twarzy na potrzeby przestrzeni prywatnej"</string>
+ <string name="private_space_face_unlock_title" msgid="462248384776453613">"Odblokowywanie przestrzeni prywatnej rozpoznawaniem twarzy"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Odblokowywanie przestrzeni prywatnej skanem palca i twarzy"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Skonfiguruj odblokowywanie przestrzeni prywatnej odciskiem palca"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Używaj odcisku palca do odblokowywania przestrzeni prywatnej lub potwierdzania tożsamości, np. podczas logowania się w aplikacjach lub zatwierdzania zakupów"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Przy każdym zablokowaniu urządzenia"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minut po automatycznym wygaszeniu"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Tylko po ponownym uruchomieniu"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Jeśli używasz innej blokady w przestrzeni prywatnej, może być konieczne zweryfikowanie, czy to Ty otwierasz w niej aplikacje."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ukrywaj przestrzeń prywatną"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ukrywaj przestrzeń prywatną po zablokowaniu"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Aby inni nie wiedzieli, że na urządzeniu jest przestrzeń prywatna, możesz ukryć ją na liście aplikacji"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Skonfiguruj"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Przestrzeń prywatna"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Ukryj lub zablokuj aplikacje prywatne w oddzielnym obszarze. Aby zwiększyć bezpieczeństwo, skorzystaj z dedykowanego konta Google."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Skonfiguruj przestrzeń prywatną"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Wybierz konto Google dla swojej przestrzeni"</b>\n"Korzystanie z dedykowanego konta zapobiega wyświetlaniu się synchronizowanych plików, zdjęć i e-maili poza Twoją przestrzenią."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Jak to działa"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Utwórz konto Google dla swojej przestrzeni"</b>\n"Jeśli używasz oddzielnego konta, najlepiej jest zatrzymać synchronizację plików, zdjęć i e-maili poza przestrzenią"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Ustaw blokadę"</b>\n"Zablokuj swoją przestrzeń, żeby inni nie mogli jej otworzyć."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Zainstaluj aplikacje"</b>\n"Twoja przestrzeń prywatna ma własny Sklep Play, dzięki czemu instalowanie aplikacji jest proste."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Gdy przestrzeń prywatna jest zablokowana, znajdujące się w niej aplikacje nie będą się pojawiać w menedżerze uprawnień, panelu prywatności ani innych ustawieniach.\n\nPrzestrzeni prywatnej nie da się przywrócić na nowym urządzeniu. Jeśli chcesz korzystać z przestrzeni prywatnej na innym urządzeniu, musisz skonfigurować nową.\n\nKażdy, kto połączy Twoje urządzenie z komputerem lub zainstaluje na urządzeniu szkodliwe aplikacje, będzie mógł uzyskać dostęp do Twojej przestrzeni prywatnej."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instalowanie aplikacji"</b>\n"Zainstaluj w swojej przestrzeni aplikacje, które mają pozostać prywatne"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Pamiętaj"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikacje przestają działać, gdy blokujesz swoją przestrzeń"</b>\n"Po zablokowaniu przestrzeni działające w niej aplikacje zostaną zatrzymane i nie będziesz otrzymywać powiadomień na ich temat"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Więcej o przestrzeni prywatnej"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Potrwa to kilka chwil"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Konfiguruję przestrzeń prywatną…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Możesz ustawić nową blokadę specjalnie na potrzeby przestrzeni prywatnej albo użyć blokady urządzenia"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Używaj blokady ekranu"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Wybierz nową blokadę"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Chwileczkę…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Chwileczkę…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Wszystko gotowe"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Aby znaleźć przestrzeń prywatną, przejdź do listy aplikacji, a następnie przewiń w dół"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Gotowe"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Ustaw kod PIN do przestrzeni prywatnej"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Ustaw hasło do przestrzeni prywatnej"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Ustaw wzór do przestrzeni prywatnej"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Utwórz konto Google, aby lepiej chronić prywatność swoich danych"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na następnym ekranie możesz zalogować się na konto, z którego chcesz korzystać w przestrzeni prywatnej"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Utwórz osobne konto, aby zapobiegać wyświetlaniu poza przestrzenią prywatną danych takich jak:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Zsynchronizowane zdjęcia, pliki, e-maile, kontakty, wydarzenia w kalendarzu i inne dane"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historia pobierania aplikacji i rekomendacje"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historia przeglądania, zakładki i zapisane hasła"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Sugerowane treści związane z Twoją aktywnością w aplikacjach w przestrzeni prywatnej"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Blokowanie"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ukrywanie"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Możesz dodać do <xliff:g id="COUNT">%d</xliff:g> odcisków palców"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certyfikat systemu"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Przypinanie certyfikatu"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Szczegóły sieci"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ta sieć wykorzystuje starszy protokół zabezpieczeń WEP, który jest mniej bezpieczny"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska podsieci"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nazwa serwera"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Typ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adres MAC karty Wi‑Fi urządzenia"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adres Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Numer seryjny"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Czas działania"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Czas działania"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data produkcji"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data pierwszego użycia"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Liczba cykli"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Kliknięcie w prawym dolnym rogu"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Kliknij prawy dolny róg touchpada, aby wyświetlić więcej opcji"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Szybkość wskaźnika"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Styl wypełnienia wskaźnika"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Zmień styl wypełnienia na czarny"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Zmień styl wypełnienia na zielony"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Zmień styl wypełnienia na żółty"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Zmień styl wypełnienia na różowy"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Zmień styl wypełnienia na niebieski"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Poznaj gesty na touchpada"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mysz, myszka, kursor, przewijanie, przesuwanie, kliknięcie prawym przyciskiem, klikanie, wskaźnik"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"kliknięcie prawym przyciskiem, klikanie, dotknięcie, wybranie, naciśnięcie"</string>
@@ -2197,7 +2201,7 @@
<string name="accessibility_button_high_label" msgid="9138077512008190896">"Nieprzezroczyste"</string>
<string name="accessibility_toggle_high_text_contrast_preference_title" msgid="1830189632458752698">"Tekst o dużym kontraście"</string>
<string name="accessibility_toggle_high_text_contrast_preference_summary" msgid="5286411556836346180">"Zmień kolor tekstu na czarny lub biały. Spowoduje to ustawienie maksymalnego kontrastu względem tła."</string>
- <string name="accessibility_toggle_maximize_text_contrast_preference_title" msgid="8737272017343509753">"Zmaksymalizuj kontrast tekstu"</string>
+ <string name="accessibility_toggle_maximize_text_contrast_preference_title" msgid="8737272017343509753">"Maksymalizuj kontrast tekstu"</string>
<string name="accessibility_toggle_maximize_text_contrast_preference_summary" msgid="8200408691846666900">"Dodawaj czarne lub białe tło wokół tekstu, aby zwiększyć kontrast"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_title" msgid="4987009529235165664">"Automatyczna aktualizacja powiększenia ekranu"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_summary" msgid="9034532513972547720">"Aktualizuj powiększenie ekranu przy zmianie aplikacji"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Brak}=1{Ustawiono 1 harmonogram}few{Ustawiono # harmonogramy}many{Ustawiono # harmonogramów}other{Ustawiono # harmonogramu}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Nie przeszkadzać"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Tryby priorytetowe"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Otrzymuj powiadomienia tylko od ważnych osób i z kluczowych aplikacji"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ograniczanie powiadomień"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Włącz tryb Nie przeszkadzać"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Dodaj kalendarz"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Korzystaj z kalendarza"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Zaplanuj"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Ustaw harmonogram"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Zaplanuj"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> godz. <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Harmonogram"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Wycisz telefon o pewnych porach"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Ustaw reguły trybu Nie przeszkadzać"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ta aplikacja nie obsługuje ustawień zaawansowanych"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Więcej ustawień"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Więcej ustawień znajdziesz w tej aplikacji"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Odpoczynek"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Użyj trybu Odpoczynek"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Gdy w krótkim czasie otrzymasz wiele powiadomień, urządzenie ograniczy liczbę sygnałów dźwiękowych i wyskakujących okienek na ekranie. Połączenia, alarmy i rozmowy priorytetowe nadal będą sygnalizowane normalnie, a wszystkie otrzymane powiadomienia będzie można łatwo znaleźć w obszarze powiadomień."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Zastosuj do profili służbowych"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Zastosuj w aplikacjach profilu służbowego"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Usługi pomocnicze rzeczywistości wirtualnej"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Wybrane aplikacje"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Brak"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Wszystkie"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Zezwól na zastępowanie przez aplikacje"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikacje, które mogą ignorować tryb Nie przeszkadzać"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Wybierz więcej aplikacji"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Zmień na alarmy tylko na 1 godzinę do {time}}few{Zmień na alarmy tylko na # godziny do {time}}many{Zmień na alarmy tylko na # godzin do {time}}other{Zmień na alarmy tylko na # godziny do {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Zmień na same alarmy do <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Zmień na ciągle powiadamianie"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Zmień nazwę"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Zmień ikonę"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Zmień ikonę"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Ostrzeżenie"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Zamknij"</string>
<string name="device_feedback" msgid="5351614458411688608">"Prześlij opinię o tym urządzeniu"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Po lewej"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Po prawej"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Etui"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel ustawień"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Wymuś tryb pulpitu"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Wymuś eksperymentalny tryb pulpitu na dodatkowych ekranach"</string>
@@ -4840,14 +4858,14 @@
<string name="track_frame_time_keywords" msgid="7885340257945922239">"GPU"</string>
<string name="enable_16k_pages" msgid="8001470927566110689">"Uruchom ze stroną 16 KB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Uruchom z jądrem systemu obsługującym stronę 16 KB"</string>
- <string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Zmiana z trybu 4 KB na 16 KB"</string>
+ <string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Zmiana z trybu 4 kB na 16 kB"</string>
<string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Korzystasz z ogólnego trybu strony z jądrem 4 kB i zamierzasz przełączyć się na tryb 16 kB. W tym trybie nie można zagwarantować integralności oprogramowania. Kiedy program rozruchowy będzie odblokowany, dane zapisane na telefonie mogą być zagrożone. Zmiana spowoduje ponowne uruchomienie urządzenia. W tych trybach niektóre funkcje będą wyłączone, a część aplikacji może nie działać. Aby przywrócić na urządzeniu tryb produkcyjny, musisz przełączyć je z powrotem na tryb 4 kB i zablokować program rozruchowy, co spowoduje zresetowanie urządzenia. Gdy na urządzeniu uruchomi się Android, wyłącz zdjęcie blokady OEM w Opcjach programisty."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Zmiana z trybu 16 KB na 4 KB"</string>
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Korzystasz z ogólnego trybu strony z jądrem 16 kB i zamierzasz przełączyć się na tryb 4 kB. W tym trybie nie można zagwarantować integralności oprogramowania. Kiedy program rozruchowy będzie odblokowany, dane zapisane na telefonie mogą być zagrożone. Zmiana spowoduje ponowne uruchomienie urządzenia. W tych trybach niektóre funkcje będą wyłączone, a część aplikacji może nie działać. Aby przywrócić na urządzeniu tryb produkcyjny, musisz zablokować program rozruchowy, co spowoduje zresetowanie urządzenia. Gdy na urządzeniu uruchomi się Android, wyłącz zdjęcie blokady OEM w Opcjach programisty."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Nie udało się zaktualizować jądra systemu, aby obsługiwał strony o rozmiarze 16 KB."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Wprowadzam zmianę"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Sformatować ponownie urządzenie jako ext4? (Jest to wymagane w przypadku trybu 16 KB)."</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Aby można było użyć trybu 16 KB w Opcjach programisty, musisz przekonwertować partycję danych na system ext4. W tym trybie nie można zagwarantować integralności oprogramowania. Kiedy program rozruchowy będzie odblokowany, dane zapisane na telefonie mogą być zagrożone. Po aktywowaniu trybu 16 KB będzie trzeba co najmniej raz uruchomić ponownie urządzenie. Po włączeniu tego trybu przełączanie się między trybami 4 KB i 16 KB będzie wymagało tylko jednokrotnego restartu. W tych trybach niektóre funkcje będą wyłączone, a część aplikacji może nie działać. Aby przywrócić na urządzeniu tryb produkcyjny, musisz przełączyć je z powrotem na tryb 4 KB i zablokować program rozruchowy, co spowoduje zresetowanie urządzenia. Gdy na urządzeniu uruchomi się Android, wyłącz zdjęcie blokady OEM w Opcjach programisty. Z urządzenia zostaną usunięte wszystkie dane, a po potwierdzeniu system plików zmieni się na ext4. Po wykonaniu tych czynności wróć tutaj, aby ponownie włączyć tryb 16 KB."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Sformatować ponownie urządzenie jako ext4? (Jest to wymagane w przypadku trybu 16 kB)."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Aby można było użyć trybu 16 kB w Opcjach programisty, musisz przekonwertować partycję danych na system ext4. W tym trybie nie można zagwarantować integralności oprogramowania. Kiedy program rozruchowy będzie odblokowany, dane zapisane na telefonie mogą być zagrożone. Po aktywowaniu trybu 16 kB będzie trzeba uruchomić urządzenie ponownie. Po włączeniu tego trybu przełączanie się między trybami 4 kB i 16 kB będzie wymagało tylko jednokrotnego restartu. W tych trybach niektóre funkcje będą wyłączone, a część aplikacji może nie działać. Aby przywrócić na urządzeniu tryb produkcyjny, musisz przełączyć je z powrotem na tryb 4 kB i zablokować program rozruchowy, co spowoduje zresetowanie urządzenia. Gdy na urządzeniu uruchomi się Android, wyłącz zdjęcie blokady OEM w Opcjach programisty. Z urządzenia zostaną usunięte wszystkie dane, a po potwierdzeniu system plików zmieni się na ext4. Po wykonaniu tych czynności wróć tutaj, aby ponownie włączyć tryb 16 kB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Usuń wszystkie dane"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Nie udało się wyczyścić partycji danych i sformatować jej jako ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Tryb 16 KB wymaga odblokowania programu rozruchowego"</string>
diff --git a/res/values-pt-rBR/arrays.xml b/res/values-pt-rBR/arrays.xml
index b3bfd99..d3b2406 100644
--- a/res/values-pt-rBR/arrays.xml
+++ b/res/values-pt-rBR/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index ba8b513..82bab61 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Desconectar dispositivo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Parear novo dispositivo"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Ativar automaticamente de novo amanhã"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Parear lado direito"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Parear lado esquerdo"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Pareie o outro lado"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Parear lado esquerdo"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Configurações do aparelho auditivo"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Atalho, compatibilidade com aparelhos auditivos"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Predefinições"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Predefinição"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Não foi possível atualizar a predefinição"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Saída de áudio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Sobre a saída de áudio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancelar"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Agora não"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Agora não"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Aceito"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mais"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Desbloquear com seu rosto"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Não esqueça"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Use sua impressão digital para desbloquear o smartphone ou aprovar compras.\n\nNota: não é possível usar sua impressão digital para desbloquear este dispositivo. Para mais informações, entre em contato com o administrador da organização."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancelar"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Agora não"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Agora não"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Aceito"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Pular impressão digital?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"A configuração da impressão digital leva apenas um ou dois minutos. Se você pular esta etapa, poderá adicionar sua digital mais tarde nas configurações."</string>
@@ -556,7 +557,7 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Toque para configurar"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Desbloqueio por impressão digital para o espaço privado"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Desbloqueio facial para o espaço privado"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Desbloq. facial e por impressão digital para espaço privado"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Desbloqueio facial e por digital para espaço privado"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Configurar o Desbloqueio por impressão digital para o espaço privado"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Use sua impressão digital para desbloquear seu espaço privado ou confirmar sua identidade e acessar apps ou aprovar uma compra"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"O espaço privado poderá ser desbloqueado mesmo se essa não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
@@ -567,8 +568,7 @@
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Usar seu rosto para desbloquear o espaço privado pode ser menos seguro que um padrão, PIN ou senha fortes"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Para desbloquear o espaço privado, seus olhos precisam estar abertos. Tire os óculos de sol para ter resultados melhores."</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"Use seu rosto para desbloquear seu espaço privado.\n\nNão se esqueça:\nSó é possível configurar um rosto por vez. Para adicionar outro rosto, exclua o registrado atualmente.\n\nOlhar para o smartphone pode desbloqueá-lo mesmo que você não queira fazer isso.\n\nO espaço privado pode ser desbloqueado por outra pessoa se o dispositivo for apontado para seu rosto.\n\nO desbloqueio também pode ser feito por alguém que se pareça muito com você, como um gêmeo idêntico."</string>
- <!-- no translation found for private_space_face_settings_require_confirmation_details (5406498664903812249) -->
- <skip />
+ <string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Sempre exigir uma etapa de confirmação ao usar o Desbloqueio facial"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Formas de desbloquear a tela"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"Igual ao bloqueio de tela do dispositivo"</string>
<string name="private_space_new_lock_title" msgid="9056139964133004094">"Escolher outro bloqueio para o espaço privado?"</string>
@@ -578,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Sempre que o dispositivo for bloqueado"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutos depois do tempo limite da tela"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Só depois que o dispositivo for reiniciado"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Se você usa um bloqueio diferente para o espaço privado, talvez seja necessário confirmar sua identidade para abrir apps nesse espaço."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ocultar espaço privado"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ocultar espaço privado quando bloqueado"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Oculte o espaço privado na sua lista de apps para que outras pessoas não saibam que ele está no dispositivo"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurar"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espaço privado"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Oculte ou bloqueie espaços privados em um espaço separado. Use uma Conta do Google dedicada para ter mais segurança."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configurar um espaço privado"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Escolha uma Conta do Google para o espaço"</b>\n"Usar uma conta dedicada ajuda a impedir que arquivos, fotos e e-mails sincronizados apareçam fora do seu espaço"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Como funciona"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crie uma Conta do Google para seu espaço"</b>\n"Usar uma conta dedicada ajuda a impedir que arquivos, fotos e e-mails sincronizados apareçam fora do seu espaço"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Defina um bloqueio"</b>\n"Bloqueie o espaço para impedir que outras pessoas o abram"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instale apps"</b>\n"Seu espaço privado tem a própria Play Store para que você possa instalar apps com facilidade."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Os apps do seu espaço privado não aparecem na Gestão de permissões, no painel de privacidade e em outras configurações quando esse espaço está bloqueado.\n\nSeu espaço privado não pode ser restaurado em um novo dispositivo. Você precisará configurar outro espaço privado se quiser usá-lo em outro dispositivo.\n\nQualquer usuário que conectar seu dispositivo a um computador ou instalar apps maliciosos no dispositivo conseguirá acessar seu espaço privado."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instale apps"</b>\n"Instale os apps que você quer guardar no seu espaço com privacidade"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Observação importante"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Os apps são interrompidos quando você bloqueia o espaço"</b>\n"Ao bloquear o espaço, os apps nele serão interrompidos e você não vai receber notificações deles"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Saiba mais sobre o espaço privado"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Isso vai levar alguns instantes"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configurando o espaço privado…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Você pode definir um novo bloqueio para o espaço privado ou usar o mesmo que você usa para desbloquear seu dispositivo"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Usar o bloqueio de tela"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Escolher novo bloqueio"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Só um segundo…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Só um segundo…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tudo pronto!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Para encontrar o espaço privado, abra sua lista de apps e role até a parte de baixo dela"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Concluído"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Defina um PIN para seu espaço privado"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Defina uma senha para seu espaço privado"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Defina um padrão para seu espaço privado"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crie uma Conta do Google para ajudar a manter a privacidade dos seus dados"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na próxima tela, você pode fazer login em uma conta para usar com seu espaço privado"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crie uma conta dedicada para ajudar a impedir que os dados apareçam fora do espaço privado, como:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotos, arquivos, e-mails, contatos, eventos da agenda e outros dados sincronizados"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Histórico e recomendações de download de apps"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Histórico de navegação, favoritos e senhas salvas"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Conteúdo sugerido relacionado à sua atividade em apps do espaço privado"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Entendi"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloquear"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ocultar"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"É possível adicionar até <xliff:g id="COUNT">%d</xliff:g> digitais"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificado do sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fixação de certificados"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalhes da rede"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Esta rede usa um protocolo de segurança mais antigo chamado WEP, que é menos seguro"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Máscara de sub-rede"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nome do servidor"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipo"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Endereço MAC do Wi-Fi do dispositivo"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Endereço Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Número de série"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tempo em atividade"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Tempo de atividade"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data de fabricação"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data do primeiro uso"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Contagem de ciclos"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Toque no canto inferior direito"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Toque no canto inferior direito do touchpad para mais opções"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocidade do cursor"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Estilo de preenchimento do ponteiro"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Mudar preenchimento para preto"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Mudar preenchimento para verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Mudar preenchimento para amarelo"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Mudar preenchimento para rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Mudar preenchimento para azul"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Aprender gestos do touchpad"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, rolar, deslizar, clicar com o botão direito do mouse, clicar, ponteiro"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"clicar com o botão direito do mouse, tocar"</string>
@@ -3253,8 +3256,7 @@
<string name="keywords_storage_settings" msgid="6018856193950281898">"memória, cache, dados, excluir, limpar, liberar, espaço"</string>
<string name="keywords_bluetooth_settings" msgid="2588159530959868188">"conectado, dispositivo, fones de ouvido, headset, alto-falante, sem fio, parear, música, mídia"</string>
<string name="keywords_wallpaper" msgid="7332890404629446192">"plano de fundo, tema, grade, personalizar"</string>
- <!-- no translation found for keywords_styles (1137053187860081131) -->
- <skip />
+ <string name="keywords_styles" msgid="1137053187860081131">"ícone, ícones, destaque, cor, tela inicial, tela de bloqueio, atalho, tamanho do relógio"</string>
<string name="keywords_assist_input" msgid="3086289530227075593">"padrão, assistente"</string>
<string name="keywords_default_payment_app" msgid="5162298193637362104">"pagamento, padrão"</string>
<string name="keywords_ambient_display" msgid="3149287105145443697">"notificação recebida"</string>
@@ -3321,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nenhuma}=1{1 programação definida}one{# programação definida}other{# programações definidas}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Não perturbe"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modos prioritários"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Receber notificações apenas de pessoas e apps importantes"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitar interrupções"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Ativar o Não perturbe"</string>
@@ -3335,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Adicione uma agenda"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use sua agenda"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programação"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Programação"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silenciar smartphone em horários específicos"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Definir regras do modo \"Não perturbe\""</string>
@@ -3605,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"O app não é compatível com as configurações avançadas."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Mais configurações"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Mais configurações estão disponíveis neste app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Período de espera"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Usar período de espera"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Quando você recebe muitas notificações em um período curto de tempo, o dispositivo vai minimizar as interrupções sonoras e pop-ups na tela. Ligações, alarmes e conversas prioritárias ainda vão soar alertas normalmente, e todas as notificações entregues serão fáceis de localizar na aba."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplicar a perfis de trabalho"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplicar em apps do perfil de trabalho"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Serviços de ajuda para RV"</string>
@@ -3758,15 +3771,12 @@
<string name="zen_mode_events_summary" msgid="3241903481309766428">"Eventos futuros da agenda"</string>
<string name="zen_mode_events_list" msgid="7191316245742097229">"eventos"</string>
<string name="zen_mode_events_list_first" msgid="7425369082835214361">"Eventos"</string>
- <!-- no translation found for zen_mode_apps_title (1691010857014041183) -->
- <skip />
- <!-- no translation found for zen_mode_apps_category (4082380323683889391) -->
- <skip />
- <!-- no translation found for zen_mode_apps_priority_apps (7386196048313716076) -->
- <skip />
- <!-- no translation found for zen_mode_apps_none_apps (2493642312793604327) -->
- <skip />
- <!-- no translation found for zen_mode_apps_all_apps (705700582778445484) -->
+ <string name="zen_mode_apps_title" msgid="1691010857014041183">"Apps"</string>
+ <string name="zen_mode_apps_category" msgid="4082380323683889391">"Apps que podem fazer interrupções"</string>
+ <string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Apps selecionados"</string>
+ <string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nenhum"</string>
+ <string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Todos"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
<skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permitir que apps modifiquem o \"Não perturbe\""</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps que podem fazer interrupções"</string>
@@ -3804,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Mudar para somente alarmes por uma hora até {time}}one{Mudar para somente alarmes por # hora até {time}}other{Mudar para somente alarmes por # horas até {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Alterar para \"Somente alarmes\" até <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Alterar para \"Sempre interromper\""</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Alerta"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Fechar"</string>
<string name="device_feedback" msgid="5351614458411688608">"Enviar feedback sobre o dispositivo"</string>
@@ -4544,7 +4560,7 @@
<string name="change_nfc_tag_apps_detail_summary" msgid="3338220223868942195">"Permitir que este app seja aberto quando a tag NFC for lida.\nSe esta permissão estiver ativada, o app vai ficar disponível como opção sempre que uma tag for detectada."</string>
<string name="media_output_title" msgid="8283629315159510680">"Tocar mídia"</string>
<string name="media_output_label_title" msgid="4139048973886819148">"Abrir <xliff:g id="LABEL">%s</xliff:g> no dispositivo abaixo:"</string>
- <string name="media_output_title_without_playing" msgid="3339321669132875821">"O áudio vai tocar"</string>
+ <string name="media_output_title_without_playing" msgid="3339321669132875821">"Áudio definido para"</string>
<string name="media_output_default_summary" msgid="4200343059396412376">"Neste dispositivo"</string>
<string name="media_output_audio_sharing" msgid="8169294522817470115">"Compartilhando áudio"</string>
<string name="media_out_summary_ongoing_call_state" msgid="475188726850090363">"Indisponível durante chamadas"</string>
@@ -4787,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Esquerdo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Direito"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Estojo"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Painel de configurações"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forçar modo de área de trabalho"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forçar o modo de área de trabalho experimental em telas secundárias"</string>
diff --git a/res/values-pt-rPT/arrays.xml b/res/values-pt-rPT/arrays.xml
index c08f8c8..a99b4a4 100644
--- a/res/values-pt-rPT/arrays.xml
+++ b/res/values-pt-rPT/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 3c3134c..0835f90 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Quer desl. o dispositivo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Sincronizar novo dispositivo"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Reativar amanhã automaticamente"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Sincr. ouv. direito"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Sincr. ouv. esquerdo"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Sincroniz. o outro ouvido"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Sincr. ouv. esquerdo"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Definições do dispositivo auditivo"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Atalho, compatibilidade com aparelhos auditivos"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Predefinições"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Predefinição"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Não foi possível atualizar a predefinição"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Saída de áudio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Acerca da saída de áudio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancelar"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Não"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Agora não"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Aceito"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mais"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Desbloquear com o rosto"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Tenha em atenção"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Utilize a sua impressão digital para desbloquear o telemóvel ou para autorizar compras.\n\nNota: não pode utilizar a sua impressão digital para desbloquear este dispositivo. Para mais informações, contacte o gestor da sua entidade."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancelar"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Não"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Agora não"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Aceito"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Ignorar impressão digital?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"A configuração da impressão digital demora apenas um ou dois minutos. Se ignorar este passo, pode adicionar a impressão digital mais tarde nas Definições."</string>
@@ -567,7 +568,7 @@
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"A utilização do seu rosto para desbloquear o espaço privado pode ser menos segura do que um padrão, um PIN ou uma palavra-passe forte"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Para desbloquear o espaço privado, os olhos têm de estar abertos. Para ter os melhores resultados, tire os óculos de sol."</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"Use o seu rosto para desbloquear o espaço privado.\n\nAtenção:\nSó pode ter um rosto configurado de cada vez. Para adicionar outro rosto, elimine o atual.\n\nPode desbloquear o telemóvel involuntariamente olhando para ele.\n\nAlguém pode desbloquear o espaço privado se segurar o dispositivo junto ao seu rosto.\n\nUma pessoa muito parecida consigo, como um irmão com traços semelhantes, pode desbloquear o espaço privado."</string>
- <string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Quando usar o Desbloqueio facial, pedir sempre o passo de confirmação"</string>
+ <string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Ao usar o Desbloqueio facial, pedir sempre o passo de confirmação."</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Formas de desbloquear"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"O mesmo que o bloqueio de ecrã do dispositivo"</string>
<string name="private_space_new_lock_title" msgid="9056139964133004094">"Escolher um novo bloqueio para o espaço privado?"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Sempre que o dispositivo é bloqueado"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutos após o limite de tempo do ecrã"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Apenas após o dispositivo reiniciar"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Se usar um bloqueio diferente para o espaço privado, pode ter de validar a sua identidade para abrir apps no espaço privado."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ocultar espaço privado"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Oculte o espaço privado quando estiver bloqueado"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Para impedir que outras pessoas saibam que tem um espaço privado no seu dispositivo, pode ocultá-lo da sua lista de apps"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurar"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espaço privado"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Oculte ou bloqueie apps privadas num espaço separado. Use uma Conta Google exclusiva para maior segurança."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Crie o seu espaço privado"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Escolha uma Conta Google para o seu espaço"</b>\n"A utilização de uma conta exclusiva permite parar de apresentar ficheiros, fotos e emails sincronizados fora do seu espaço"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Como funciona"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crie uma Conta Google para o seu espaço"</b>\n"Se usar uma conta dedicada, impede que os ficheiros, as fotos e os emails sincronizados sejam apresentados fora do seu espaço"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Defina um bloqueio"</b>\n"Bloqueie o seu espaço para impedir que outras pessoas o abram"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instale apps"</b>\n"O seu espaço privado tem a sua própria Play Store para que possa instalar apps facilmente."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"As apps no seu espaço privado não vão aparecer no Gestor de autorizações, no painel de privacidade e noutras definições quando o seu espaço privado estiver bloqueado.\n\nNão é possível restaurar o seu espaço privado para um novo dispositivo. Tem de configurar outro espaço privado se quiser usá-lo noutro dispositivo.\n\nQualquer pessoa que ligue o seu dispositivo a um computador ou instale apps maliciosas no seu dispositivo pode conseguir aceder ao seu espaço privado."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instale apps"</b>\n"Instale as apps que quer manter privadas no seu espaço"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Tenha em atenção"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"As apps param quando bloqueia o seu espaço"</b>\n"Quando bloqueia o seu espaço, as respetivas apps são paradas e deixam de lhe enviar notificações"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Saiba mais sobre o espaço privado"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Esta ação vai demorar alguns instantes"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"A configurar o espaço privado…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Pode definir um novo bloqueio apenas para o espaço privado ou usar o mesmo bloqueio que usa para desbloquear o dispositivo"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Usar bloqueio de ecrã"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Escolher novo bloqueio"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Aguarde um momento…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Aguarde um momento…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tudo pronto!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Para encontrar o seu espaço privado, aceda à sua lista de apps e desloque o ecrã para baixo"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Concluir"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Defina um PIN para o espaço privado"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Defina palavra-passe para espaço privado"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Defina um padrão para o espaço privado"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crie uma Conta Google para manter os seus dados privados"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"No ecrã seguinte, pode iniciar sessão numa conta para a usar com o seu espaço privado"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crie uma conta exclusiva para impedir que dados como os que se seguem apareçam fora do espaço privado:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotos, ficheiros, emails, contactos, eventos do calendário e outros dados sincronizados"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Recomendações e histórico de transferências de apps"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Histórico de navegação, marcadores, palavras-passe guardadas"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Conteúdo sugerido relacionado com a sua atividade em apps do espaço privado"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloquear"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ocultar"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Pode adicionar até <xliff:g id="COUNT">%d</xliff:g> impressões digitais"</string>
@@ -664,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"Escolha um bloqueio de ecrã"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"Escolha um novo bloqueio de ecrã"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"Escolha um bloqueio para apps de trabalho"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Esc. novo bloq. de trabalho"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"Escolha novo bloqueio de trabalho"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"Para maior segurança, defina um bloqueio de ecrã de segurança"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Escolha o método de bloqueio de ecrã de segurança"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Caso se esqueça do bloqueio de ecrã, o administrador de TI não consegue repô-lo."</string>
@@ -805,7 +802,7 @@
<string name="number_of_device_admins_none" msgid="152926922020437312">"Sem apps ativas"</string>
<string name="number_of_device_admins" msgid="3402909995362162876">"{count,plural, =1{# app ativa}other{# apps ativas}}"</string>
<string name="manage_trust_agents" msgid="6410149930029992356">"Agentes fidedignos"</string>
- <string name="disabled_because_no_backup_security" msgid="4998095356607488854">"Para utilizar, defina primeiro um bloqueio de ecrã"</string>
+ <string name="disabled_because_no_backup_security" msgid="4998095356607488854">"Para usar, defina primeiro um bloqueio de ecrã"</string>
<string name="manage_trust_agents_summary" msgid="6423843123607674286">"Nenhum"</string>
<string name="manage_trust_agents_summary_on" msgid="3302574418419446146">"{count,plural, =1{1 agente fidedigno ativo}other{# agentes fidedignos ativos}}"</string>
<string name="bluetooth_settings" msgid="2967239493428695171">"Bluetooth"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificado do sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Afixação de certificados"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalhes da rede"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Esta rede usa um protocolo de segurança mais antigo chamado WEP, que é menos seguro"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Máscara de sub-rede"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nome do servidor"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipo"</string>
@@ -1178,7 +1176,7 @@
<string name="display_settings" msgid="7197750639709493852">"Ecrã"</string>
<string name="accelerometer_title" msgid="7745991950833748909">"Rotação automática do ecrã"</string>
<string name="auto_rotate_option_off" msgid="2788096269396290731">"Desativado"</string>
- <string name="auto_rotate_option_on" msgid="5776678230808498171">"Ativado"</string>
+ <string name="auto_rotate_option_on" msgid="5776678230808498171">"Ativada"</string>
<string name="auto_rotate_option_face_based" msgid="3438645484087953174">"Ativada – Com base no rosto"</string>
<string name="auto_rotate_switch_face_based" msgid="9116123744601564320">"Deteção facial"</string>
<string name="auto_rotate_link_a11y" msgid="5146188567212233286">"Saiba mais sobre a rotação automática"</string>
@@ -1210,8 +1208,8 @@
<string name="adaptive_sleep_title_no_permission" msgid="1719759921214237016">"Acesso à câmara necessário"</string>
<string name="adaptive_sleep_summary_no_permission" msgid="5822591289468803691">"O acesso à câmara é necessário para a atenção ao ecrã. Toque para gerir as autorizações dos Serviços de personalização do dispositivo"</string>
<string name="adaptive_sleep_manage_permission_button" msgid="1404510197847664846">"Gerir autorizações"</string>
- <string name="adaptive_sleep_description" msgid="1835321775327187860">"Evita que o ecrã se desligue se estiver a olhar para o mesmo"</string>
- <string name="adaptive_sleep_privacy" msgid="7664570136417980556">"A atenção ao ecrã usa a câmara frontal para ver se alguém está a olhar para o ecrã. Funciona no dispositivo e as imagens nunca são armazenadas nem enviadas para a Google."</string>
+ <string name="adaptive_sleep_description" msgid="1835321775327187860">"Evita que o ecrã se desligue se estiver a olhar para ele"</string>
+ <string name="adaptive_sleep_privacy" msgid="7664570136417980556">"A atenção ao ecrã usa a câmara frontal para ver se alguém está a olhar para o ecrã. Funciona no dispositivo, e as imagens nunca são armazenadas nem enviadas para a Google."</string>
<string name="adaptive_sleep_contextual_slice_title" msgid="7467588613212629758">"Ative a atenção ao ecrã"</string>
<string name="adaptive_sleep_contextual_slice_summary" msgid="2993867044745446094">"Mantenha o ecrã ligado enquanto estiver a olhar para ele."</string>
<string name="power_consumption_footer_summary" msgid="4901490700555257237">"Um limite de tempo do ecrã mais longo vai aumentar a utilização da bateria."</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Endereço MAC de Wi-Fi do dispositivo"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Endereço Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Número de série"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tempo de atividade"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Tempo de atividade"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data de fabrico"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data da primeira utilização"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Número de ciclos"</string>
@@ -1619,7 +1617,7 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"A carregar..."</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"A carregar..."</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"Defina uma palavra-passe"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Defina uma palavra-passe de trabalho"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Palavra-passe de trabalho"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Defina um PIN"</string>
<string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Defina um PIN de trabalho"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Defina um padrão"</string>
@@ -1630,7 +1628,7 @@
<string name="lockpassword_choose_your_pin_message" msgid="7230665212172041837">"Por motivos de segurança, defina um PIN."</string>
<string name="lockpassword_choose_your_pin_header_for_fingerprint" msgid="2783879743691792556">"Defina PIN para usar impressão digital"</string>
<string name="lockpassword_confirm_your_password_header" msgid="6132312814563023990">"Reintroduza a palavra-passe"</string>
- <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Reintroduza a palavra-passe de trabalho"</string>
+ <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Insira palavra-passe de trabalho de novo"</string>
<string name="lockpassword_confirm_your_work_password_header" msgid="4647071231702288305">"Introduza a palavra-passe de trabalho"</string>
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"Confirme o padrão"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"Introduza o padrão de trabalho"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Tocar na parte inferior direita"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Toque no canto inferior direito do touchpad para mais opções"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocidade do ponteiro"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Estilo de preenchimento do ponteiro"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Alt. est. preenc. ponteiro p/ preto"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Alt. est. preenc. ponteiro p/ verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Alt. est. preenc. pont. p/ amarelo"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Alt. est. preenc. ponteiro p/ rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Alt. est. preenc. ponteiro p/ azul"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Aprender gestos do touchpad"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, rato, cursor, deslocar, deslizar, clicar com o botão direito do rato, clicar, ponteiro"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"clique com o botão direito do rato, toque"</string>
@@ -2061,7 +2065,7 @@
<string name="accessibility_captioning_about_title" msgid="3542171637334191563">"Acerca das preferências de legendas"</string>
<string name="accessibility_captioning_footer_learn_more_content_description" msgid="5730040700677017706">"Saiba mais acerca das preferências de legendas"</string>
<string name="accessibility_screen_magnification_title" msgid="1211169976144629087">"Ampliação"</string>
- <string name="accessibility_screen_magnification_shortcut_title" msgid="2387963646377987780">"Atalho da ampliação"</string>
+ <string name="accessibility_screen_magnification_shortcut_title" msgid="2387963646377987780">"Atalho para ampliação"</string>
<string name="accessibility_screen_magnification_follow_typing_title" msgid="6379517513916651560">"Ampliar a escrita"</string>
<string name="accessibility_screen_magnification_follow_typing_summary" msgid="2882250257391761678">"A lupa segue o texto enquanto escreve"</string>
<string name="accessibility_screen_magnification_always_on_title" msgid="3814297443759580936">"Manter ativada ao mudar de app"</string>
@@ -2198,7 +2202,7 @@
<string name="accessibility_toggle_high_text_contrast_preference_title" msgid="1830189632458752698">"Texto de alto contraste"</string>
<string name="accessibility_toggle_high_text_contrast_preference_summary" msgid="5286411556836346180">"Altera a cor do texto para preto ou branco. Maximiza o contraste com o fundo."</string>
<string name="accessibility_toggle_maximize_text_contrast_preference_title" msgid="8737272017343509753">"Maximizar contraste de texto"</string>
- <string name="accessibility_toggle_maximize_text_contrast_preference_summary" msgid="8200408691846666900">"Adicione um fundo preto ou branco à volta do texto para aumentar o contraste"</string>
+ <string name="accessibility_toggle_maximize_text_contrast_preference_summary" msgid="8200408691846666900">"Adicionar um fundo preto ou branco à volta do texto para aumentar o contraste"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_title" msgid="4987009529235165664">"Atualiz. auto da ampliação do ecrã"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_summary" msgid="9034532513972547720">"Atualizar ampliação do ecrã em transições de aplic"</string>
<string name="accessibility_power_button_ends_call_prerefence_title" msgid="8187306131979612144">"Botão de ligar termina chamada"</string>
@@ -2702,7 +2706,7 @@
<string name="cellular_security_settings_title" msgid="7779141923670352595">"Segurança de redes móveis"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"Notificações"</string>
<string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"Notificações de redes"</string>
- <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"Receba uma notificação quando o seu dispositivo se ligar a uma rede não encriptada ou quando uma rede registar o seu ID exclusivo do dispositivo ou do SIM"</string>
+ <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"Receba uma notificação quando o seu dispositivo se ligar a uma rede não encriptada ou quando uma rede registar o ID exclusivo do seu dispositivo ou do SIM"</string>
<string name="cellular_security_settings_encryption_title" msgid="4013084091666375780">"Encriptação"</string>
<string name="cellular_security_network_generations_title" msgid="2343026988833783854">"Gerações de redes"</string>
<string name="cellular_security_network_generations_summary" msgid="139087814553929402">"Pode configurar cada cartão SIM instalado para estabelecer ligação apenas a redes 3G, 4G e 5G. O SIM não vai estabelecer ligação a redes 2G inseguras mais antigas. Esta definição pode limitar a sua conetividade caso a única rede disponível seja o 2G. Em caso de emergência, o 2G pode ser usado."</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nenhum}=1{1 horário definido}other{# horários definidos}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Não incomodar"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modos de prioridade"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Receba notificações só de pessoas e apps importantes"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limite as interrupções"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Ativar o modo Não incomodar"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Adicione um calendário"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use o seu calendário"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Agende"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Horário"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silenciar telemóvel se necessário"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Definir regras de Não incomodar"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Esta app não suporta definições avançadas"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Mais definições"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Estão disponíveis mais definições dentro desta app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Relaxamento"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Use o Relaxamento"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Quando recebe muitas notificações num curto espaço de tempo, o seu dispositivo minimiza as interrupções de som e os pop-ups no ecrã. As chamadas, os alarmes e as conversas com prioridade continuam a ser alertadas como normais, e todas as notificações entregues são fáceis de encontrar na Sombra."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplicar aos perfis de trabalho"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplique a apps de perfil de trabalho"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Serviços de assistente de RV"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Apps selecionadas"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nenhuma"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Todas"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permitir que as apps substituam"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps que podem interromper"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Selecione mais apps"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Alterar para alarmes apenas durante uma hora até à(s) {time}}other{Alterar para alarmes apenas durante # horas até à(s) {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Alterar para alarmes apenas, até <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Alterar para interromper sempre"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Aviso"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Fechar"</string>
<string name="device_feedback" msgid="5351614458411688608">"Enviar feedback do dispositivo"</string>
@@ -4024,7 +4047,7 @@
<string name="keywords_vr_listener" msgid="902737490270081131">"rv realidade virtual serviço de escuta estéreo serviço assistente"</string>
<string name="overlay_settings" msgid="2030836934139139469">"Sobrepor a outras apps"</string>
<string name="filter_overlay_apps" msgid="2483998217116789206">"Apps com autorização"</string>
- <string name="app_permission_summary_allowed" msgid="1155115629167757278">"Permitida"</string>
+ <string name="app_permission_summary_allowed" msgid="1155115629167757278">"Permitido"</string>
<string name="app_permission_summary_not_allowed" msgid="2673793662439097900">"Não permitida"</string>
<string name="keywords_install_other_apps" msgid="563895867658775580">"instalar apps de fontes desconhecidas"</string>
<string name="write_settings" msgid="6864794401614425894">"Modificar definições do sistema"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Esquerdo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Direito"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Caixa"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Painel Definições"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forçar modo de ambiente de trabalho"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forçar modo de ambiente de trabalho experimental em ecrãs secundários"</string>
@@ -4873,7 +4897,7 @@
<string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistente digital"</string>
<string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Dá acesso ao assistente digital"</string>
<string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Dá acesso ao menu ligar/desligar"</string>
- <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para utilizar, defina primeiro um bloqueio de ecrã"</string>
+ <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para usar, defina primeiro um bloqueio de ecrã"</string>
<string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu ligar/desligar:\nPrima os botões ligar/desligar e aumentar volume em simultâneo"</string>
<string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Impedir o toque:\nPrima um botão de volume para o atalho"</string>
<string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duração da ação premir sem soltar"</string>
diff --git a/res/values-pt/arrays.xml b/res/values-pt/arrays.xml
index b3bfd99..d3b2406 100644
--- a/res/values-pt/arrays.xml
+++ b/res/values-pt/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index ba8b513..82bab61 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Desconectar dispositivo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Parear novo dispositivo"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Ativar automaticamente de novo amanhã"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Parear lado direito"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Parear lado esquerdo"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Pareie o outro lado"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Parear lado esquerdo"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Configurações do aparelho auditivo"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Atalho, compatibilidade com aparelhos auditivos"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Predefinições"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Predefinição"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Não foi possível atualizar a predefinição"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Saída de áudio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Sobre a saída de áudio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Cancelar"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Agora não"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Agora não"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Aceito"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mais"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Desbloquear com seu rosto"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Não esqueça"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Use sua impressão digital para desbloquear o smartphone ou aprovar compras.\n\nNota: não é possível usar sua impressão digital para desbloquear este dispositivo. Para mais informações, entre em contato com o administrador da organização."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Cancelar"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Agora não"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Agora não"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Aceito"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Pular impressão digital?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"A configuração da impressão digital leva apenas um ou dois minutos. Se você pular esta etapa, poderá adicionar sua digital mais tarde nas configurações."</string>
@@ -556,7 +557,7 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Toque para configurar"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Desbloqueio por impressão digital para o espaço privado"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Desbloqueio facial para o espaço privado"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Desbloq. facial e por impressão digital para espaço privado"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Desbloqueio facial e por digital para espaço privado"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Configurar o Desbloqueio por impressão digital para o espaço privado"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Use sua impressão digital para desbloquear seu espaço privado ou confirmar sua identidade e acessar apps ou aprovar uma compra"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"O espaço privado poderá ser desbloqueado mesmo se essa não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
@@ -567,8 +568,7 @@
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Usar seu rosto para desbloquear o espaço privado pode ser menos seguro que um padrão, PIN ou senha fortes"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Para desbloquear o espaço privado, seus olhos precisam estar abertos. Tire os óculos de sol para ter resultados melhores."</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"Use seu rosto para desbloquear seu espaço privado.\n\nNão se esqueça:\nSó é possível configurar um rosto por vez. Para adicionar outro rosto, exclua o registrado atualmente.\n\nOlhar para o smartphone pode desbloqueá-lo mesmo que você não queira fazer isso.\n\nO espaço privado pode ser desbloqueado por outra pessoa se o dispositivo for apontado para seu rosto.\n\nO desbloqueio também pode ser feito por alguém que se pareça muito com você, como um gêmeo idêntico."</string>
- <!-- no translation found for private_space_face_settings_require_confirmation_details (5406498664903812249) -->
- <skip />
+ <string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Sempre exigir uma etapa de confirmação ao usar o Desbloqueio facial"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Formas de desbloquear a tela"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"Igual ao bloqueio de tela do dispositivo"</string>
<string name="private_space_new_lock_title" msgid="9056139964133004094">"Escolher outro bloqueio para o espaço privado?"</string>
@@ -578,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Sempre que o dispositivo for bloqueado"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minutos depois do tempo limite da tela"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Só depois que o dispositivo for reiniciado"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Se você usa um bloqueio diferente para o espaço privado, talvez seja necessário confirmar sua identidade para abrir apps nesse espaço."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ocultar espaço privado"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ocultar espaço privado quando bloqueado"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Oculte o espaço privado na sua lista de apps para que outras pessoas não saibam que ele está no dispositivo"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurar"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Espaço privado"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Oculte ou bloqueie espaços privados em um espaço separado. Use uma Conta do Google dedicada para ter mais segurança."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configurar um espaço privado"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Escolha uma Conta do Google para o espaço"</b>\n"Usar uma conta dedicada ajuda a impedir que arquivos, fotos e e-mails sincronizados apareçam fora do seu espaço"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Como funciona"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Crie uma Conta do Google para seu espaço"</b>\n"Usar uma conta dedicada ajuda a impedir que arquivos, fotos e e-mails sincronizados apareçam fora do seu espaço"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Defina um bloqueio"</b>\n"Bloqueie o espaço para impedir que outras pessoas o abram"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instale apps"</b>\n"Seu espaço privado tem a própria Play Store para que você possa instalar apps com facilidade."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Os apps do seu espaço privado não aparecem na Gestão de permissões, no painel de privacidade e em outras configurações quando esse espaço está bloqueado.\n\nSeu espaço privado não pode ser restaurado em um novo dispositivo. Você precisará configurar outro espaço privado se quiser usá-lo em outro dispositivo.\n\nQualquer usuário que conectar seu dispositivo a um computador ou instalar apps maliciosos no dispositivo conseguirá acessar seu espaço privado."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instale apps"</b>\n"Instale os apps que você quer guardar no seu espaço com privacidade"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Observação importante"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Os apps são interrompidos quando você bloqueia o espaço"</b>\n"Ao bloquear o espaço, os apps nele serão interrompidos e você não vai receber notificações deles"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Saiba mais sobre o espaço privado"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Isso vai levar alguns instantes"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Configurando o espaço privado…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Você pode definir um novo bloqueio para o espaço privado ou usar o mesmo que você usa para desbloquear seu dispositivo"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Usar o bloqueio de tela"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Escolher novo bloqueio"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Só um segundo…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Só um segundo…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tudo pronto!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Para encontrar o espaço privado, abra sua lista de apps e role até a parte de baixo dela"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Concluído"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Defina um PIN para seu espaço privado"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Defina uma senha para seu espaço privado"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Defina um padrão para seu espaço privado"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Crie uma Conta do Google para ajudar a manter a privacidade dos seus dados"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na próxima tela, você pode fazer login em uma conta para usar com seu espaço privado"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Crie uma conta dedicada para ajudar a impedir que os dados apareçam fora do espaço privado, como:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotos, arquivos, e-mails, contatos, eventos da agenda e outros dados sincronizados"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Histórico e recomendações de download de apps"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Histórico de navegação, favoritos e senhas salvas"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Conteúdo sugerido relacionado à sua atividade em apps do espaço privado"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Entendi"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Bloquear"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ocultar"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"É possível adicionar até <xliff:g id="COUNT">%d</xliff:g> digitais"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificado do sistema"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fixação de certificados"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detalhes da rede"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Esta rede usa um protocolo de segurança mais antigo chamado WEP, que é menos seguro"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Máscara de sub-rede"</string>
<string name="server_name_title" msgid="7257095185810299066">"Nome do servidor"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tipo"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Endereço MAC do Wi-Fi do dispositivo"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Endereço Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Número de série"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tempo em atividade"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Tempo de atividade"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data de fabricação"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data do primeiro uso"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Contagem de ciclos"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Toque no canto inferior direito"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Toque no canto inferior direito do touchpad para mais opções"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Velocidade do cursor"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Estilo de preenchimento do ponteiro"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Mudar preenchimento para preto"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Mudar preenchimento para verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Mudar preenchimento para amarelo"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Mudar preenchimento para rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Mudar preenchimento para azul"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Aprender gestos do touchpad"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, rolar, deslizar, clicar com o botão direito do mouse, clicar, ponteiro"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"clicar com o botão direito do mouse, tocar"</string>
@@ -3253,8 +3256,7 @@
<string name="keywords_storage_settings" msgid="6018856193950281898">"memória, cache, dados, excluir, limpar, liberar, espaço"</string>
<string name="keywords_bluetooth_settings" msgid="2588159530959868188">"conectado, dispositivo, fones de ouvido, headset, alto-falante, sem fio, parear, música, mídia"</string>
<string name="keywords_wallpaper" msgid="7332890404629446192">"plano de fundo, tema, grade, personalizar"</string>
- <!-- no translation found for keywords_styles (1137053187860081131) -->
- <skip />
+ <string name="keywords_styles" msgid="1137053187860081131">"ícone, ícones, destaque, cor, tela inicial, tela de bloqueio, atalho, tamanho do relógio"</string>
<string name="keywords_assist_input" msgid="3086289530227075593">"padrão, assistente"</string>
<string name="keywords_default_payment_app" msgid="5162298193637362104">"pagamento, padrão"</string>
<string name="keywords_ambient_display" msgid="3149287105145443697">"notificação recebida"</string>
@@ -3321,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Nenhuma}=1{1 programação definida}one{# programação definida}other{# programações definidas}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Não perturbe"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modos prioritários"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Receber notificações apenas de pessoas e apps importantes"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitar interrupções"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Ativar o Não perturbe"</string>
@@ -3335,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Adicione uma agenda"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Use sua agenda"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Programação"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Programação"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Silenciar smartphone em horários específicos"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Definir regras do modo \"Não perturbe\""</string>
@@ -3605,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"O app não é compatível com as configurações avançadas."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Mais configurações"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Mais configurações estão disponíveis neste app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Período de espera"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Usar período de espera"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Quando você recebe muitas notificações em um período curto de tempo, o dispositivo vai minimizar as interrupções sonoras e pop-ups na tela. Ligações, alarmes e conversas prioritárias ainda vão soar alertas normalmente, e todas as notificações entregues serão fáceis de localizar na aba."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplicar a perfis de trabalho"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplicar em apps do perfil de trabalho"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Serviços de ajuda para RV"</string>
@@ -3758,15 +3771,12 @@
<string name="zen_mode_events_summary" msgid="3241903481309766428">"Eventos futuros da agenda"</string>
<string name="zen_mode_events_list" msgid="7191316245742097229">"eventos"</string>
<string name="zen_mode_events_list_first" msgid="7425369082835214361">"Eventos"</string>
- <!-- no translation found for zen_mode_apps_title (1691010857014041183) -->
- <skip />
- <!-- no translation found for zen_mode_apps_category (4082380323683889391) -->
- <skip />
- <!-- no translation found for zen_mode_apps_priority_apps (7386196048313716076) -->
- <skip />
- <!-- no translation found for zen_mode_apps_none_apps (2493642312793604327) -->
- <skip />
- <!-- no translation found for zen_mode_apps_all_apps (705700582778445484) -->
+ <string name="zen_mode_apps_title" msgid="1691010857014041183">"Apps"</string>
+ <string name="zen_mode_apps_category" msgid="4082380323683889391">"Apps que podem fazer interrupções"</string>
+ <string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Apps selecionados"</string>
+ <string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nenhum"</string>
+ <string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Todos"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
<skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permitir que apps modifiquem o \"Não perturbe\""</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Apps que podem fazer interrupções"</string>
@@ -3804,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Mudar para somente alarmes por uma hora até {time}}one{Mudar para somente alarmes por # hora até {time}}other{Mudar para somente alarmes por # horas até {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Alterar para \"Somente alarmes\" até <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Alterar para \"Sempre interromper\""</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Alerta"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Fechar"</string>
<string name="device_feedback" msgid="5351614458411688608">"Enviar feedback sobre o dispositivo"</string>
@@ -4544,7 +4560,7 @@
<string name="change_nfc_tag_apps_detail_summary" msgid="3338220223868942195">"Permitir que este app seja aberto quando a tag NFC for lida.\nSe esta permissão estiver ativada, o app vai ficar disponível como opção sempre que uma tag for detectada."</string>
<string name="media_output_title" msgid="8283629315159510680">"Tocar mídia"</string>
<string name="media_output_label_title" msgid="4139048973886819148">"Abrir <xliff:g id="LABEL">%s</xliff:g> no dispositivo abaixo:"</string>
- <string name="media_output_title_without_playing" msgid="3339321669132875821">"O áudio vai tocar"</string>
+ <string name="media_output_title_without_playing" msgid="3339321669132875821">"Áudio definido para"</string>
<string name="media_output_default_summary" msgid="4200343059396412376">"Neste dispositivo"</string>
<string name="media_output_audio_sharing" msgid="8169294522817470115">"Compartilhando áudio"</string>
<string name="media_out_summary_ongoing_call_state" msgid="475188726850090363">"Indisponível durante chamadas"</string>
@@ -4787,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Esquerdo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Direito"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Estojo"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Painel de configurações"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forçar modo de área de trabalho"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forçar o modo de área de trabalho experimental em telas secundárias"</string>
diff --git a/res/values-ro/arrays.xml b/res/values-ro/arrays.xml
index ba9b1d2..1ecad11 100644
--- a/res/values-ro/arrays.xml
+++ b/res/values-ro/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 4ebf8df..1d9fe0e 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Deconectezi dispozitivul?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Asociază un nou dispozitiv"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Activează din nou automat mâine"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Urechea dreaptă"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Urechea stângă"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Asociază cealaltă ureche"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Asociază urechea stângă"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Setări pentru aparate auditive"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Comandă rapidă, compatibilitate cu aparatele auditive"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Presetări"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Presetare"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Nu s-a putut actualiza presetarea"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Ieșire audio"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Despre ieșirea audio"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Anulează"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nu, mulțumesc"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Nu acum"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Accept"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mai multe"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Deblochează folosindu-ți chipul"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Reține"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Folosește amprenta ca să deblochezi telefonul sau să aprobi achizițiile.\n\nNotă: nu îți poți folosi amprenta ca să deblochezi acest dispozitiv. Pentru informații suplimentare, contactează administratorul organizației."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Anulează"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nu, mulțumesc"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Nu acum"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Accept"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Omiți amprenta?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Setarea amprentei durează doar un minut sau două. Dacă ignori acest pas acum, poți adăuga amprenta mai târziu din setări."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Cum funcționează"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Deblocarea cu amprenta creează un model unic al amprentei tale pentru a-ți confirma identitatea. Pentru a crea acest model de amprentă, în timpul configurării vei captura imagini ale amprentei tale din diferite poziții."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Deblocarea cu amprenta creează un model unic al amprentei copilului tău pentru a-i confirma identitatea. Pentru a crea acest model de amprentă în timpul configurării, va captura imagini ale amprentei sale din diferite poziții."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Pentru rezultate optime, folosește o protecție pentru ecran care este certificată Made for Google. Este posibil ca amprenta să nu funcționeze cu alte protecții pentru ecran."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Pentru rezultate optime, folosește o protecție pentru ecran cu certificarea Made for Google. Este posibil ca amprenta să nu funcționeze cu alte protecții pentru ecran."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Pentru rezultate optime, folosește o protecție pentru ecran care este certificată Made for Google. Este posibil ca amprenta copilului să nu funcționeze cu alte protecții pentru ecran."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Deblocare cu ceasul"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"La fiecare blocare a dispozitivului"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Cinci minute după dezactivarea ecranului"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Doar după ce dispozitivul repornește"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ascunde spațiul privat"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ascunde spațiul privat când este blocat"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Pentru ca alții să nu știe că ai un spațiu privat pe dispozitiv, ascunde-l din lista de aplicații"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Configurează"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Spațiu privat"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Ascunde sau blochează aplicațiile private într-un spațiu separat. Folosește un Cont Google dedicat pentru mai multă securitate."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Configurează spațiul privat"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Alege un Cont Google dedicat pentru spațiul tău"</b>\n"Folosirea unui cont dedicat împiedică afișarea fișierelor, fotografiilor și e-mailurilor sincronizate în afara spațiului"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Cum funcționează"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Creează un Cont Google pentru spațiul tău"</b>\n"Dacă folosești un cont dedicat, fișierele, fotografiile și e-mailurile sincronizate nu vor apărea în afara spațiului tău"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Setează o blocare"</b>\n"Blochează spațiul pentru ca alte persoane să nu-l poată deschide"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instalează aplicații"</b>\n"Spațiul privat are propriul Magazin Play, astfel că poți instala ușor aplicații"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Aplicațiile din spațiul privat nu vor apărea în Managerul de permisiuni, în tabloul de bord de confidențialitate și în alte setări atunci când spațiul privat este blocat.\n\nSpațiul privat nu poate fi restabilit pe un dispozitiv nou. Va trebui să configurezi alt spațiu privat dacă vrei să-l folosești pe alt dispozitiv.\n\nOricine îți conectează dispozitivul la un computer sau instalează aplicații rău intenționate pe dispozitiv poate să îți acceseze spațiul privat."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instalează aplicații"</b>\n"Instalează aplicațiile pe care vrei să le păstrezi private în spațiul tău"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Reține"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplicațiile se opresc când îți blochezi spațiul"</b>\n"Când îți blochezi spațiul, aplicațiile din spațiul tău sunt oprite și nu vei mai primi notificări de la ele"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Află mai multe despre spațiul privat"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Procesul va dura câteva momente"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Se configurează spațiul privat…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Poți să setezi o nouă blocare doar pentru spațiul privat sau să folosești aceeași blocare pe care o folosești pentru a debloca dispozitivul."</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Folosește blocarea ecranului"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Alege o nouă blocare"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"O secundă…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"O secundă…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Gata!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Pentru a găsi spațiul privat, accesează lista de aplicații, apoi derulează în jos"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Gata"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Setează un PIN pentru spațiul privat"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Setează o parolă pentru spațiul privat"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Setează un model pentru spațiul privat"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Creează un Cont Google pentru a-ți păstra datele private"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Pe următorul ecran, poți să te conectezi la un cont pe care să-l folosești cu spațiul privat"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Creează un cont dedicat pentru a împiedica datele să apară în afara spațiului privat, de exemplu:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotografii, fișiere, e-mailuri, agenda, evenimente din calendar și alte date sincronizate"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Istoricul descărcărilor de aplicații și recomandări"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Istoricul de navigare, marcaje și parole salvate"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Conținut sugerat care are legătură cu activitatea ta în aplicațiile din spațiul privat"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Blochează"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ascunde"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Poți să adaugi până la <xliff:g id="COUNT">%d</xliff:g> amprente"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificat de sistem"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fixarea certificatelor"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detaliile rețelei"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Rețeaua folosește un protocol de securitate mai vechi, numit WEP, care este mai puțin sigur"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Mască de subrețea"</string>
<string name="server_name_title" msgid="7257095185810299066">"Numele serverului"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tip"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adresa MAC Wi-Fi a dispozitivului"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adresă Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Număr de serie"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Durată de funcționare"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Durată de funcționare"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data fabricării"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data primei folosiri"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Numărul de cicluri"</string>
@@ -1636,7 +1633,7 @@
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"Confirmă modelul"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"Introdu modelul pentru serviciu"</string>
<string name="lockpassword_confirm_your_pin_header" msgid="2241722970567131308">"Reintrodu codul PIN"</string>
- <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Reintroduceți codul PIN de serviciu"</string>
+ <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Reintrodu codul PIN de serviciu"</string>
<string name="lockpassword_confirm_your_work_pin_header" msgid="4229765521391960255">"Introdu codul PIN pentru serviciu"</string>
<string name="lockpassword_confirm_passwords_dont_match" msgid="2100071354970605232">"Parolele nu corespund"</string>
<string name="lockpassword_confirm_pins_dont_match" msgid="1103699575489401030">"Codurile PIN nu corespund"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Atingere în dreapta jos"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Atinge colțul din dreapta jos al touchpadului pentru alte opțiuni"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Viteza indicatorului"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Stilul de umplere al pointerului"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Schimbă stilul de umplere în negru"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Schimbă stilul de umplere în verde"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Schimbă stilul de umplere în galben"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Schimbă stilul de umplere în roz"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Schimbă stilul de umplere în albastru"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Învață gesturi pentru touchpad"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, derulează, glisează, dă clic dreapta, dă clic, indicator"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"dă clic dreapta, atinge"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Niciunul}=1{Un program setat}few{# programe setate}other{# de programe setate}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Nu deranja"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Moduri cu prioritate"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Primește notificări doar de la persoane și aplicații importante"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitează întreruperile"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Activează Nu deranja"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Editează"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Programe"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Program"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Activează automat"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Adaugă un calendar"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Folosește-ți calendarul"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Program"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Program"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Dezactivează sunetul uneori"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Aplicația nu acceptă setările optimizate"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Mai multe setări"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Mai multe setări sunt disponibile în această aplicație"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Reducerea volumului"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Folosește Reducerea volumului"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Când primești multe notificări într-un timp scurt, dispozitivul va minimiza întreruperile sunetului și ferestrele pop-up de pe ecran. Apelurile, alarmele și conversațiile prioritare vor declanșa în continuare alerte ca de obicei și toate notificările trimise se găsesc ușor în fereastra de notificări."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Aplică profilurilor de serviciu"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Aplică pentru aplicațiile din profilul de serviciu"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Servicii de ajutor pentru RV"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Aplicațiile selectate"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Niciuna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Toate"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Permite aplicațiilor să ignore"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplicații care pot întrerupe"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Selectează mai multe aplicații"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Schimbă la Numai alarme pentru o oră, până la {time}}few{Schimbă la Numai alarme pentru # ore, până la {time}}other{Schimbă la Numai alarme pentru # de ore, până la {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Schimbă la „Numai alarme” până la <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Schimbă la „Întrerupe întotdeauna”"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Avertisment"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Închide"</string>
<string name="device_feedback" msgid="5351614458411688608">"Trimite feedback despre dispozitiv"</string>
@@ -4344,11 +4362,11 @@
<string name="account_sync_summary_all_on" msgid="2953682111836599841">"Sincronizare activată pentru toate articolele"</string>
<string name="account_sync_summary_all_off" msgid="6378301874540507884">"Sincronizare dezactivată pentru toate elementele"</string>
<string name="enterprise_privacy_settings" msgid="786350385374794180">"Informații privind dispozitivul gestionat"</string>
- <string name="enterprise_privacy_settings_summary_generic" msgid="5471858290610344646">"Modificări și setări gestionate de organizația dvs."</string>
+ <string name="enterprise_privacy_settings_summary_generic" msgid="5471858290610344646">"Modificări și setări gestionate de organizația ta"</string>
<string name="enterprise_privacy_settings_summary_with_name" msgid="1315413275836515937">"Modificări și setări gestionate de <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>"</string>
<string name="enterprise_privacy_header" msgid="4626225398848641603">"Pentru a oferi acces la datele tale de serviciu, organizația poate să modifice setările și să îți instaleze un software pe dispozitiv.\n\nPentru mai multe detalii, contactează administratorul organizației."</string>
<string name="enterprise_privacy_exposure_category" msgid="2507761423540037308">"Tipuri de informații care pot fi văzute de organizația ta"</string>
- <string name="enterprise_privacy_exposure_changes_category" msgid="5459989751333816587">"Modificări făcute de administratorul organizației dvs."</string>
+ <string name="enterprise_privacy_exposure_changes_category" msgid="5459989751333816587">"Modificări făcute de administratorul organizației tale"</string>
<string name="enterprise_privacy_device_access_category" msgid="140157499478630004">"Accesul tău la acest dispozitiv"</string>
<string name="enterprise_privacy_enterprise_data" msgid="3963070078195245028">"Date asociate contului dvs. de serviciu, cum ar fi e-mailul și calendarul"</string>
<string name="enterprise_privacy_installed_packages" msgid="6707006112254572820">"Lista de aplicații de pe dispozitiv"</string>
@@ -4504,7 +4522,7 @@
<string name="angle_enabled_app_set" msgid="7811829383833353021">"Aplicație compatibilă cu ANGLE: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="graphics_driver_dashboard_title" msgid="5661084817492587796">"Preferințe pentru driverul plăcii grafice"</string>
<string name="graphics_driver_dashboard_summary" msgid="6348759885315793654">"Modifică setările driverului plăcii grafice"</string>
- <string name="graphics_driver_footer_text" msgid="5123754522284046790">"Când sunt disponibile mai multe drivere ale plăcii grafice, puteți alege să folosiți driverul actualizat al plăcii grafice pentru aplicațiile instalate pe dispozitiv."</string>
+ <string name="graphics_driver_footer_text" msgid="5123754522284046790">"Când sunt disponibile mai multe drivere ale plăcii grafice, poți alege să folosești driverul actualizat al plăcii grafice pentru aplicațiile instalate pe dispozitiv."</string>
<string name="graphics_driver_all_apps_preference_title" msgid="1343065382898127360">"Activează pentru toate aplicațiile"</string>
<string name="graphics_driver_app_preference_title" msgid="3133255818657706857">"Selectează driverul plăcii grafice"</string>
<string name="graphics_driver_app_preference_default" msgid="764432460281859855">"Prestabilit"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Stânga"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Dreapta"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Carcasă"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panou de setări"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Forțează modul desktop"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Forțează modul desktop experimental pe ecrane secundare"</string>
@@ -4915,7 +4934,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Permite modemul de testare"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Permite dispozitivului să ruleze serviciul de modem de testare pentru testarea codului de măsurare. Nu activa această funcție în timpul folosirii normale a telefonului."</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Dezactivează protecțiile pentru permiterea accesului la ecran"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Dezactivează protecțiile de sistem pentru conținutul aplicațiilor sensibile în cazul sesiunilor ulterioare de permitere a accesului la ecran"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Dezactivează protecțiile de sistem pentru conținutul sensibil din aplicații în cazul sesiunilor ulterioare de permitere a accesului la ecran"</string>
<string name="media_controls_title" msgid="403271085636252597">"Media"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Fixează playerul media"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Pentru a relua rapid redarea, playerul media rămâne deschis în Setări rapide"</string>
diff --git a/res/values-ru/arrays.xml b/res/values-ru/arrays.xml
index 9f7d302..14b0477 100644
--- a/res/values-ru/arrays.xml
+++ b/res/values-ru/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 153e34c..d489e35 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Отключить устройство?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Добавить устройство"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Включить завтра автоматически"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Подключить прав. ухо"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Подключить левое ухо"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Подключить другое ухо"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Подключить левое ухо"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Настройки слуховых аппаратов"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Быстрый запуск, совместимость со слуховыми аппаратами"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Наборы настроек"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Набор настроек"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Не удалось обновить набор настроек."</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудиовыход"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"О выводе звука"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Отмена"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Нет, спасибо"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Не сейчас"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Принять"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Ещё"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Распознавание лица"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Важно!"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Разблокируйте телефон и подтверждайте покупки, используя отпечатки пальцев.\n\nВнимание! Для разблокировки этого устройства сканер отпечатков использовать нельзя. За подробной информацией обратитесь к администратору."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Отмена"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Нет, спасибо"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Не сейчас"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Принять"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Не настраивать отпечатки?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Сканирование отпечатков пальцев займет 1–2 минуты. Вы можете добавить их позже в настройках устройства."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Как это работает"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Функция разблокировки по отпечатку пальца использует уникальную модель вашего отпечатка, чтобы узнавать вас во время аутентификации. Для создания модели необходимо отсканировать ваш палец в разных положениях."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Функция разблокировки по отпечатку пальца использует уникальную модель отпечатка, чтобы узнавать вашего ребенка во время аутентификации. Для создания модели необходимо отсканировать палец в разных положениях."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Рекомендуем использовать защитное стекло или пленку из серии \"Сделано для Google\". Устройства с другими стеклами или пленками могут не распознавать отпечаток пальца."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Рекомендуем использовать защитное стекло или пленку, сертифицированные по программе \"Сделано для Google\". Устройства с другими стеклами или пленками могут не распознавать отпечаток пальца."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Рекомендуем использовать защитное стекло или пленку из серии \"Сделано для Google\". Устройства с другими стеклами или пленками могут не распознавать отпечаток пальца ребенка."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Разблокировка с помощью часов"</string>
@@ -554,19 +555,19 @@
<string name="private_space_fingerprint_title" msgid="5989254643211889931">"Разблокировка по отпечатку пальца"</string>
<string name="private_space_face_title" msgid="3290402865367663079">"Фейсконтроль"</string>
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Нажмите, чтобы настроить"</string>
- <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Разблокировка по отпечатку пальца для личного пространства"</string>
- <string name="private_space_face_unlock_title" msgid="462248384776453613">"Фейсконтроль для личного пространства"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Разблок. по лицу и отпечатку пальца для частного прост-ва"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Настроить разблокировку по отпечатку пальца для частного пространства"</string>
+ <string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Разблокировка по отпечатку для частного пространства"</string>
+ <string name="private_space_face_unlock_title" msgid="462248384776453613">"Фейсконтроль для частного пространства"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Разблокировка по лицу и отпечатку для частного пространства"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Разблокировка по отпечатку для частного пространства"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Используйте отпечаток пальца, чтобы разблокировать частное пространство или подтверждать свою личность, например для входа в приложения и одобрения покупок."</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Частное пространство может быть разблокировано, если кто-то поднесет телефон к вашему пальцу."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Теперь вы можете использовать отпечаток пальца, чтобы разблокировать частное пространство или одобрять покупки."</string>
- <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Настройте фейсконтроль для частного пространства"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Фейсконтроль для частного пространства"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Используйте фейсконтроль, чтобы разблокировать частное пространство или подтверждать свою личность, например для входа в приложения и одобрения покупок."</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Вы можете случайно разблокировать частное пространство, посмотрев на телефон. Также это может произойти, если телефоном воспользуется кто-то очень похожий на вас, например близнец, или устройство поднесут к вашему лицу."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Фейсконтроль может быть менее надежным способом защиты частного пространства, чем графический ключ, PIN-код или пароль."</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Для разблокировки частного пространства нужно, чтобы ваши глаза были открыты. Также рекомендуем снять солнечные очки."</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Используйте фейсконтроль, чтобы разблокировать частное пространство.\n\nВажно!\nОтсканировать можно только одно лицо. Чтобы добавить другую модель лица, сначала удалите предыдущую.\n\nВы можете случайно разблокировать телефон, посмотрев на него.\n\nЧастное пространство может быть разблокировано, если кто-то поднесет устройство к вашему лицу.\n\nТакже это может произойти, если телефоном воспользуется кто-то очень похожий на вас, например близнец."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Используйте фейсконтроль, чтобы разблокировать частное пространство.\n\nВажно!\nФейсконтроль можно настроить только на одно лицо за раз. Чтобы добавить другую модель лица, сначала удалите предыдущую.\n\nВы можете случайно разблокировать телефон, посмотрев на него.\n\nЧастное пространство может быть разблокировано, если кто-то поднесет устройство к вашему лицу.\n\nТакже это может произойти, если телефоном воспользуется кто-то очень похожий на вас, например близнец."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Всегда запрашивать подтверждение фейсконтроля"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Способы разблокировки"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"Тот же способ блокировки, что и для экрана устройства"</string>
@@ -575,10 +576,8 @@
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"Автоматически блокировать частное пространство"</string>
<string name="private_space_auto_lock_page_summary" msgid="8679844515655838654">"Можно сделать так, чтобы частное пространство автоматически блокировалось, если вы не используете устройство какое-то время."</string>
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Каждый раз при блокировке устройства"</string>
- <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Через пять минут после отключения экрана"</string>
+ <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Через 5 минут после отключения экрана"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Только после перезапуска устройства"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Скрывать частное пространство"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Скрывать частное пространство, когда оно заблокировано"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Вы можете скрыть частное пространство из списка приложений на устройстве. Так никто не узнает, что вы пользуетесь этой функцией."</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Создать"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Частное пространство"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Создайте пространство для личных приложений, которое можно скрыть или защитить с помощью блокировки. В целях безопасности используйте отдельный аккаунт Google."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Настройка личного пространства"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Выбор аккаунта Google"</b>\n"Чтобы синхронизированные файлы, фотографии и электронные письма не появлялись вне вашего личного пространства, выберите, какой аккаунт в нем использовать."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Как это работает"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Создайте аккаунт Google для частного пространства"</b>\n"Так синхронизированные файлы, фотографии и электронные письма не будут видны вне частного пространства"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Блокировка"</b>\n"Заблокируйте частное пространство, чтобы другие пользователи не могли его открыть."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Установка приложений"</b>\n"В личном пространстве есть Google Play, поэтому вы можете легко устанавливать приложения."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Когда доступ к частному пространству закрыт, приложения из него не показываются в разделе \"Управление разрешениями\", на панели управления разрешениями и в других настройках.\n\nЧастное пространство нельзя восстановить на другом устройстве, но можно создать новое.\n\nДоступ к частному пространству может получить злоумышленник, если ему удастся установить на устройство вредоносные приложения или подключить его к компьютеру."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Установите приложения"</b>\n"Доступ к ним будет только у вас"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Важно!"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Если заблокировать частное пространство, работа приложений в нем остановится"</b>\n"Также перестанут приходить уведомления от них"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Подробнее о личном пространстве"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Это займет некоторое время."</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Создание личного пространства…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Вы можете установить способ блокировки отдельно для личного пространства или использовать тот, что настроен для экрана."</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Использовать способ, настроенный для экрана"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Выбрать другой способ"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Подождите…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Подождите…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Готово"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Чтобы найти частное пространство, перейдите в список приложений и прокрутите экран вниз."</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Готово"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Задайте PIN-код для личного пространства"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Задайте пароль для частного пространства"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Создайте ключ для личного пространства"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Создайте аккаунт Google для защиты своих данных"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"На следующем экране вы сможете войти в аккаунт, чтобы использовать его в личном пространстве."</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Создайте отдельный аккаунт, чтобы данные не появлялись вне вашего личного пространства:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Синхронизированные фотографии, файлы, письма, контакты, мероприятия и другие данные."</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Рекомендации и история скачанных приложений."</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"История браузера, закладки и сохраненные пароли."</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Контент, рекомендованный с учетом ваших действий в приложениях из личного пространства."</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"ОК"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Блокировка"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ограничение доступа"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Максимальное количество отпечатков пальца, которые можно добавить: <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Сертификат системы"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Закрепление сертификата"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Сведения о сети"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Эта сеть использует устаревший протокол безопасности (WEP) с низким уровнем защиты"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Маска подсети"</string>
<string name="server_name_title" msgid="7257095185810299066">"Имя сервера"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Тип"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC-адрес Wi-Fi устройства"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Адрес Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Серийный номер"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Время с момента включения"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Время работы"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Дата изготовления"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Дата первого использования"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Количество циклов"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Правый нижний угол сенсорной панели"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Показывать варианты при нажатии в правом нижнем углу"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Скорость указателя"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Стиль заливки указателя"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Изменить стиль заливки на черный"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Изменить стиль заливки на зеленый"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Изменить стиль заливки на желтый"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Изменить стиль заливки на розовый"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Изменить стиль заливки на синий"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Узнать о жестах на сенсорной панели"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"сенсорная панель, мышь, указатель мыши, прокрутить, провести по экрану, нажать правую кнопку мыши, нажать"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"нажать правую кнопку мыши, нажать"</string>
@@ -2845,7 +2848,7 @@
<string name="data_usage_label_foreground" msgid="8782117644558473624">"Активный режим"</string>
<string name="data_usage_label_background" msgid="8862781660427421859">"Фоновый режим"</string>
<string name="data_usage_app_restricted" msgid="312065316274378518">"доступ ограничен"</string>
- <string name="data_usage_disable_mobile" msgid="6183809500102606801">"Отключить мобильный Интернет?"</string>
+ <string name="data_usage_disable_mobile" msgid="6183809500102606801">"Отключить мобильный интернет?"</string>
<string name="data_usage_disable_mobile_limit" msgid="1370147078938479538">"Установить лимит"</string>
<string name="data_usage_disable_4g_limit" msgid="3084868504051520840">"Лимитировать трафик 4G"</string>
<string name="data_usage_disable_3g_limit" msgid="8867555130268898044">"Лимитировать трафик 2G и 3G"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Нет настроенных расписаний}=1{Настроено 1 расписание}one{Настроено # расписание}few{Настроено # расписания}many{Настроено # расписаний}other{Настроено # расписания}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Не беспокоить"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Режимы приоритета"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Получать уведомления только от важных людей и приложений."</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Отключение уведомлений"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Включите режим \"Не беспокоить\""</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Изменить"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Расписания"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Расписание"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Включать автоматически"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Добавить в календарь"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Использовать календарь"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Расписание"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Расписание"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Отключать звук в заданное время"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"В этом приложении не поддерживаются расширенные настройки."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Дополнительные настройки"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Дополнительные настройки доступны в приложении"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Снижение громкости уведомлений"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Снижать громкость уведомлений"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Когда вам поступает много уведомлений за короткое время, устройство сократит количество всплывающих окон и уберет лишние звуки. Вы по-прежнему будете слышать звонки, будильники и оповещения из важных разговоров. Все полученные уведомления можно посмотреть, проведя пальцем вниз от верхней части экрана."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Применить к рабочим профилям"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Применить для приложений в рабочем профиле"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Вспомогательные VR-сервисы"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Выбранные приложения"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Нет"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Все"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Разрешить приложениям переопределять \"Не беспокоить\""</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Приложения, для которых не действует режим \"Не беспокоить\""</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Другие приложения"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Активировать режим \"Только будильник\" на один час до {time}}one{Активировать режим \"Только будильник\" на # час до {time}}few{Активировать режим \"Только будильник\" на # часа до {time}}many{Активировать режим \"Только будильник\" на # часов до {time}}other{Активировать режим \"Только будильник\" на # часа до {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Активировать режим \"Только будильник\" до <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Режим \"Не беспокоить\" отключен."</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Уведомление"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Закрыть"</string>
<string name="device_feedback" msgid="5351614458411688608">"Отправить отзыв об устройстве"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Левый"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Правый"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Зарядный чехол"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Батарея"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Панель настроек"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Принудительное включение режима рабочего стола"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Принудительное включение экспериментального режима рабочего стола на дополнительных экранах"</string>
@@ -4848,18 +4867,18 @@
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Увеличение размера страницы памяти с 4 до 16 КБ"</string>
<string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Вы используете режим работы, который не зависит от страниц памяти, и ядро с размером страницы 4 КБ. Вы собираетесь увеличить размер до 16 КБ. После этого гарантировать целостность программного обеспечения будет невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Устройство будет перезагружено. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы сбросить настройки и вернуть устройство в производственный режим, вновь уменьшите размер страницы памяти до 4 КБ и заблокируйте загрузчик операционной системы. После запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\"."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Уменьшение размера страницы памяти с 16 до 4 кБ"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Вы используете режим работы, который не зависит от страниц памяти, и ядро с размером страницы 16 кБ. Вы собираетесь уменьшить размер до 4 кБ. После этого гарантировать целостность программного обеспечения будет невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Устройство будет перезагружено. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы сбросить настройки и вернуть устройство в производственный режим, заблокируйте загрузчик операционной системы. После успешного запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\"."</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Вы используете режим работы, который не зависит от страниц памяти, и ядро с размером страницы 16 КБ. Вы собираетесь уменьшить размер до 4 КБ. После этого гарантировать целостность программного обеспечения будет невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Устройство будет перезагружено. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы сбросить настройки и вернуть устройство в производственный режим, заблокируйте загрузчик операционной системы. После успешного запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\"."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Не удалось обеспечить совместимость ядра с размером страницы 16 КБ."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Применение изменения…"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Отформатировать устройство и изменить файловую систему на ext4? Обязательно при размере страницы 16 кБ"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Прежде чем использовать параметр для разработчиков и менять размер страницы памяти на 16 кБ, преобразуйте раздел данных на этом устройстве в файловую систему ext4. После этого гарантировать целостность программного обеспечения будет невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. При выполнении процедуры устройство нужно будет перезагрузить ещё раз. В этом режиме для переключения между размерами страницы памяти (4 кБ и 16 кБ) требуется одна перезагрузка. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы сбросить настройки и вернуть устройство в производственный режим, вновь уменьшите размер страницы памяти до 4 кБ и заблокируйте загрузчик операционной системы. После успешного запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\". При подтверждении данные с вашего устройства будут удалены, а файловая система будет изменена на ext4. Затем снова увеличьте размер страницы памяти до 16 кБ."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Отформатировать в ext4? Обязательно при ядре 16 КБ"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Прежде чем использовать параметр для разработчиков и менять размер страницы памяти на 16 КБ, преобразуйте раздел данных на этом устройстве в файловую систему ext4. После этого гарантировать целостность программного обеспечения будет невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. При выполнении процедуры устройство нужно будет перезагрузить ещё раз. В этом режиме для переключения между размерами страницы памяти (4 КБ и 16 КБ) требуется одна перезагрузка. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы сбросить настройки и вернуть устройство в производственный режим, вновь уменьшите размер страницы памяти до 4 КБ и заблокируйте загрузчик операционной системы. После успешного запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\". При подтверждении данные с вашего устройства будут удалены, а файловая система будет изменена на ext4. Затем снова увеличьте размер страницы памяти до 16 КБ."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Удалить все данные"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Не удалось отформатировать раздел данных и сменить файловую систему на ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Чтобы изменить размер страницы памяти на 16 кБ, разблокируйте загрузчик операционной системы"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Прежде чем использовать параметр для разработчиков и менять размер страницы памяти на 16 кБ, разблокируйте загрузчик операционной системы на этом устройстве. После этого гарантировать целостность программного обеспечения будет невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. При повышении размера до 16 кБ все пользовательские данные и настройки будут удалены. После разблокировки загрузчика операционной системы потребуется перезагрузить устройство два раза. В этом режиме для переключения между размерами страницы памяти (4 кБ и 16 кБ) требуется одна перезагрузка. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы сбросить настройки и вернуть устройство в производственный режим, вновь уменьшите размер до 4 кБ и заблокируйте загрузчик операционной системы. Разблокируйте загрузчик и повторите попытку. Сведения о том, как это сделать, опубликованы на странице <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>."</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Используется режим работы, который не зависит от страниц, с размером страницы 4 кБ."</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Вы используете режим работы, который не зависит от страниц, с размером страницы 4 кБ. Гарантировать целостность программного обеспечения при этом невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы вернуться в производственный режим, заблокируйте загрузчик операционной системы. Нажмите, чтобы узнать подробности."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Вы используете режим работы, который не зависит от страниц, с размером страницы 4 кБ. Гарантировать целостность программного обеспечения при этом невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы вернуться в производственный режим, заблокируйте загрузчик операционной системы. Настройки устройства при этом сбросятся. После успешного запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\". Перепрошейте устройство, если оно работает нестабильно или Android на нем не запускается. Для этого используйте последние заводские образы с сайта <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> или <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a&gt. Затем нажмите \"Удалить данные с устройства\", \"Заблокировать загрузчик операционной системы\" и \"Принудительно прошить все разделы\"."</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Режим, который не зависит от страниц, с ядром 4 KБ"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Вы используете режим работы, который не зависит от страниц, с размером страницы 4 КБ. Гарантировать целостность программного обеспечения при этом невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы вернуться в производственный режим, заблокируйте загрузчик операционной системы. Нажмите, чтобы узнать подробности."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Вы используете режим работы, который не зависит от страниц, с размером страницы 4 КБ. Гарантировать целостность программного обеспечения при этом невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы вернуться в производственный режим, заблокируйте загрузчик операционной системы. Настройки устройства при этом сбросятся. После успешного запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\". Перепрошейте устройство, если оно работает нестабильно или Android на нем не запускается. Для этого используйте последние заводские образы с сайта <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> или <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a&gt. Затем нажмите \"Удалить данные с устройства\", \"Заблокировать загрузчик операционной системы\" и \"Принудительно прошить все разделы\"."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Используется режим работы, который не зависит от страниц, с размером страницы 16 кБ."</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Вы используете режим работы, который не зависит от страниц памяти, с размером страницы 16 кБ. Гарантировать целостность программного обеспечения при этом невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы вернуться в производственный режим, вновь уменьшите размер страницы памяти до 4 кБ и заблокируйте загрузчик операционной системы. Нажмите, чтобы узнать подробности."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Вы используете режим работы, который не зависит от страниц памяти, с размером страницы 16 кБ. Гарантировать целостность программного обеспечения при этом невозможно. Любые данные, сохраненные на телефоне, пока загрузчик операционной системы разблокирован, могут быть под угрозой. Некоторые функции будут отключены, поэтому отдельные приложения могут не работать. Чтобы вернуться в производственный режим, вновь уменьшите размер страницы памяти до 4 кБ и заблокируйте загрузчик операционной системы. Настройки устройства при этом сбросятся. После успешного запуска Android отключите разблокировку загрузчика в разделе \"Для разработчиков\". Перепрошейте устройство, если оно работает нестабильно или Android на нем не запускается. Для этого используйте последние заводские образы с сайта <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> или <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a&gt. Затем нажмите \"Удалить данные с устройства\", \"Заблокировать загрузчик операционной системы\" и \"Принудительно прошить все разделы\"."</string>
@@ -5296,7 +5315,7 @@
<string name="audio_sharing_connect_button_label" msgid="4241911519063029982">"Подключить"</string>
<string name="audio_sharing_sharing_stopped_label" msgid="8128194452354240996">"Отправка аудио остановлена"</string>
<string name="audio_sharing_confirm_dialog_title" msgid="7655147122624691167">"Подключите совместимое устройство"</string>
- <string name="audio_sharing_comfirm_dialog_content" msgid="3479217934447446066">"Перед началом отправки аудио подключите к телефону наушники с поддержкой LE Audio."</string>
+ <string name="audio_sharing_comfirm_dialog_content" msgid="3479217934447446066">"Чтобы передавать аудио, подключите к телефону наушники с поддержкой LE Audio."</string>
<string name="audio_streams_category_title" msgid="4878022761829895463">"Подключение к потоку LE Audio"</string>
<string name="audio_streams_pref_title" msgid="6320485086288646209">"Аудиопотоки рядом"</string>
<string name="audio_streams_title" msgid="6617990880383079165">"Аудиопотоки"</string>
diff --git a/res/values-si/arrays.xml b/res/values-si/arrays.xml
index d51a1c0..8c9e286 100644
--- a/res/values-si/arrays.xml
+++ b/res/values-si/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index c5777a8..8aabde8 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"උපාංගය විසන්ධි කරන්නද?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"නව උපාංගය යුගල කරන්න"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"බ්ලූටූත්"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"හෙට ස්වයංක්රීයව නැවත ක්රියාත්මක කරන්න"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"දකුණු කණ යුගල කරන්න"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"වම් කණ යුගල කරන්න"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"ඔබගේ අනෙක් කණ යුගල කරන්න"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"වම් කණ යුගල කරන්න"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"ශ්රවණ උපකරණ සැකසීම්"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"කෙටිමඟ, ශ්රවණාධාරක අනුකූලත්වය"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"පෙර සැකසීම්"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"පෙරසැකසුම"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"පෙර සැකසීම යාවත්කාලීන කළ නොහැකි විය"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ශබ්ද ප්රතිදානය"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ශ්රව්ය ප්රතිදානය පිළිබඳව"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"අවලංගු කරන්න"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"එපා ස්තූතියි"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"දැන් නොවේ"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"මම එකඟ වෙමි"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"තව"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ඔබේ මුහුණ සමඟ අගුලු හරින්න"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"මතක තබා ගන්න"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"ඔබේ දුරකථනය අගුලු හැරීමට, හෝ මිලදී ගැනීම් අනුමත කිරීමට ඔබේ ඇඟිලි සලකුණ භාවිත කරන්න.\n\nසටහන: ඔබට ඔබේ ඇඟිලි සලකුණ මෙම උපාංගය අගුලු හැරීමට භාවිත කළ නොහැකිය. තව තොරතුරු සඳහා, ඔබේ සංවිධානයෙහි පරිපාලක අමතන්න."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"අවලංගු කරන්න"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"එපා, ස්තුතියි"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"දැන් නොවේ"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"මම එකඟ වෙමි"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ඇඟිලි සලකුණ මඟ හරින්නද?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"ඇඟිලි සලකුණු සැකසීම මිනිත්තුවක් හෝ දෙකක් පමණක් ගනී. ඔබ මෙය මඟ හරින්නේ නම්, ඔබට පසුව ඔබගේ ඇඟිලි සලකුණු සැකසීම් තුළ සැකසිය හැක."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"උපාංගය අගුළු දමන සෑම අවස්ථාවකම"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"තිර කාලය අවසන් වීමෙන් මිනිත්තු 5කට පසුව"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"උපාංගය යළි ඇරඹීමෙන් පසුව පමණි"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"රහසිගත අවකාශය සඟවන්න"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"රහසිගත අවකාශය අගුළු දමා ඇති විට එය සඟවන්න"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"ඔබේ උපාංගය මත රහසිගත අවකාශයක් ඇති බව අන් අය දැන ගැනීම වැළැක්වීමට, ඔබට එය ඔබේ යෙදුම් ලැයිස්තුවෙන් සැඟවිය හැක"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"පිහිටුවන්න"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"රහසිගත අවකාශය"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"පෞද්ගලික යෙදුම් වෙනම අවකාශයක සඟවන්න හෝ අගුළු දමන්න. අමතර සුරැකුම සඳහා කැප වූ Google ගිණුමක් භාවිත කරන්න."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"ඔබේ රහසිගත අවකාශය සකසන්න"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"ඔබේ ඉඩ සඳහා Google ගිණුමක් තෝරන්න"</b>\n" කැප කළ ගිණුමක් භාවිත කිරීම සමමුහුර්ත කළ ගොනු, ඡායාරූප සහ ඉ-තැපෑල් ඔබේ ඉඩෙන් පිටත දිස් වීම නැවැත්වීමට උපකාරී වේ"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"එය ක්රියා කරන ආකාරය"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"ඔබේ අවකාශය සඳහා Google ගිණුමක් සාදන්න"</b>\n"ඔබ කැප වුණු ගිණුමක් භාවිත කරන්නේ නම්, එය සමමුහූර්ත කළ ගොනු, ඡායාරූප, සහ ඉ-තැපැල් ඔබේ අවකාශයට පිටත දිස් වීම නැවැත්වීමට උදවු කරයි"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"අගුලක් සකසන්න"</b>\n"වෙනත් පුද්ගලයින් එය විවෘත කිරීම නැවැත්වීමට ඔබේ අවකාශය අඟුළුලන්න"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"යෙදුම් ස්ථාපනය"</b>\n" ඔබේ රහසිගත අවකාශයට තමන්ගේම Play Store ඇති නිසා ඔබට පහසුවෙන් යෙදුම් ස්ථාපනය කළ හැක."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"ඔබේ පුද්ගලික අවකාශය අගුලු දමා ඇති විට ඔබේ පුද්ගලික අවකාශය තුළ ඇති යෙදුම් අවසර කළමනාකරු, පෞද්ගලිකත්ව උපකරණ පුවරුව, සහ වෙනත් සැකසීම්වල දිස් නොවෙයි.\n\nඔබේ පුද්ගලික අවකාශය නව උපාංගයකට ප්රතිසාධන කළ නොහැක. ඔබට එය වෙනත් උපාංගයක භාවිත කිරීමට අවශ්ය නම් ඔබට වෙනත් පුද්ගලික අවකාශයක් සැකසීමට අවශ්ය වෙයි.\n\nඔබේ උපාංගය පරිගණකයකට සම්බන්ධ කරන හෝ ඔබේ උපාංගය මත අනිෂ්ට යෙදුම් ස්ථාපන කරන ඕනෑම අයෙකුට ඔබේ පුද්ගලික අවකාශයට ප්රවේශ විය හැක."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"යෙදුම් ස්ථාපන කරන්න"</b>\n"ඔබ පුද්ගලිකව තබා ගැනීමට කැමති යෙදුම් ඔබේ අවකාශය තුළ ස්ථාපන කරන්න"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"මතක තබා ගන්න"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"ඔබ ඔබේ අවකාශයට අගුලු දමන විට යෙදුම් නවතියි"</b>\n"ඔබ ඔබේ අවකාශයට අගුලු දමන විට, ඔබේ අවකාශය තුළ ඇති යෙදුම් නවතින අතර ඔබට ඒවායෙන් දැනුම්දීම් නොලැබෙයි"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"රහසිගත අවකාශය ගැන තව දැන ගන්න"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"මෙයට මොහොතක් ගත වෙයි"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"පෞද්ගලික අවකාශය පිහිටුවමින්…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"ඔබට පුද්ගලික ඉඩකඩ නිසාම නව අගුලක් සැකසිය හැක, නැති නම් ඔබ ඔබේ උපාංගයට අගුලු දැමීමට භාවිත කරන අගුල ම භාවිත කළ හැක"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"තිර අගුල භාවිතා කරන්න"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"නව අගුලක් තෝරා ගන්න"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"තත්පරයක් ඉන්න…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"තත්පරයක් ඉන්න…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"සියල්ල සූදානම්!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"ඔබේ පුද්ගලික අවකාශය සොයා ගැනීමට, ඔබේ යෙදුම් ලැයිස්තුවට ගොස් පහළට අනුචලන කරන්න"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"නිමයි"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ඔබේ පෞද්ගලික අවකාශය සඳහා PIN එකක් සකසන්න"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ඔබේ පෞද්ගලික අවකාශය සඳහා මුරපදයක් සකසන්න"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ඔබේ පෞද්ගලික අවකාශය සඳහා රටාවක් සකසන්න"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"ඔබේ දත්ත පෞද්ගලිකව තබා ගැනීමට උදවු කිරීමට Google ගිණුමක් සාදන්න"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"මීළඟ තිරයේ ඔබට ඔබේ රහසිගත අවකාශය සමග භාවිත කිරීමට ගිණුමකට පුරනය විය හැක"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"රහසිගත අවකාශයෙන් පිටත දත්ත දිස්වීම නැවැත්වීමට උදවු කිරීමට කැපවූ ගිණුමක් සාදන්න, එනම්:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"සමමුහුර්ත කළ ඡායාරූප, ගොනු, ඉ-තැපැල්, සම්බන්ධතා, දින දර්ශන සිදුවීම් සහ වෙනත් දත්ත"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"යෙදුම් බාගැනීම් ඉතිහාසය සහ නිර්දේශ"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"බ්රවුස් කිරීමේ ඉතිහාසය, පිටුසන් සහ සුරකින ලද මුරපද"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"රහසිගත අවකාශ යෙදුම්වල ඔබේ ක්රියාකාරකම්වලට අදාළ යෝජිත අන්තර්ගතය"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"තේරුණා"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"අගුලු දමන්න"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"සඟවන්න"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"ඔබට ඇඟිලි සලකුණු <xliff:g id="COUNT">%d</xliff:g> දක්වා එකතු කළ හැකිය"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"පද්ධති සහතිකය"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"සහතික ඇමිණීම"</string>
<string name="wifi_details_title" msgid="222735438574597493">"ජාල විස්තර"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"මෙම ජාලය WEP නම් පරණ ආරක්ෂක ප්රොටෝකෝලය භාවිත කරයි, එය අඩුවෙන් සුරක්ෂිතයි."</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"සබ්නෙට් මාස්ක්"</string>
<string name="server_name_title" msgid="7257095185810299066">"සේවාදායකයේ නම"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"වර්ගය"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"උපාංග Wi‑Fi MAC ලිපිනය"</string>
<string name="status_bt_address" msgid="6919660304578476547">"බ්ලූටූත් ලිපිනය"</string>
<string name="status_serial_number" msgid="9060064164331466789">"අනුක්රමාංකය"</string>
- <string name="status_up_time" msgid="1274778533719495438">"ක්රියාකාරීව ඇති කාලය"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ක්රියාකාරීව ඇති කාලය"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"නිෂ්පාදන දිනය"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"පළමු භාවිතයේ දිනය"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"චක්ර ගණන"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"පහළ-දකුණ තට්ටු කිරීම"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"තවත් විකල්ප සඳහා ස්පර්ශ පුවරුවේ පහළ දකුණු කෙළවර තට්ටු කරන්න"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"දර්ශක වේගය"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"දර්ශක පිරවුම් විලාසය"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"දර්ශක පිරවුම් විලාසය කළු පැහැයට වෙනස් කරන්න"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"දර්ශක පිරවුම් විලාසය කොළ පැහැයට වෙනස් කරන්න"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"දර්ශක පිරවුම් විලාසය කහ පැහැයට වෙනස් කරන්න"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"දර්ශක පිරවුම් විලාසය රෝස පැහැයට වෙනස් කරන්න"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"දර්ශක පිරවුම් විලාසය නිල් පැහැයට වෙනස් කරන්න"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ස්පර්ශක පුවරු අභිනයන් ඉගෙන ගන්න"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ට්රැක්පෑඩ්, ට්රැක් පෑඩ්, මූසිකය, කර්සරය, අනුචලනය, ස්වයිප්, දකුණු ක්ලික්, ක්ලික්, දර්ශකය"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"දකුණු ක්ලික් කරන්න, තට්ටු කරන්න"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{කිසිත් නැත}=1{කාලසටහන් 1ක් සකසන ලදී}one{කාලසටහන් #ක් සකසන ලදී}other{කාලසටහන් #ක් සකසන ලදී}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"බාධා නොකරන්න"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ප්රමුඛතා ප්රකාර"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"වැදගත් පුද්ගලයන් සහ යෙදුම් විසින් පමණක් දැනුම් දෙනු ලැබේ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"බාධා සීමා කරන්න"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"බාධා නොකරන්න ක්රියාත්මක කරන්න"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"සංස්කරණය කරන්න"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"කාල සටහන්"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"කාල සටහන"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"ස්වයංක්රීයව ක්රියාත්මක කරන්න"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"දින දර්ශනයක් එක් කරන්න"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ඔබේ දින දර්ශනය භාවිතා කරන්න"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"කාල සටහන"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"කාල සටහන"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"නිශ්චිත වේලාවලදී දුරකථනය නිහඬ කරන්න"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"මෙම යෙදුම වැඩිදියුණු කළ සැකසීම් සඳහා සහාය නොදක්වයි"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"තව සැකසීම්"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"මෙම යෙදුම තුළ තවත් සැකසීම් තිබේ"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"සන්සුන් වීම"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"සන්සුන් වීම භාවිත කරන්න"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"ඔබට කෙටි කාල පරාසයක් ඇතුළත බොහෝ දැනුම්දීඹ් ලැබෙන විට, ඔබේ උපාංගය ශබ්ද බාධා සහ තිරය මත උත්පතන අවම කරයි. ඇමතුම්, එලාම, ප්රමුඛ සංවාද තවම සාමාන්ය පරිදි අඟවන අතර බෙදා හරින ලද සියලුම දැනුම්දීම් Shade තුළ පහසුවෙන් සොයා ගත හැක."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"කාර්යාල පැතිකඩ සඳහා යොදන්න"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"කාර්යාල පැතිකඩ යෙදුම්වලට යොදන්න"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR උදවුකරු සේවා"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"තෝරාගත් යෙදුම"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"කිසිවක් නැත"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"සියලු"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ප්රතික්ෂේප කිරිමට යෙදුම්වලට ඉඩ දෙන්න"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"බාධා කළ හැකි යෙදුම්"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"තවත් යෙදුම් තෝරන්න"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} දක්වා පැයක් සඳහා පමණක් එලාම වෙත වෙනස් කරන්න}one{{time} දක්වා පැය #ක් සඳහා පමණක් එලාම වෙත වෙනස් කරන්න}other{{time} දක්වා පැය #ක් සඳහා පමණක් එලාම වෙත වෙනස් කරන්න}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> පමණක් දක්වා ඇති සීනු වෙත මාරු වෙන්න"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"සෑම විටම බාධා කිරීම වෙත මාරු වෙන්න"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"අවවාදයයි"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"වසන්න"</string>
<string name="device_feedback" msgid="5351614458411688608">"මෙම උපාංගය පිළිබඳ ප්රතිපෝෂණ යවන්න"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"වම"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"දකුණ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"කේස්"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"බැටරිය"</string>
<string name="settings_panel_title" msgid="346363079938069215">"සැකසීම් පුවරුව"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"වැඩතල ප්රකාරය බල කරන්න"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ද්විතීයික සංදර්ශන කෙරෙහි අත්හදා බැලීමේ වැඩතල ප්රකාරය බල කරන්න"</string>
diff --git a/res/values-sk/arrays.xml b/res/values-sk/arrays.xml
index f314f3f..1683b37 100644
--- a/res/values-sk/arrays.xml
+++ b/res/values-sk/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 458bc23..aad6e64 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Odpojiť zariadenie?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Spárovať nové zariadenie"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Automaticky zajtra znova zapnúť"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Spárovať pravé ucho"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Spárovať ľavé ucho"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Spárujte si druhé ucho"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Spárovať ľavé ucho"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Nastavenia načúvacieho zariadenia"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Skratka, kompatibilita s načúvadlami"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Predvoľby"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Predvoľba"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Predvoľbu sa nepodarilo aktualizovať"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Zvukový výstup"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Zvukový výstup"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Zrušiť"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nie, vďaka"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Teraz nie"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Súhlasím"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Viac"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Odomykanie pomocou tváre"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Upozornenie"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Odomykajte svoj telefón a schvaľujte nákupy pomocou odtlačku prsta.\n\nUpozornenie: Toto zariadenie nemôžete odomykať pomocou odtlačku prsta. Ďalšie informácie vám poskytne správca organizácie."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Zrušiť"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nie, vďaka"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Teraz nie"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Súhlasím"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Preskočiť odtlačok prsta?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Nastavenie odtlačku prsta trvá približne minútu. Ak tento krok preskočíte, môžete si odtlačok prsta pridať neskôr v nastaveniach."</string>
@@ -556,7 +557,7 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Nastavíte klepnutím"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Odomknutie súkromného priestoru odtlačkom prsta"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Odomknutie súkromného priestoru tvárou"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Odomykanie súkromného priestoru tvárou a odtlačkom prsta"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Odomykanie súkr. priestoru tvárou a odtlačkom prsta"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Nastavte odomykanie súkromného priestoru odtlačkom prsta"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Odomykajte súkromný priestor a overujte svoju totožnosť odtlačkom prsta, napríklad pri prihlasovaní do aplikácií alebo schvaľovaní nákupov"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Súkromný priestor je možné odomknúť, aj keď to nechcete, napríklad keď vám niekto priloží k prstu telefón."</string>
@@ -575,10 +576,8 @@
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"Automaticky uzamykať súkromný priestor"</string>
<string name="private_space_auto_lock_page_summary" msgid="8679844515655838654">"Ak zariadenie istý čas nepoužijete, súkromný priestor sa môže automaticky uzamknúť"</string>
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Vždy, keď sa zariadenie uzamkne"</string>
- <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Päť minút po časovom limite obrazovky"</string>
+ <string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minút po časovom limite obrazovky"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Iba po reštarte zariadenia"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Skryť súkromný priestor"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Skrytie súkromného priestoru pri jeho uzamknutí"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Ak nechcete, aby ostatní ľudia vedeli, že máte v zariadení súkromný priestor, môžete ho v zozname aplikácií skryť"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Nastaviť"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Súkromný priestor"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Skryte alebo uzamknite súkromné aplikácie v samostatnom priestore. Zlepšite zabezpečenie použitím vyhradeného účtu Google."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Nastavenie súkromného priestoru"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Výber účtu Googlu pre priestor"</b>\n"Používanie vyhradeného účtu pomáha zastaviť zobrazovanie synchronizovaných súborov, fotiek a správ mimo vášho priestoru."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Ako to funguje"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Vytvorte účet Google pre svoj priestor"</b>\n"Ak používate vyhradený účet, pomôže zastaviť zobrazovanie synchronizovaných súborov, fotiek a správ mimo priestoru"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Nastavenie zámky"</b>\n"Uzamknite svoj priestor, aby ho iní ľudia nemohli otvoriť."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Inštalácia aplikácií"</b>\n"Súkromný priestor má vlastný Obchod Play, aby ste si mohli ľahko nainštalovať aplikácie."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Aplikácie vo vašom súkromnom priestore sa nebudú zobrazovať v správe povolení, na paneli ochrany súkromia ani v ďalších nastaveniach, keď je tento priestor uzamknutý.\n\nSúkromný priestor nemôžete obnoviť v novom zariadení. Ak ho chcete používať v inom zariadení, musíte si nastaviť ďalší súkromný priestor.\n\nK vášmu súkromnému priestoru môže získať prístup ktokoľvek, kto pripojí vaše zariadenie k počítaču alebo v ňom nainštaluje škodlivé aplikácie."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Inštalácia aplikácií"</b>\n"Nainštalujte si aplikácie, ktoré chcete vo svojom priestore ponechať súkromné"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Na čo treba pamätať"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Keď uzamknete svoj priestor, aplikácie sa zastavia"</b>\n"Keď uzamknete svoj priestor, aplikácie v ňom sa zastavia a nebudete z nich dostávať upozornenia"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Ďalšie informácie o súkromnom priestore"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Bude to chvíľu trvať"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Nastavuje sa súkromný priestor…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Môžete nastaviť novú zámku iba pre súkromný priestor alebo použiť zámku, ktorou odomykáte svoje zariadenie"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Používať zámku obrazovky"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Vybrať novú zámku"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Moment…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Moment…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Hotovo!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Súkromný priestor nájdete tak, že prejdete na zoznam aplikácií a potom sa posuniete nadol"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Hotovo"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Nastavte PIN pre súkromný priestor"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Nastavte heslo pre súkromný priestor"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Nastavte vzor pre súkromný priestor"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Vytvorte účet Google a pomôžte tak uchovať svoje údaje v súkromí"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na ďalšej obrazovke sa budete môcť prihlásiť do účtu, ktorý chcete používať so súkromným priestorom"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Vytvorte si vyhradený účet a pomôžte tak zaistiť, aby sa mimo súkromného priestoru nezobrazovali vaše údaje, napríklad:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synchronizované fotky, súbory, e‑maily, kontakty, udalosti v kalendári a ďalšie údaje"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"História sťahovania aplikácií a odporúčania"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"História prehliadania, záložky a uložené heslá"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Navrhovaný obsah súvisiaci s vašou aktivitou v aplikáciách v súkromnom priestore"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Dobre"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Uzamknutie"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Skrytie"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Maximálny počet odtlačkov, ktoré môžete pridať: <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certifikát systému"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Pripínanie certifikátu"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Podrobnosti siete"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Táto sieť používa starší bezpečnostný protokol WEP s nižšou úrovňou zabezpečenia"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska podsiete"</string>
<string name="server_name_title" msgid="7257095185810299066">"Názov servera"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Typ"</string>
@@ -1177,7 +1174,7 @@
<string name="accessibility_personal_account_title" msgid="8535265881509557013">"Osobný účet – <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
<string name="search_settings" msgid="7573686516434589771">"Hľadať"</string>
<string name="display_settings" msgid="7197750639709493852">"Obrazovka"</string>
- <string name="accelerometer_title" msgid="7745991950833748909">"Automaticky otáčať obrazovku"</string>
+ <string name="accelerometer_title" msgid="7745991950833748909">"Automatické otáčanie obrazovky"</string>
<string name="auto_rotate_option_off" msgid="2788096269396290731">"Vypnuté"</string>
<string name="auto_rotate_option_on" msgid="5776678230808498171">"Zapnuté"</string>
<string name="auto_rotate_option_face_based" msgid="3438645484087953174">"Zapnuté – podľa tváre"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adresa MAC siete Wi‑Fi zariadenia"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adresa Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Sériové číslo"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Dĺžka prevádzky"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Doba prevádzky"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Dátum výroby"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Dátum prvého použitia"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Počet cyklov"</string>
@@ -1620,9 +1617,9 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"Načítava sa…"</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"Načítava sa…"</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"Nastavte si heslo"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Nastavenie pracovného hesla"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"Nastavte si pracovné heslo"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Nastavte si PIN"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Nastavenie pracovného kódu PIN"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Nastavte pracovný PIN"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Nastavte vzor"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Zlepšite svoje zabezpečenie nastavením vzoru na odomknutie zariadenia"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Nastavenie pracovného vzoru"</string>
@@ -1631,12 +1628,12 @@
<string name="lockpassword_choose_your_pin_message" msgid="7230665212172041837">"Nastavte si kód PIN"</string>
<string name="lockpassword_choose_your_pin_header_for_fingerprint" msgid="2783879743691792556">"Ak chcete použiť odtlačok prsta, nastavte PIN"</string>
<string name="lockpassword_confirm_your_password_header" msgid="6132312814563023990">"Znova zadajte heslo"</string>
- <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Opätovné zadanie pracovného hesla"</string>
+ <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"Znova zadajte svoje pracovné heslo"</string>
<string name="lockpassword_confirm_your_work_password_header" msgid="4647071231702288305">"Zadajte pracovné heslo"</string>
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"Potvrďte svoj vzor"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"Zadajte pracovný vzor"</string>
<string name="lockpassword_confirm_your_pin_header" msgid="2241722970567131308">"Znova zadajte kód PIN"</string>
- <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Opätovné zadanie pracovného kódu PIN"</string>
+ <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"Znova zadajte svoj pracovný PIN"</string>
<string name="lockpassword_confirm_your_work_pin_header" msgid="4229765521391960255">"Zadajte pracovný PIN"</string>
<string name="lockpassword_confirm_passwords_dont_match" msgid="2100071354970605232">"Heslá sa nezhodujú"</string>
<string name="lockpassword_confirm_pins_dont_match" msgid="1103699575489401030">"Kódy PIN sa nezhodujú"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Klepnutie vpravo dole"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Viac zobrazíte klepnutím do pravého dolného rohu touchpadu"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Rýchlosť kurzora"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Štýl vyplnenia kurzora"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Zmena farby kurzora na čiernu"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Zmena farby kurzora na zelenú"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Zmena farby kurzora na žltú"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Zmena farby kurzora na ružovú"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Zmena farby kurzora na modrú"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Naučiť sa gestá touchpadu"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, myš, kurzor, posúvať, potiahnuť, kliknúť pravým tlačidlom, kliknúť, ukazovateľ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"kliknúť pravým tlačidlom, klepnúť"</string>
@@ -2037,7 +2040,7 @@
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Nadviazať?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"Hlásenie o obchodnej ceste"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"Ak budete potrebovať ďalšiu pomoc, obráťte sa na mňa alebo Helenu. Toto hlásenie bude"</string>
- <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Výdavky klienta"</string>
+ <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Klientské výdavky"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"O farebnom kontraste"</string>
<string name="accessibility_turn_screen_darker_title" msgid="5986223133285858349">"Stmavenie obrazovky"</string>
<string name="interaction_control_category_title" msgid="2696474616743882372">"Doplnkové ovládanie"</string>
@@ -2199,7 +2202,7 @@
<string name="accessibility_toggle_high_text_contrast_preference_title" msgid="1830189632458752698">"Text s vysokým kontrastom"</string>
<string name="accessibility_toggle_high_text_contrast_preference_summary" msgid="5286411556836346180">"Zmeňte farbu textu na čiernu alebo bielu, aby lepšie vynikol na pozadí"</string>
<string name="accessibility_toggle_maximize_text_contrast_preference_title" msgid="8737272017343509753">"Maximalizovať kontrast textu"</string>
- <string name="accessibility_toggle_maximize_text_contrast_preference_summary" msgid="8200408691846666900">"Zvýšiť kontrast pridaním čierneho alebo bieleho pozadia okolo textu"</string>
+ <string name="accessibility_toggle_maximize_text_contrast_preference_summary" msgid="8200408691846666900">"Zvyšovať kontrast pridaním čierneho alebo bieleho pozadia okolo textu"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_title" msgid="4987009529235165664">"Auto. aktualiz. priblíž. obrazovky"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_summary" msgid="9034532513972547720">"Aktualizovať priblíž. obrazov. pri prechodoch apl."</string>
<string name="accessibility_power_button_ends_call_prerefence_title" msgid="8187306131979612144">"Ukončiť hovor vypínačom"</string>
@@ -2585,7 +2588,7 @@
<string name="battery_saver_turn_on_summary" msgid="1433919417587171160">"Predĺženie výdrže batérie"</string>
<string name="battery_saver_sticky_title_new" msgid="5942813274115684599">"Vypnúť po nabití"</string>
<string name="battery_saver_sticky_title_percentage" msgid="1178162022087559148">"Vypnúť pri <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
- <string name="battery_saver_sticky_description_new" msgid="8543277078136947874">"Šetrič batérie sa vypne, keď sa batéria nabije na viac ako <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
+ <string name="battery_saver_sticky_description_new" msgid="8543277078136947874">"Vypnúť šetrič batérie, keď sa batéria nabije na viac ako <xliff:g id="BATTERY_PERCENTAGE">%1$s</xliff:g>"</string>
<!-- no translation found for battery_saver_seekbar_title (3712266470054006641) -->
<skip />
<string name="battery_saver_seekbar_title_placeholder" msgid="7141264642540687540">"Zapnúť"</string>
@@ -2703,7 +2706,7 @@
<string name="cellular_security_settings_title" msgid="7779141923670352595">"Zabezpečenie mobilnej siete"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"Upozornenia"</string>
<string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"Upozornenia týkajúce sa siete"</string>
- <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"Dostávajte upozornenia, keď sa vaše zariadenie pripojí k nešifrovanej sieti alebo sieť zaznamená jedinečný identifikátor vášho zariadenia či SIM karty"</string>
+ <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"Dostávať upozornenia, keď sa zariadenie pripojí k nešifrovanej sieti alebo sieť zaznamená jedinečný identifikátor vášho zariadenia či SIM karty"</string>
<string name="cellular_security_settings_encryption_title" msgid="4013084091666375780">"Šifrovanie"</string>
<string name="cellular_security_network_generations_title" msgid="2343026988833783854">"Generácie sietí"</string>
<string name="cellular_security_network_generations_summary" msgid="139087814553929402">"Každú nainštalovanú SIM kartu môžete nakonfigurovať, aby sa pripájala iba k sieťam podporujúcim 3G, 4G a 5G. SIM karta sa nepripojí k starším nezabezpečeným sieťam 2G. Toto nastavenie môže obmedziť vaše pripojenie v prípade, že jediná dostupná sieť je 2G. V prípade tiesne sa môže použiť 2G."</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Žiadne}=1{Bol nastavený 1 plán}few{Boli nastavené # plány}many{# schedules set}other{Bolo nastavených # plánov}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Režim bez vyrušení"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Režimy priority"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Prijímajte upozornenia iba od dôležitých ľudí a z dôležitých aplikácií"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Obmedzenie vyrušení"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Zapnite režim bez vyrušení"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Upraviť"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Plány"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Plán"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Automatické zapínanie"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Pridajte kalendár"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Použiť kalendár"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Rozpis"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Nastavte si plán"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Naplánovať"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> h <xliff:g id="MINUTES">%2$d</xliff:g> min"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Plán"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Stlmiť telefón v určitý čas"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Nastavenie pravidiel režimu bez vyrušení"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Táto aplikácia nepodporuje zlepšené nastavenia"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Ďalšie nastavenia"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"V tejto aplikácii sú k dispozícii ďalšie nastavenia"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Odpočinok"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Používať odpočinok"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Keď v priebehu krátkeho času dostanete priveľa upozornení, zariadenie minimalizuje zvukové vyrušenia a vyskakovacie okná na obrazovke. Na hovory, budíky a prioritné konverzácie vás bude zariadenie upozorňovať tak, ako vždy, a všetky doručené upozornenia nájdete ľahko na ich vyhradenom paneli."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Použiť na pracovné profily"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Platí pre aplikácie v pracovnom profile"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Pomocné služby VR"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Vybrané aplikácie"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Žiadne"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Všetky"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Povoľte aplikáciám prekonávať nastavenia"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikácie, ktoré môžu vyrušiť"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Vyberte ďalšie aplikácie"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Zmena v budíkoch iba na hodinu do {time}}few{Zmena v budíkoch iba na # hodiny do {time}}many{Change to alarms only for # hours until {time}}other{Zmena v budíkoch iba na # hodín do {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Zmena na možnosť Iba budíky platná do <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Zmena na možnosť Vždy prerušiť"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Premenovať"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Zmeniť ikonu"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Zmeniť ikonu"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Upozornenie"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Zavrieť"</string>
<string name="device_feedback" msgid="5351614458411688608">"Odoslať spätnú väzbu o zariadení"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Ľavé"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Pravé"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Puzdro"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batéria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel s nastaveniami"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Vynútiť režim pracovnej plochy"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Vynútiť experimentálny režim pracovnej plochy na sekundárnych obrazovkách"</string>
@@ -4852,14 +4865,14 @@
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Jadro sa nepodarilo aktualizovať na kompatibilné jadro so 16 KB stránkami"</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Zmena sa uplatňuje"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"Chcete zmeniť formát zariadenia na ext4? (vyžadované pre režim 16 kB)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Dátový oddiel tohto zariadenia je potrebné pred použitím možnosti 16 kB pre vývojárov konvertovať na ext4. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Aktivácia možnosti 16 kB si potom vyžiada ešte jedno reštartovanie. Keď budete v tomto režime, môžete prepínať medzi režimom 4 kB a 16 kB jedným reštartovaním. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete zariadenie vrátiť do ostrého režimu, musíte prepnúť späť na režim 4 kB a potom uzamknúť zavádzací program systému, čím sa v zariadení obnovia výrobné nastavenia. Po úspešnom zapnutí zariadenia do Androidu vypnite odomknutie OEM v sekcii Pre vývojárov. Zariadenie sa trvalo vymaže a súborový systém sa po potvrdení zmení na ext4. Po dokončení tohto kroku sa vráťte a znova zapnite režim 16 kB."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Dátový oddiel tohto zariadenia je potrebné pred použitím možnosti 16 kB pre vývojárov konvertovať na ext4. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Aktivácia možnosti 16 kB si potom vyžiada ešte jedno reštartovanie. Keď budete v tomto režime, môžete prepínať medzi režimom 4 kB a 16 kB jedným reštartovaním. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete zariadenie vrátiť do ostrého režimu, musíte prepnúť späť na režim 4 kB a potom uzamknúť zavádzací program systému, čím sa v zariadení obnovia výrobné nastavenia. Po úspešnom zapnutí Androidu v zariadení vypnite odomknutie OEM v sekcii Pre vývojárov. Zariadenie sa trvalo vymaže a systém súborov sa po potvrdení zmení na ext4. Po dokončení tohto kroku sa vráťte a znova zapnite režim 16 kB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Vymazať všetky údaje"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Nepodarilo sa zmeniť formát ani trvale vymazať oddiel dát na ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Režim 16 kB vyžaduje odomknutie zavádzacieho programu systému"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Toto zariadenie musí mať pred použitím možnosti pre vývojárov 16 kB odomknutý zavádzací program systému. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Pri aktivácii režimu 16 kB sa vymažú všetky dáta a nastavenia používateľa. Po odomknutí zavádzacieho programu systému si aktivácia možnosti 16 kB vyžiada dve reštartovania. Keď budete v tomto režime, môžete prepínať medzi režimom 4 kB a 16 kB jedným reštartovaním. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete zariadenie vrátiť do ostrého režimu, musíte prepnúť späť na režim 4 kB a potom uzamknúť OEM alebo zavádzací program systému, čím sa v zariadení obnovia výrobné nastavenia. Odomknite zavádzací program systému a skúste to znova. Postup, ako to vykonať, nájdete na <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
<string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Používa sa režim 4 kB, ktorý nezohľadňuje stránkovanie"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Ste v režime 4 kB, ktorý nezohľadňuje stránkovanie. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete znova vstúpiť do ostrého režimu, musíte uzamknúť zavádzací program systému zariadenia. Klepnutím zobrazíte ďalšie informácie."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Ste v režime 4 kB, ktorý nezohľadňuje stránkovanie. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete znova vstúpiť do ostrého režimu, musíte uzamknúť zavádzací program systému zariadenia. Tým sa v zariadení znova obnovia výrobné nastavenia na nastavenia ostrého režimu. Po úspešnom zapnutí zariadenia do Androidu vypnite odomknutie OEM v sekcii Pre vývojárov. Ak sa zariadeniu nepodarí spustiť Android alebo bude nestabilné, znova nainštalujte najnovšie výrobné obrazy systému z webu <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> alebo prejdite na <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> a vyberte Vymazať zariadenie, Uzamknúť zavádzací program systému alebo Vynútiť inštaláciu obrazu systému vo všetkých oddieloch."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Ste v režime 4 kB, ktorý nezohľadňuje stránkovanie. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete znova vstúpiť do ostrého režimu, musíte uzamknúť zavádzací program systému zariadenia. Tým sa v zariadení znova obnovia výrobné nastavenia na nastavenia ostrého režimu. Po úspešnom zapnutí zariadenia do Androidu vypnite odomknutie OEM v sekcii Pre vývojárov. Ak sa zariadeniu nepodarí spustiť Android alebo bude nestabilné, znova nainštalujte najnovšie výrobné obrazy systému z webu <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> alebo prejdite na <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> a vyberte Wipe Device (Trvale vymazať zariadenie), Lock Bootloader (Uzamknúť zavádzací program systému) a Force Flash all partitions (Vynútiť inštaláciu obrazu systému vo všetkých oddieloch)."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Používa sa režim 16 kB, ktorý nezohľadňuje stránkovanie"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Ste v režime 16 kB, ktorý nezohľadňuje stránkovanie. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete znova vstúpiť do ostrého režimu, musíte prepnúť späť do režimu 4 kB a potom uzamknúť zavádzací program systému zariadenia. Klepnutím zobrazíte ďalšie informácie."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Ste v režime 16 kB, ktorý nezohľadňuje stránkovanie. V tomto režime nie je možné zaručiť integritu softvéru a všetky dáta uložené v telefóne môžu byť počas odomknutia zavádzacieho programu systému ohrozené. Niektoré funkcie budú v týchto režimoch vypnuté, takže niektoré aplikácie nemusia fungovať. Ak chcete znova vstúpiť do ostrého režimu, musíte prepnúť späť do režimu 4 kB a potom uzamknúť zavádzací program systému zariadenia. Tým sa v zariadení znova obnovia výrobné nastavenia na nastavenia ostrého režimu. Po úspešnom zapnutí zariadenia do Androidu vypnite odomknutie OEM v sekcii Pre vývojárov. Ak sa zariadeniu nepodarí spustiť Android alebo bude nestabilné, znova nainštalujte najnovšie výrobné obrazy systému z webu <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> alebo prejdite na <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> a vyberte Wipe Device (Trvale vymazať zariadenie), Lock Bootloader (Uzamknúť zavádzací program systému) a Force Flash all partitions (Vynútiť inštaláciu obrazu systému vo všetkých oddieloch)."</string>
@@ -4915,8 +4928,8 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"Povoliť aplikáciám, ktoré sa môžu zobraziť cez iné aplikácie, prekrývanie obrazoviek Nastavení"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"Povoliť službu Mock Modem"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Povoliť spúšťanie služby Mock Modem v tomto zariadení na testovanie inštrumentácie. Túto možnosť nepovoľujte počas bežného používania telefónu"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Deaktivácia ochrán počas zdieľania obrazovky"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Vypnutie ochranných prvkov systému pre citlivý obsah aplikácií pre nadchádzajúce relácie zdieľania obrazovky"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Deaktivovať ochranu počas zdieľania obrazovky"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Vypnúť systémovú ochranu citlivého obsahu aplikácií pre nadchádzajúce relácie zdieľania obrazovky"</string>
<string name="media_controls_title" msgid="403271085636252597">"Médiá"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Pripnúť prehrávač médií"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Prehrávač médií zostane otvorený v rýchlych nastaveniach, aby bolo možné rýchlo obnoviť prehrávanie"</string>
@@ -4928,7 +4941,7 @@
<string name="media_controls_show_player" msgid="8504571042365814021">"Zobraziť prehrávač"</string>
<string name="keywords_media_controls" msgid="8345490568291778638">"médiá"</string>
<string name="camera_extensions_fallback_title" msgid="3604579046777004989">"Povoliť rozšírenia softvéru kamery"</string>
- <string name="camera_extensions_fallback_description" msgid="4306833827773277263">"Povolí predvolenú implementáciu softvéru pokročilých funkcií kamery, napríklad HDR, nočný režim alebo ďalšie rozšírenia kamery."</string>
+ <string name="camera_extensions_fallback_description" msgid="4306833827773277263">"Povolí predvolenú implementáciu softvéru pre pokročilé funkcie kamery, ako sú HDR, nočný režim alebo iné rozšírenia kamery."</string>
<string name="connected_device_see_all_summary" msgid="2056010318537268108">"Zapne sa Bluetooth"</string>
<string name="provider_internet_settings" msgid="3831259474776313323">"Internet"</string>
<string name="provider_network_settings_title" msgid="2624756136016346774">"SIM karty"</string>
@@ -5210,7 +5223,7 @@
<string name="screen_flash_color_violet" msgid="1279950780509029495">"Fialová"</string>
<string name="color_selector_dialog_done" msgid="121253968943363376">"Hotovo"</string>
<string name="color_selector_dialog_cancel" msgid="8667350644753900701">"Zrušiť"</string>
- <string name="contrast_default" msgid="8918545965525226966">"Predvolené"</string>
+ <string name="contrast_default" msgid="8918545965525226966">"Predvolený"</string>
<string name="contrast_medium" msgid="384414510709285811">"Stredný"</string>
<string name="contrast_high" msgid="3988567609694797696">"Vysoký"</string>
<string name="dock_multi_instances_not_supported_text" msgid="3513493664467667084">"Táto aplikácia môže byť otvorená iba v jednom okne"</string>
diff --git a/res/values-sl/arrays.xml b/res/values-sl/arrays.xml
index 7257ead..905e2ae 100644
--- a/res/values-sl/arrays.xml
+++ b/res/values-sl/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index da2e515..fccd144d 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Prekinitev povezave z napravo?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Seznanitev nove naprave"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Samodejno znova vklopi jutri"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Seznani desno uho"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Seznani levo uho"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Seznanite drugo uho"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Seznani levo uho"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Nastavitve slušnega aparata"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Bližnjica, združljivost s slušnimi aparati"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Prednastavljene vrednosti"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Prednastavljeno"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Prednastavljenih vrednosti ni bilo mogoče posodobiti"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Zvočni izhod"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"O zvočnem izhodu"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Prekliči"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ne, hvala"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Ne zdaj"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Strinjam se"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Več"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Odklepanje z obrazom"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Upoštevajte"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"S prstnim odtisom odklenite telefon ali odobrite nakupe.\n\nOpomba: prstnega odtisa ne morete uporabiti za odklepanje te naprave. Za več informacij se obrnite na skrbnika v organizaciji."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Prekliči"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ne, hvala"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Ne zdaj"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Strinjam se"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Brez prstnega odtisa?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Nastavitev prstnega odtisa vam bo vzela le minuto ali dve. Če nastavitev preskočite, lahko prstni odtis dodate pozneje v nastavitvah."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Vsakič, ko se naprava zaklene"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minut po časovni omejitvi za zaslon"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Šele po vnovičnem zagonu naprave"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Če za zasebni prostor uporabljate drugačen način zaklepanja, boste za odpiranje aplikacij v zasebnem prostoru morda morali potrditi svojo identiteto."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Skrivanje zasebnega prostora"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Skrivanje zasebnega prostora, kadar je zaklenjen"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Če ne želite, da bi druge osebe vedele, da imate v napravi zasebni prostor, ga lahko skrijete, da ni prikazan na seznamu aplikacij"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Nastavi"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Zasebni prostor"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Skrijte ali zaklenite zasebne aplikacije v ločenem prostoru. Za dodatno varnost uporabite namenski račun Google."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Nastavitev zasebnega prostora"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Izbira računa Google za vaš prostor"</b>\n"Z uporabo namenskega računa pomagate preprečiti pojavljanje sinhroniziranih datotek, fotografij in e-poštnih sporočil zunaj svojega prostora."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Kako deluje"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Ustvarite račun Google za zasebni prostor"</b>\n"Če uporabite namenski račun, to omogoča, da se sinhronizirane datoteke, fotografije in e-poštna sporočila ne prikazujejo zunaj zasebnega prostora"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Nastavitev zaklepanja"</b>\n"Zaklenite svoj prostor, da ga druge osebe ne bodo mogle odpreti."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Nameščanje aplikacij"</b>\n"Vaš zasebni prostor ima svojo Trgovino Play, tako da lahko zlahka nameščate aplikacije."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Aplikacije v zasebnem prostoru ne bodo prikazane v upravitelju dovoljenj, na nadzorni plošči za zasebnost in v drugih nastavitvah, kadar je zasebni prostor zaklenjen.\n\nZasebnega prostora ni mogoče obnoviti v novo napravo. Če želite zasebni prostor uporabljati v drugi napravi, morate nastaviti novega.\n\nVsakdo, ki vašo napravo poveže z računalnikom ali v napravo namesti zlonamerne aplikacije, bo morda lahko dostopal do vašega zasebnega prostora."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Namestite aplikacije"</b>\n"V zasebnem prostoru namestite aplikacije, za katere želite, da ostanejo zasebne"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Upoštevajte"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikacije so ustavljene, ko zaklenete zasebni prostor"</b>\n"Ko zaklenete zasebni prostor, so aplikacije v njem ustavljene in s tem tudi prejemanje njihovih obvestil"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Preberite več o zasebnem prostoru"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"To bo trajalo nekaj trenutkov"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Nastavljanje zasebnega prostora …"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Nastavite lahko novo zaklepanje samo za zasebni prostor ali pa uporabite enako zaklepanje, kakršnega uporabljate za odklepanje naprave"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Uporabi zaklepanje zaslona"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Izberi nov način zaklepanja"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Samo trenutek …"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Samo trenutek …"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Končano"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Odprite seznam aplikacij in se nato pomaknite navzdol, da poiščete zasebni prostor"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Končano"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Nastavite kodo PIN za svoj zasebni prostor"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Nastavite geslo za svoj zasebni prostor"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Nastavite vzorec za svoj zasebni prostor"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Ustvarite račun Google, da poskrbite za zasebnost svojih podatkov"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Na naslednjem zaslonu se lahko prijavite v račun, ki ga boste uporabljali z zasebnim prostorom"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Ustvarite namenski račun, da se podatki, kot so naslednji, ne bodo prikazovali zunaj zasebnega prostora:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinhronizirane fotografije, datoteke, e-poštna sporočila, stiki, dogodki na koledarju in drugi podatki"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Zgodovina in priporočila prenosov aplikacij"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Zgodovina brskanja, zaznamki in shranjena gesla"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Predlagana vsebina v zvezi z vašo dejavnostjo v aplikacijah v zasebnem prostoru"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Razumem"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Zaklepanje"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Skrivanje"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Dodate lahko do toliko prstnih odtisov: <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sistemsko potrdilo"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Pripenjanje potrdil"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Podatki o omrežju"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"To omrežje uporablja starejši varnostni protokol WEP, ki ima nižjo stopnjo varnosti"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska podomrežja"</string>
<string name="server_name_title" msgid="7257095185810299066">"Ime strežnika"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Vrsta"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Naslov MAC vmesnika Wi‑Fi naprave"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Naslov Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serijska številka"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Čas delovanja"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Čas delovanja od vklopa"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Datum izdelave"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum prve uporabe"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Število ciklov"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Dotik spodnjega desnega kota"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Za več možnosti se dotaknite sledilne ploščice spodaj desno"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Hitrost kazalca"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Slog zapolnitve kazalca"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"V črni slog zapolnitve kazalca"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"V zeleni slog zapolnitve kazalca"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"V rumeni slog zapolnitve kazalca"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"V rožnati slog zapolnitve kazalca"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"V modri slog zapolnitve kazalca"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Učenje potez na sledilni ploščici"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"sledilna ploščica, miška, kazalec, drsenje, vlečenje, desni klik, klik"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"desni klik, dotik"</string>
@@ -2317,7 +2321,7 @@
<string name="accessibility_hearing_device_about_title" msgid="7883758309646288250">"O slušnih aparatih"</string>
<string name="accessibility_hearing_device_footer_summary" msgid="256061045064940818">"Če želite poiskati druge slušne pripomočke, ki jih protokol ASHA ali LE zvok ne podpira, se dotaknite "<b>"Seznanitev nove naprave"</b>" > "<b>"Ogled več naprav"</b></string>
<string name="accessibility_hearing_device_pairing_page_title" msgid="6608901091770850295">"Seznanitev slušnega aparata"</string>
- <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"Na tej strani lahko seznanite slušne aparate, združljive s funkcijama ASHA in LE zvok. Poskrbite, da je slušni aparat vklopljen in pripravljen za seznanjanje."</string>
+ <string name="accessibility_hearing_device_pairing_intro" msgid="7022201665808166517">"Na tej strani lahko seznanite slušne pripomočke, združljive s funkcijama ASHA in LE zvok. Poskrbite, da je slušni pripomoček vklopljen in pripravljen za seznanjanje."</string>
<string name="accessibility_found_hearing_devices" msgid="637407580358386553">"Razpoložljivi slušni pripomočki"</string>
<string name="accessibility_found_all_devices" msgid="7817834722148556520">"Ali vaš slušni pripomoček ni prikazan?"</string>
<string name="accessibility_list_all_devices_title" msgid="161495343959211216">"Ogled več naprav"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Noben}=1{Nastavljen je 1 razpored}one{Nastavljen je # razpored}two{Nastavljena sta # razporeda}few{Nastavljeni so # razporedi}other{Nastavljenih je # razporedov}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ne moti"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prednostni načini"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Prejemajte samo obvestila pomembnih oseb in aplikacij."</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Omejitev prekinitev"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Vklop načina »Ne moti«"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Dodajte koledar"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Uporabite koledar"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Razpored"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Časovni razpored"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Utišanje telefona ob določenih urah"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Nastavitev pravil za način »Ne moti«"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ta aplikacija ne podpira naprednih nastavitev."</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Več nastavitev"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Več nastavitev je na voljo v tej aplikaciji."</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Zmanjševanje glasnosti"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Uporabi zmanjševanje glasnosti"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Ko v kratkem času prejmete veliko obvestil, naprava zmanjša število zvočnih prekinitev in pojavnih elementov na zaslonu. O klicih, alarmih in prednostnih pogovorih boste še vedno obveščeni kot običajno, vsa dostavljena obvestila pa boste zlahka našli na zaslonu z obvestili."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Uporaba za delovne profile"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Uporabi za aplikacije v delovnem profilu"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Storitve za pomoč za VR"</string>
@@ -3759,8 +3774,10 @@
<string name="zen_mode_apps_title" msgid="1691010857014041183">"Aplikacije"</string>
<string name="zen_mode_apps_category" msgid="4082380323683889391">"Aplikacije, ki lahko zmotijo"</string>
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Izbrane aplikacije"</string>
- <string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Brez"</string>
+ <string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Nobena"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Vse"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Aplikacijam dovoli preglasitev"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikacije, ki lahko preglasijo"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Izberite več aplikacij"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Sprememba na samo alarme za eno uro do {time}}one{Sprememba na samo alarme za # uro do {time}}two{Sprememba na samo alarme za # uri do {time}}few{Sprememba na samo alarme za # ure do {time}}other{Sprememba na samo alarme za # ur do {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Sprememba na samo alarme do <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Sprememba na vedno prekini"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Opozorilo"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Zapri"</string>
<string name="device_feedback" msgid="5351614458411688608">"Povratne informacije o tej napravi"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Levo"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Desno"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Ovitek"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Baterija"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Podokno nastavitev"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Vsili namizni način"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Vsili poskusni namizni način na sekundarnih zaslonih."</string>
@@ -4840,24 +4864,24 @@
<string name="track_frame_time_keywords" msgid="7885340257945922239">"GPE"</string>
<string name="enable_16k_pages" msgid="8001470927566110689">"Zagon s stranmi velikosti 16 KB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Zagon naprave z jedrom, ki podpira strani velikosti 16 K"</string>
- <string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Preklop z načina za 4 KB na način za 16 KB"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Ste v načinu za neodvisno velikost strani in izvajate jedro velikosti 4 KB ter preklapljate na 16-kilobajtni način. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski nalagalnik odklenjen, so morda ogroženi. S tem bo naprava znova zagnana. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite napravo povrniti v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način in zakleniti zagonski nalagalnik, s čimer ponastavite napravo na tovarniške nastavitve. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM."</string>
+ <string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Preklop s 4-kilobajtnega načina na 16-kilobajtni način"</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Ste v načinu, neodvisnem od velikosti strani, in izvajate 4-kilobajtno jedro ter preklapljate na 16-kilobajtni način. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski nalagalnik odklenjen, so morda ogroženi. S tem bo naprava znova zagnana. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite napravo povrniti v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način in zakleniti zagonski nalagalnik, s čimer ponastavite napravo na tovarniške nastavitve. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Preklop z načina za 16 KB na način za 4 KB"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Ste v načinu za neodvisno velikost strani in izvajate jedro velikosti 16 KB ter preklapljate na 4-kilobajtni način. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. S tem bo naprava znova zagnana. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite napravo povrniti v način za splošno razpoložljivost, morate zakleniti zagonski zaganjalnik, s čimer ponastavite napravo na tovarniške nastavitve. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM."</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Ste v načinu, neodvisnem od velikosti strani, in izvajate jedro velikosti 16 KB ter preklapljate na 4-kilobajtni način. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. S tem bo naprava znova zagnana. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite napravo povrniti v način za splošno razpoložljivost, morate zakleniti zagonski zaganjalnik, s čimer ponastavite napravo na tovarniške nastavitve. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Jedra ni bilo mogoče posodobiti na jedro, ki je združljivo s stranmi velikosti 16 KB."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Uveljavljanje spremembe"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Želite formatirati napravo v sistem ext4? (obvezno za 16-kilobajtni način)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Preden začnete uporabljati 16-kilobajtno možnost za razvijalce, je treba podatkovno particijo te naprave pretvoriti v sistem ext4. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. Aktiviranje 16-kilobajtne možnosti bo po tem vnovičnem zagonu terjalo še enega. Ko ste v tem načinu, lahko preklapljate med 4-kilobajtnim in 16-kilobajtnim načinom z enim vnovičnim zagonom. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite napravo povrniti v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način in zakleniti zagonski zaganjalnik, s čimer ponastavite napravo na tovarniške nastavitve. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM. Podatki v napravi bodo izbrisani in podatkovni sistem bo po potrditvi spremenjen v sistem ext4. Ko se to dokonča, se vrnite in znova omogočite 16-kilobajtni način."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Želite formatirati napravo v sistem ext4? (obvezno za 16-kB način)"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Preden začnete uporabljati 16-kilobajtno možnost za razvijalce, je treba podatkovno particijo te naprave pretvoriti v sistem ext4. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski nalagalnik odklenjen, so morda ogroženi. Aktiviranje 16-kilobajtne možnosti bo po tem vnovičnem zagonu terjalo še enega. Ko ste v tem načinu, lahko preklapljate med 4-kilobajtnim in 16-kilobajtnim načinom z enim vnovičnim zagonom. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite napravo povrniti v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način in zakleniti zagonski nalagalnik, s čimer ponastavite napravo na tovarniške nastavitve. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM. Podatki v napravi bodo izbrisani in podatkovni sistem bo po potrditvi spremenjen v sistem ext4. Ko se to dokonča, se vrnite in znova omogočite 16-kilobajtni način."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Izbriši vse podatke"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Formatiranje v sistem ext4 in brisanje particije s podatki ni uspelo."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Za 16-kilobajtni način je obvezno odklepanje zagonskega nalagalnika"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Preden začnete uporabljati 16-kilobajtno možnost za razvijalce, morate v tej napravi odkleniti zagonski nalagalnik. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. Vsi podatki uporabnika in nastavitve bodo pri aktiviranju 16-kilobajtnega načina izbrisani. Ko je zagonski nalagalnik odklenjen, aktiviranje 16-kilobajtne možnosti terja dva vnovična zagona. Ko ste v tem načinu, lahko preklapljate med 4-kilobajtnim in 16-kilobajtnim načinom z enim vnovičnim zagonom. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite napravo povrniti v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način in nato napravo zakleniti z zaklepanjem OEM oziroma v napravi zakleniti zagonski nalagalnik (s čimer se sproži ponastavitev na tovarniške nastavitve). Odklenite zagonski nalagalnik in poskusite znova. Navodila za ta postopek so na voljo na <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Uporaba 4-kilobajtnega načina za neodvisno velikost strani"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Ste v 4-kilobajtnem načinu načina za neodvisno velikost strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v način za splošno razpoložljivost, morate zakleniti zagonski nalagalnik naprave. Dotaknite se, če želite prebrati več."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Ste v 4-kilobajtnem načinu načina za neodvisno velikost strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v način za splošno razpoložljivost, morate zakleniti zagonski nalagalnik naprave. S tem znova ponastavite napravo na tovarniške nastavitve in jo povrnete na nastavitve za splošno razpoložljivost. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM. Če se napravi ne uspe zagnati v sistemu Android ali ni stabilna, jo znova posodobite z najnovejšimi tovarniškimi slikami z naslova <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ali uporabite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> in izberite možnosti »Wipe Device«, »Lock Bootloader« in »Force Flash all partitions.«"</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Uporaba 16-kilobajtnega načina za neodvisno velikost strani"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Ste v 16-kilobajtnem načinu načina za neodvisno velikost strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način, nato pa morate zakleniti zagonski nalagalnik naprave. Dotaknite se, če želite prebrati več."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Ste v 16-kilobajtnem načinu načina za neodvisno velikost strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način, nato pa morate zakleniti zagonski nalagalnik naprave. S tem znova ponastavite napravo na tovarniške nastavitve in jo povrnete na nastavitve za splošno razpoložljivost. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM. Če se napravi ne uspe zagnati v sistemu Android ali ni stabilna, jo znova posodobite z najnovejšimi tovarniškimi slikami z naslova <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ali uporabite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> in izberite možnosti »Wipe Device«, »Lock Bootloader« in »Force Flash all partitions.«"</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Uporaba 4-kilobajtnega načina, neodvisnega od velikosti strani"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Ste v 4-kilobajtnem načinu, neodvisnem od velikosti strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski nalagalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v način za splošno razpoložljivost, morate zakleniti zagonski nalagalnik naprave. Dotaknite se, če želite prebrati več."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Ste v 4-kilobajtnem načinu, neodvisnem od velikosti strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski nalagalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v način za splošno razpoložljivost, morate zakleniti zagonski nalagalnik naprave. S tem znova ponastavite napravo na tovarniške nastavitve in jo povrnete na nastavitve za splošno razpoložljivost. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM. Če se napravi ne uspe zagnati v sistemu Android ali ni stabilna, jo znova posodobite z najnovejšimi tovarniškimi slikami z naslova <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ali uporabite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> in izberite možnosti »Wipe Device«, »Lock Bootloader« in »Force Flash all partitions.«"</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Uporaba 16-kilobajtnega načina, neodvisnega od velikosti strani"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Ste v 16-kilobajtnem načinu, neodvisnem od velikosti strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski nalagalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v način za splošno razpoložljivost, morate preklopiti nazaj na 4-kilobajtni način, nato pa morate zakleniti zagonski nalagalnik naprave. Dotaknite se, če želite prebrati več."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Ste v 16-kilobajtnem načinu, neodvisnem od velikosti strani. Celovitosti programske opreme v tem načinu ni mogoče zajamčiti in vsi podatki, shranjeni v telefonu, medtem ko je zagonski zaganjalnik odklenjen, so morda ogroženi. V teh načinih bodo nekatere funkcije onemogočene, zato nekatere aplikacije morda ne bodo delovale. Če želite znova v tovarniški način, morate preklopiti nazaj na 4-kilobajtni način, nato pa morate zakleniti zagonski nalagalnik naprave. S tem znova ponastavite napravo na tovarniške nastavitve. Ko se naprava uspešno zažene v sistemu Android, v možnostih za razvijalce onemogočite odklepanje OEM. Če se napravi ne uspe zagnati v sistemu Android ali ni stabilna, jo znova posodobite z najnovejšimi tovarniškimi slikami z naslova <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> ali uporabite <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> in izberite možnosti »Wipe Device«, »Lock Bootloader« in »Force Flash all partitions.«"</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16-kilobajtni način za neodvisno velikost strani"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Več o tem"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Rutina za obravnavo poročila o napakah"</string>
@@ -4911,7 +4935,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Dovoli simuliran modem"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Tej napravi dovoli izvajanje storitve simuliranega modema za preizkušanje instrumentacije. Tega ne omogočite med običajno uporabo telefona."</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Onemogoči zaščite deljenja zaslona"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Izklopi sistemske zaščite za občutljivo vsebino aplikacij za prihajajoče seje deljenja zaslona"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Izklopi sistemske zaščite za občutljivo vsebino aplikacij za prihajajoče seje deljenja zaslona."</string>
<string name="media_controls_title" msgid="403271085636252597">"Predstavnost"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Pripni predvajalnik predstavnosti"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Predvajalnik predstavnosti ostane odprt v hitrih nastavitvah, da je omogočeno hitro nadaljevanje predvajanja."</string>
diff --git a/res/values-sq/arrays.xml b/res/values-sq/arrays.xml
index c1adaba..b1eb632 100644
--- a/res/values-sq/arrays.xml
+++ b/res/values-sq/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index eb43d7b..df5543f 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Të shkëputet pajisja?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Çifto pajisjen e re"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Aktivizoje automatikisht sërish nesër"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Çifto anën e djathtë"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Çifto anën e majtë"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Çifto anën tjetër"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Çifto anën e majtë"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Cilësimet e pajisjes ndihmëse për dëgjimin"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Shkurtore, përputhshmëria me aparatet e dëgjimit"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Paravendosjet"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Paravendosja"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Paravendosja nuk mund të përditësohej"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Dalja e audios"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Rreth daljes së audios"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Anulo"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Jo, faleminderit"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Jo tani"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Pranoj"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Më shumë"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Shkyç me fytyrë"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Ki parasysh"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Përdor gjurmën e gishtit për të shkyçur telefonin ose për të miratuar blerjet.\n\nShënim. Nuk mund ta përdorësh gjurmën tënde të gishtit për ta shkyçur këtë pajisje. Për më shumë informacione, kontakto me administratorin e organizatës tënde."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Anulo"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Jo, faleminderit"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Jo tani"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Pranoj"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Të kapërcehet gjurma e gishtit?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Konfigurimi i gjurmës së gishtit zgjat vetëm një ose dy minuta. Nëse e kapërcen këtë, mund ta shtosh gjurmën tënde të gishtit më vonë te \"Cilësimet\"."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Si funksionon"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"\"Shkyçja me gjurmën e gishtit\" krijon një model unik të gjurmës sate të gishtit për të verifikuar që je ti. Për ta krijuar këtë model të gjurmës së gishtit gjatë konfigurimit, duhet t\'i regjistrosh nga pozicione të ndryshme imazhet e gjurmës sate të gishtit."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"\"Shkyçja me gjurmën e gishtit\" krijon një model unik të gjurmës së gishtit të fëmijës tënd për të verifikuar që është ai. Për ta krijuar këtë model të gjurmës së gishtit gjatë konfigurimit, ajo duhet t\'i regjistrojë nga pozicione të ndryshme imazhet e gjurmës sate të gishtit."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Për rezultate më të mira, përdor një mbrojtës ekrani që është i certifikuar nga \"Prodhuar për Google\". Me mbrojtës të tjerë ekrani, gjurma jote e gishtit mund të mos funksionojë."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Për rezultate më të mira, përdor një mbrojtës ekrani që është i certifikuar si i \"Prodhuar për Google\". Me mbrojtës të tjerë ekrani, gjurma jote e gishtit mund të mos funksionojë."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Për rezultate më të mira, përdor një mbrojtës ekrani që është i certifikuar nga \"Prodhuar për Google\". Me mbrojtës të tjerë ekrani, gjurma e gishtit e fëmijës tënd mund të mos funksionojë."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Shkyçja me orë"</string>
@@ -556,28 +557,17 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Trokit për ta konfiguruar"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"\"Shkyçja me gjurmën e gishtit\" për hapësirën private"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"\"Shkyçja me fytyrë\" për hapësirën private"</string>
- <!-- no translation found for private_space_biometric_unlock_title (1978145237698659673) -->
- <skip />
- <!-- no translation found for private_space_fingerprint_enroll_introduction_title (5187730641333680942) -->
- <skip />
- <!-- no translation found for private_space_fingerprint_enroll_introduction_message (9092068873421435300) -->
- <skip />
- <!-- no translation found for private_space_fingerprint_enroll_introduction_footer_message (7125255484447984854) -->
- <skip />
- <!-- no translation found for private_space_fingerprint_enroll_finish_message (4754797926493316965) -->
- <skip />
- <!-- no translation found for private_space_face_enroll_introduction_title (3717541082520006032) -->
- <skip />
- <!-- no translation found for private_space_face_enroll_introduction_message (250239418499081821) -->
- <skip />
- <!-- no translation found for private_space_face_enroll_introduction_info_looking (5694757845303924042) -->
- <skip />
- <!-- no translation found for private_space_face_enroll_introduction_info_less_secure (8460719783943533172) -->
- <skip />
- <!-- no translation found for private_space_face_settings_require_attention_details (2799569069549999689) -->
- <skip />
- <!-- no translation found for private_space_face_settings_footer (7722256209563543711) -->
- <skip />
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"\"Shkyçja me fytyrë\" dhe \"Shkyçja me gjurmën e gishtit\" për hapësirën private"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Konfiguro \"Shkyçjen me gjurmën e gishtit\" për hapësirën private"</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Përdor gjurmën e gishtit për të shkyçur hapësirën tënde private ose për të verifikuar që je ti, si p.sh. kur identifikohesh në aplikacione ose kur miraton një blerje"</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Hapësira jote private mund të shkyçet edhe kur nuk ke për qëllim një gjë të tillë, si p.sh. nëse dikush e mban telefonin tënd te gishti yt."</string>
+ <string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Përdor gjurmën e gishtit për të shkyçur hapësirën tënde private ose për të miratuar blerjet"</string>
+ <string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Konfiguro \"Shkyçjen me fytyrë\" për hapësirën private"</string>
+ <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Përdor fytyrën tënde për të shkyçur hapësirën tënde private ose për të verifikuar që je ti, si p.sh. kur identifikohesh në aplikacione ose kur miraton një blerje"</string>
+ <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Shikimi te telefoni mund ta shkyçë hapësirën private edhe kur nuk ke për qëllim ta bësh këtë. Hapësira jote private mund të shkyçet edhe nga dikush që të ngjan shumë, si p.sh. një binjak identik, ose nëse dikush e mban pajisjen në nivelin e fytyrës sate."</string>
+ <string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Përdorimi i fytyrës sate për të shkyçur hapësirën tënde private mund të jetë më pak i sigurt se një motiv, kod PIN ose fjalëkalim i fortë"</string>
+ <string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Për të shkyçur hapësirën private, sytë e tu duhet të jenë të hapur. Për rezultatet më të mira, hiq syzet e diellit."</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"Përdor fytyrën për të shkyçur hapësirën tënde private.\n\nKi parasysh:\nMund të kesh vetëm një fytyrë të konfiguruar në të njëjtën kohë. Për të shtuar një fytyrë tjetër, fshi fytyrën aktuale.\n\nNëse shikon te telefoni, mund ta shkyçësh atë pa dashje.\n\nHapësira jote private mund të shkyçet nga dikush tjetër nëse pajisja mbahet në nivelin e fytyrës sate.\n\nHapësira jote private mund të shkyçet nga dikush që të ngjan shumë, si p.sh. një binjak identik."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Kërko gjithmonë hapin e konfirmimit kur përdoret \"Shkyçja me fytyrë\""</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Mënyrat për ta shkyçur"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"Njëlloj me kyçjen e ekranit të pajisjes"</string>
@@ -588,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Sa herë që kyçet pajisja"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minuta pas kohës së pritjes së ekranit"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Vetëm pasi pajisja të riniset"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Fshihe hapësirën private"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Fshihe hapësirën private kur është e kyçur"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Për të mos i lejuar të tjerët të dinë se ke një hapësirë private në pajisjen tënde, mund ta fshehësh atë nga lista jote e aplikacioneve"</string>
@@ -605,8 +593,7 @@
<string name="private_space_category_system" msgid="1286843321867285700">"Sistemi"</string>
<string name="private_space_delete_title" msgid="636873505724100006">"Fshi hapësirën private"</string>
<string name="private_space_delete_header" msgid="4594429153176776184">"Të fshihet hapësira private?"</string>
- <!-- no translation found for private_space_delete_summary (7507302208399543921) -->
- <skip />
+ <string name="private_space_delete_summary" msgid="7507302208399543921">"Hapësira jote private do të fshihet përgjithmonë nga pajisja jote. \n\nTë gjitha aplikacionet në hapësirën tënde dhe të dhënat e tyre do të fshihen gjithashtu përgjithmonë nga "<b>"hapësira ruajtëse e brendshme"</b>" e telefonit tënd."</string>
<string name="private_space_accounts" msgid="1078277762792056395">"Llogaritë e mëposhtme do të hiqen nga hapësira jote private:"</string>
<string name="private_space_delete_button_label" msgid="1256981385318225002">"Fshi"</string>
<string name="private_space_confirm_deletion_header" msgid="3468651585498942977">"Hapësira private po fshihet…"</string>
@@ -621,11 +608,15 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Konfiguro"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Hapësira private"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Fshih ose kyç aplikacionet private në një hapësirë të veçantë. Përdor një \"Llogari të posaçme të Google\" për më shumë siguri."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Konfiguro hapësirën tënde private"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Zgjidh një \"Llogari të Google\" për hapësirën tënde"</b>\n"Përdorimi i një llogarie të posaçme ndihmon për të ndaluar që skedarët, fotografitë dhe email-et e sinkronizuara të mos shfaqen jashtë hapësirës sate"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Si funksionon"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Krijo një \"Llogari të Google\" për hapësirën tënde"</b>\n"Nëse përdor një llogari të posaçme, kjo të ndihmon të ndalosh që skedarët, fotografitë dhe email-et e sinkronizuara të mos shfaqen jashtë hapësirës sate"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Cakto një kyçje"</b>\n"Kyçe hapësirën tënde për t\'i ndaluar të tjerët që të mos e hapin atë"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Instalo aplikacionet"</b>\n"Hapësira jote private ka \"Dyqanin e vet të Play\" që të mund t\'i instalosh me lehtësi aplikacionet"</string>
- <!-- no translation found for private_space_apps_permission_text (7476093383297232044) -->
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Instalo aplikacionet"</b>\n"Instalo aplikacionet që dëshiron t\'i mbash private në hapësirën tënde"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Ki parasysh"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Aplikacionet ndalojnë kur ti e kyç hapësirën"</b>\n"Kur e kyç hapësirën, aplikacionet në hapësirën tënde ndalojnë dhe nuk do të marrësh njoftime nga ato"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
<skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Mëso më shumë rreth hapësirës private"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Kjo do të zgjasë disa minuta"</string>
@@ -636,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Mund të caktosh një kyçje të re vetëm për hapësirën private ose mund të përdorësh të njëjtën kyçje që përdor për të shkyçur pajisjen tënde"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Përdor kyçjen e ekranit"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Zgjidh një kyçje të re"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Vetëm një sekondë…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Prit një sekondë…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Plotësisht gati!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Për të gjetur hapësirën tënde private, shko te lista e aplikacioneve dhe më pas lëviz poshtë"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"U krye"</string>
@@ -650,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Cakto një PIN për hapësirën private"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Cakto fjalëkalim për hapësirën private"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Cakto motiv për hapësirën private"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Krijo një \"Llogari të Google\" për të ndihmuar t\'i mbash private të dhënat e tua"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Në ekranin tjetër mund të identifikohesh në një llogari për ta përdorur me hapësirën tënde private"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Krijo një llogari të posaçme për të ndihmuar në ndalimin e shfaqjes së të dhënave jashtë hapësirës private, si p.sh.:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Fotografitë, skedarët, email-et, kontaktet, ngjarjet e kalendarit dhe të dhëna të tjera të sinkronizuara"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Historiku i shkarkimit të aplikacioneve dhe rekomandimet"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historiku i shfletimit, faqeshënuesit dhe fjalëkalimet e ruajtura"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Përmbajtjet e sugjeruara në lidhje me aktivitetin tënd në aplikacionet e hapësirës private"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"E kuptova"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Kyç"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Fshih"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Mund të shtosh deri në <xliff:g id="COUNT">%d</xliff:g> gjurmë gishtash"</string>
@@ -1068,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certfiikata e sistemit"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Gozhdimi i certfiikatave"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Detajet e rrjetit"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ky rrjet përdor një protokoll më të vjetër të sigurisë të quajtur WEP, i cili është më pak i sigurt"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Maska e nënrrjetit"</string>
<string name="server_name_title" msgid="7257095185810299066">"Emri i serverit"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Lloji"</string>
@@ -1385,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Adresa MAC e Wi‑Fi të pajisjes"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Adresa e Bluetooth-it"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Numri i serisë"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Koha aktive"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Koha aktive"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Data e prodhimit"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Data e përdorimit për herë të parë"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Numri i cikleve"</string>
@@ -1497,8 +1481,7 @@
<string name="error_duplicate_apn_entry" msgid="7792928408935276618">"Hyrje dublikatë e APN-së."</string>
<string name="error_name_empty" msgid="1258275899283079142">"Fusha Emri nuk mund të jetë bosh."</string>
<string name="error_apn_empty" msgid="7657491065443746915">"Rrjeti APN nuk mund të jetë bosh."</string>
- <!-- no translation found for error_apn_type_empty (8697781608034468813) -->
- <skip />
+ <string name="error_apn_type_empty" msgid="8697781608034468813">"Lloji i APN-së nuk mund të jetë bosh."</string>
<string name="error_mcc_not3" msgid="883659545640179094">"Fusha e MCC-së duhet të ketë 3 shifra."</string>
<string name="error_mnc_not23" msgid="7642478711158474918">"Fusha e MNC-së duhet të ketë 2 ose 3 shifra."</string>
<string name="error_adding_apn_type" msgid="1324263534991467943">"Operatori nuk lejon shtimin e APN-ve të llojit %s."</string>
@@ -1526,8 +1509,7 @@
<string name="reset_esim_error_title" msgid="6516110227665862295">"Kartat eSIM nuk mund të spastrohen"</string>
<string name="reset_esim_error_msg" msgid="8459527827897797168">"Ndodhi një gabim dhe kartat e tua eSIM nuk u spastruan.\n\nRinis pajisjen dhe provo përsëri."</string>
<string name="reset_private_space_delete_title" msgid="2555885198282572990">"Fshi hapësirën private"</string>
- <!-- no translation found for reset_private_space_delete_dialog (2325106559507364385) -->
- <skip />
+ <string name="reset_private_space_delete_dialog" msgid="2325106559507364385">"Nëse ke një hapësirë private në pajisjen tënde, ajo do të fshihet përgjithmonë dhe \"Llogaria e Google\" e shtuar në hapësirën tënde do të hiqet. \n\nTë gjitha aplikacionet në hapësirën tënde dhe të dhënat e tyre do të fshihen gjithashtu përgjithmonë nga "<b>"hapësira ruajtëse e brendshme"</b>" e telefonit tënd."</string>
<string name="main_clear_title" msgid="277664302144837723">"Spastro të gjitha të dhënat (rivendosja e fabrikës)"</string>
<string name="main_clear_short_title" msgid="4752094765533020696">"Spastro të gjitha të dhënat (rivendosja e fabrikës)"</string>
<string name="main_clear_desc_also_erases_external" msgid="3687911419628956693"><li>"Muzika"</li>\n<li>"Fotografitë"</li>\n<li>"Të dhëna të tjera të përdoruesit"</li></string>
@@ -1941,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Trokitja poshtë djathtas"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Trokit te këndi poshtë djathtas i bllokut me prekje për më shumë opsione"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Shpejtësia e treguesit"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Stili i mbushjes së treguesit"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Ndrysho stilin e mbushjes së treguesit në të zezë"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Ndrysho stilin e mbushjes së treguesit në jeshile"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Ndrysho stilin e mbushjes së treguesit në të verdhë"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Ndrysho stilin e mbushjes së treguesit në rozë"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Ndrysho stilin e mbushjes së treguesit në blu"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Mëso gjestet e bllokut me prekje"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"blloku i prekjes, bllok i prekjes, miu, kursori, lëviz, rrëshqit shpejt, kliko më të djathtin, kliko, treguesi"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"kliko me të djathtin, trokit"</string>
@@ -3335,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Asnjë}=1{1 orar i caktuar}other{# orare të caktuara}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Mos shqetëso"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Modalitetet e përparësisë"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Merr njoftime vetëm nga aplikacionet dhe personat e rëndësishëm"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Kufizo ndërprerjet"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Aktivizo \"Mos shqetëso\""</string>
@@ -3345,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Redakto"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Oraret"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Orari"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Aktivizo automatikisht"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Shto një kalendar"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Përdor kalendarin tënd"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Orari"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Cakto një orar"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Orari"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> orë e <xliff:g id="MINUTES">%2$d</xliff:g> min."</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Orari"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Vendose telefonin në heshtje në kohë të caktuara"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Cakto rregullat për \"Mos shqetëso\""</string>
@@ -3623,15 +3612,14 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ky aplikacion nuk i mbështet cilësimet e përmirësuara"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Cilësime të tjera"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Brenda këtij aplikacioni ofrohen cilësime të tjera"</string>
- <!-- no translation found for notification_polite_title (3801775758735739286) -->
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
<skip />
- <!-- no translation found for notification_polite_main_control_title (855117131309844580) -->
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
<skip />
- <!-- no translation found for notification_polite_description (6414215800132666462) -->
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
<skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Zbato në profilet e punës"</string>
- <!-- no translation found for notification_polite_work_summary (5014189280132951378) -->
- <skip />
+ <string name="notification_polite_work_summary" msgid="5014189280132951378">"Zbato për aplikacionet e profilit të punës"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Shërbimet e ndihmësit VR"</string>
<string name="no_vr_listeners" msgid="8442646085375949755">"Asnjë aplikacion i instaluar nuk ka kërkuar të ekzekutohet si shërbim ndihmësi VR."</string>
<string name="vr_listener_security_warning_title" msgid="7026351795627615177">"Të lejohet qasja e shërbimit VR për <xliff:g id="SERVICE">%1$s</xliff:g>?"</string>
@@ -3785,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Aplikacionet e zgjedhura"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Asnjë"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Të gjitha"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Lejo aplikacionet ta anulojnë"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Aplikacionet që mund ta ndërpresin"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Zgjidh më shumë aplikacione"</string>
@@ -3821,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Ndrysho vetëm tek alarmet për një orë deri në {time}}other{Ndrysho vetëm tek alarmet për # orë deri në {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Ndrysho në gjendjen \"vetëm alarmet\" deri në <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Ndrysho te \"ndërprit gjithmonë\""</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Riemërto"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Ndrysho ikonën"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Ndrysho ikonën"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Paralajmërim"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Mbyll"</string>
<string name="device_feedback" msgid="5351614458411688608">"Dërgo komente për këtë pajisje"</string>
@@ -4804,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Majtas"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Djathtas"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Kasa"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Bateria"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Paneli i \"Cilësimeve\""</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Detyro \"modalitetin e desktopit\""</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Detyro \"modalitetin e desktopit\" eksperimental në ekrane dytësore"</string>
diff --git a/res/values-sr/arrays.xml b/res/values-sr/arrays.xml
index ad421a1..3b5400e 100644
--- a/res/values-sr/arrays.xml
+++ b/res/values-sr/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index a1c5f48..0f15aa8 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Прекидате везу са уређајем?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Упарите нови уређај"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Аутоматски поново укључи сутра"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Упари десно уво"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Упари лево уво"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Упарите друго уво"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Упари лево уво"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Подешавања слушног апарата"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Пречица, компатибилност са слушним апаратима"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Задата подешавања"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Задата подешавања"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Ажурирање задатих подешавања није успело"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудио излаз"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"О аудио излазу"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Откажи"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Не, хвала"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Не сада"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Прихватам"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Више"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Откључајте помоћу лица"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Имајте на уму"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Откључавајте телефон или одобравајте куповине помоћу отиска прста.\n\nНапомена: Не можете да откључавате овај уређај помоћу отиска прста. Више информација затражите од администратора организације."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Откажи"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Не, хвала"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Не сада"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Прихватам"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Прескачете отиске прстију?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Подешавање отисака прстију траје свега минут-два. Ако прескочите ово, можете да додате отисак прста касније у подешавањима."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Принцип рада"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Откључавање отиском прста прави јединствени модел отиска прста ради верификовања идентитета. Да бисте направили тај модел отиска прста током подешавања, морате да сликате отисак прста из различитих положаја."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Откључавање отиском прста прави јединствени модел дететовог отиска прста ради верификовања идентитета. Да би направило тај модел отиска прста током подешавања, дете треба да слика отисак прста из различитих положаја."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Да бисте имали најбоље резултате, користите заштиту за екран са сертификатом Направљено за Google. Отисак прста можда неће радити са другим заштитама за екран."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Да бисте постигли најбоље резултате, користите заштиту за екран са сертификатом Направљено за Google. Отисак прста можда неће радити са другим заштитама за екран."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Да бисте имали најбоље резултате, користите заштиту за екран са сертификатом Направљено за Google. Отисак прста детета можда неће радити са другим заштитама за екран."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Откључавање сатом"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Сваки пут кад се уређај закључа"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 минута после гашења екрана"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Само после рестартовања уређаја"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Ако за приватан простор користите друго закључавање, можда ћете морати да потврдите идентитет да бисте отворили апликације у њему."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Сакријте приватан простор"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Сакриј приватан простор када је закључан"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Приватан простор можете да сакријете на листи апликација како други не би знали да га имате на уређају"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Подеси"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Приватни простор"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Сакријте или закључајте приватне апликације у засебном простору. Користите наменски Google налог ради додатне безбедности."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Подесите приватни простор"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Изаберите Google налог за простор"</b>\n"Коришћењем наменског налога спречавате да се синхронизовани фајлови, слике и имејлови појављују изван простора"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Принцип рада"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Направите Google налог за простор"</b>\n"Ако користите наменски налог, спречавате да се синхронизовани фајлови, слике и имејлови приказују изван простора"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Подесите закључавање"</b>\n"Закључајте простор да други не би могли да га отворе"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Инсталирајте апликације"</b>\n"Приватни простор има своју Play продавницу, па можете лако да инсталирате апликације."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Када је приватни простор закључан, апликације у њему се не приказују у менаџеру дозвола, на контролној табли за приватност ни у другим подешавањима.\n\nПриватни простор не можете да вратите на новом уређају. Морате да подесите други приватни простор ако желите да га користите на другом уређају.\n\nСвако ко ваш уређај повеже са рачунаром или на њега инсталира злонамерне апликације моћи ће да приступи вашем приватном простору."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Инсталирајте апликације"</b>\n"Апликације за које желите да буду приватне инсталирајте у простору"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Имајте на уму"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Апликације се заустављају када закључате простор"</b>\n"Када закључате простор, апликације у њему се заустављају и не шаљу вам обавештења"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Сазнајте више о приватном простору"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Потрајаће неколико тренутака"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Подешава се приватни простор…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Можете да подесите ново откључавање само за приватан простор или да користите оно исто које користите за откључавање уређаја"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Користи откључавање екрана"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Одабери нови тип откључавања"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Само тренутак…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Само тренутак…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Готово!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Да бисте пронашли приватни простор, отворите листу апликација и скролујте надоле"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Готово"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Подесите PIN за приватни простор"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Подесите лозинку за приватни простор"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Подесите образац за приватни простор"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Отворите наменски Google налог да бисте заштитили приватност података"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"На следећем екрану можете да се пријавите на налог који ћете користити са приватним простором"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Отворите наменски налог како бисте спречили да се изван приватног простора приказују подаци, на пример:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Синхронизоване слике, фајлови, имејлови, контакти, догађаји у календару и други подаци"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Историја преузимања апликације и препоруке"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Историја прегледања, обележивачи и сачуване лозинке"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Предложен садржај повезан са активностима у апликацијама из приватног простора"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Важи"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Закључај"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Сакриј"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Можете да их додате до <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -669,7 +666,7 @@
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"Одаберите резервни начин за откључавање екрана"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"Ако заборавите откључавање екрана, администратор не може да га ресетује."</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"Подесите засебно закључавање за пословне апликације"</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"Ако заборавите ово закључавање, затражите од ИТ администратора да га ресетује"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"Ако заборавите како да откључате, затражите од ИТ администратора да то ресетује"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"Опције закључавања екрана"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"Опције откључавања екрана"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"Откључавање које се аутоматски потврђује"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Сертификат система"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Постављање сертификата"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Детаљи о мрежи"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Ова мрежа користи старији безбедносни протокол звани WEP који је мање сигуран"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Маска подмреже"</string>
<string name="server_name_title" msgid="7257095185810299066">"Назив сервера"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Тип"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"WiFi MAC адреса уређаја"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth адреса"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Серијски број"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Време рада"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Активно време"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Датум производње"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Датум првог коришћења"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Број циклуса"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Додир у доњем десном углу"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Додирните доњи десни угао тачпеда за више опција"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Брзина показивача"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Стил попуне показивача"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Промените стил попуне у црно"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Промените стил попуне у зелено"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Промените стил попуне у жуто"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Промените стил попуне у розе"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Промените стил попуне у плаво"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Научите покрете за тачпед"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"додирна табла, миш, курсор, скроловање, превлачење, десни клик, клик, показивач"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"десни клик, додир"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Ниједан}=1{1 распоред је подешен}one{# распоред је подешен}few{# распореда су подешена}other{# распореда је подешено}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Не узнемиравај"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Приоритетни режими"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Добијајте обавештења само од важних особа и апликација"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Ограничите прекиде"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Укључите режим Не узнемиравај"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Додајте календар"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Користите свој календар"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Распоред"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Подесите распоред"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Распоред"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> с, <xliff:g id="MINUTES">%2$d</xliff:g> мин"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Распоред"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Утишајте телефон у одређено време"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Подесите правила за режим „Не узнемиравај“"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ова апликација не подржава побољшана подешавања"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Још подешавања"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Доступно је још подешавања у апликацији"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Утишавање"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Користи утишавање"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Када добијете много обавештења у кратком периоду, уређај ће смањити број звучних ометања и искачућих прозора на екрану. И даље ћете добијати уобичајена обавештења за позиве, аларме и приоритетне конверзације, а сва примљена обавештења можете лако да пронађете у траци са обавештењима."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Примени на пословне профиле"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Примените на апликације пословног профила"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Услуге помагача за виртуелну реалност"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Изабране апликације"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ниједна"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Све"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Дозволи да апликације занемарују"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Апликације које могу да прекидају"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Изаберите још апликација"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Пређите само на аларме на један сат све до {time}}one{Пређите само на аларме на # сат све до {time}}few{Пређите само на аларме на # сата све до {time}}other{Пређите само на аларме на # сати све до {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Пребацује у режим само са алармима до <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Пребацује у режим увек прекидај"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Преименуј"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Промени икону"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Промени икону"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Упозорење"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Затвори"</string>
<string name="device_feedback" msgid="5351614458411688608">"Шаљи повратне информације о уређају"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Лево"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Десно"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Футрола"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Батерија"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Табла са подешавањима"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Наметни режим рачунара"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Намеће експериментални режим рачунара на секундарним екранима"</string>
@@ -4841,24 +4859,24 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"Укључи уз величину страница 16 KB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Укључи уређај уз језгро подржано за 16 KB странице"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Пређите са режима од 4 KB на режим од 16 KB"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Користите режим независан од величине странице са језгром од 4 KB, а прелазите на режим од 16 KB. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Овим ћете рестартовати уређај. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да га вратите на режим од 4 KB и закључате покретачки програм, што ће ресетовати уређај на фабричка подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера."</string>
- <string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Пређите са 16 KB режима на 4 KB режим"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Користите режим независан од величине странице са језгром за 16 KB, а прелазите на 4 KB режим. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Овим ћете рестартовати уређај. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да закључате покретачки програм, што ће ресетовати уређај на фабричка подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Користите режим независан од величине странице са језгром од 4 kB, а прелазите на режим од 16 kB. У овом режиму не може да се гарантује интегритет софтвера, па подаци који сe чувају на телефону док је покретачки програм откључан могу да буду угрожени. Овим ћете рестартовати уређај. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да га вратите на режим од 4 kB и закључате покретачки програм, што ће ресетовати уређај на фабричка подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера."</string>
+ <string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Пређите са режима од 16 kB на режим од 4 kB"</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Користите режим независан од величине странице са језгром за 16 kB, а прелазите на режим од 4 kB. У овом режиму не може да се гарантује интегритет софтвера, па подаци који сe чувају на телефону док је покретачки програм откључан могу да буду угрожени. Овим ћете рестартовати уређај. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да закључате покретачки програм, што ће ресетовати уређај на фабричка подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Ажурирање на језгро компатибилно са 16 KB страницама није успело."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Примењује се промена"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Желите да реформатирате уређај на ext4? (потребно за 16 KB режим)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Да би овај уређај могао да користи 16 KB опцију за програмера, његова партиција података треба да се конвертује у ext4. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Активирање 16 KB опције захтева још једно рестартовање. Када будете у овом режиму, моћи ћете да прелазите са 4 KB режима на 16 KB режим и обратно уз једно рестартовање. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да га вратите на 4 KB режим и закључате покретачки програм, што ће ресетовати уређај на фабричка подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера. Уређај ће после потврде бити обрисан, а систем фајлова промењен на ext4. Када се то заврши, вратите се овде да бисте поново омогућили 16 KB режим."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Реформатираћете уређај на ext4? (потребно за режим од 16 kB)"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Да би овај уређај могао да користи опцију за програмера од 16 kB, његова партиција података треба да се конвертује у ext4. У овом режиму не може да се гарантује интегритет софтвера, па подаци који сe чувају на телефону док је покретачки програм откључан могу да буду угрожени. Активирање опције од 16 kB захтева још једно рестартовање. Када будете у овом режиму, моћи ћете да прелазите са режима од 4 kB на режим од 16 kB и обратно уз једно рестартовање. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да га вратите на режим од 4 kB и закључате покретачки програм, чиме ће се уређај ресетовати на фабричка подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера. Уређај ће после потврде бити обрисан, а систем фајлова промењен на ext4. Када се то заврши, вратите се овде да бисте поново омогућили режим од 16 kB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Обриши све податке"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Реформатирање и брисање партиције података на ext4 није успело."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Треба да откључате покретачки програм да бисте користили 16 KB режим"</string>
- <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Да би овај уређај могао да користи 16 KB опцију за програмера, на њему треба да буде откључан покретачки програм. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Када се активира 16 KB режим, сви подаци и подешавања корисника ће бити избрисани. Када се покретачки програм откључа, активирање 16 KB опције захтева два рестартовања. Када будете у овом режиму, моћи ћете да прелазите са 4 KB режима на 16 KB режим и обратно уз једно рестартовање. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да га вратите на 4 KB режим и закључате OEM или покретачки програм на уређају (што ће га ресетовати на фабричка подешавања). Откључајте покретачки програм и пробајте поново. Упутства како то да урадите потражите на <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Користите 4 KB режим независан од величине странице"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Користите 4 KB режим у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да закључате покретачки програм уређаја. Додирните да бисте прочитали више."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Користите 4 KB режим у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да закључате покретачки програм уређаја. То ће поново ресетовати уређај на фабричка подешавања и вратити га на производна подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера. Ако је уређај нестабилан или се на њему не укључи Android, поново га флешујте користећи најновије слике са фабричким подешавањима са <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Можете и да користите <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> и изаберете Обриши уређај, Закључај покретачки програм и Принудно флешуј све партиције."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Користите 16 KB режим независан од величине странице"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Користите 16 KB режим у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да га вратите на 4 KB режим и закључате покретачки програм уређаја. Додирните да бисте прочитали више."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Користите 16 KB режим у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да га вратите на 4 KB режим и закључате покретачки програм уређаја. То ће поново ресетовати уређај на фабричка подешавања и вратити га на производна подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера. Ако је уређај нестабилан или се на њему не укључи Android, поново га флешујте користећи најновије слике са фабричким подешавањима са <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Можете и да користите <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> и изаберете Обриши уређај, Закључај покретачки програм и Принудно флешуј све партиције."</string>
- <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 KB режим независан од величине странице"</string>
+ <string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Да би овај уређај могао да користи опцију за програмера од 16 kB, на њему треба да буде откључан покретачки програм. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Када се активира режим од 16 kB, сви подаци и подешавања корисника ће бити избрисани. Када се покретачки програм откључа, активирање опције од 16 kB захтева два рестартовања. Када будете у овом режиму, моћи ћете да прелазите са режима од 4 kB на режим од 16 kB и обратно уз једно рестартовање. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај вратили на производни режим, треба да га вратите на режим од 4 kB и закључате OEM или покретачки програм на уређају (што ће га ресетовати на фабричка подешавања). Откључајте покретачки програм и пробајте поново. Упутства како то да урадите потражите на <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Користите режим од 4 kB независан од величине странице"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Користите режим од 4 kB у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па подаци који сe чувају на телефону док је покретачки програм откључан могу да буду угрожени. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да закључате покретачки програм уређаја. Додирните да бисте прочитали више."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Користите режим од 4 kB у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па могу бити угрожени подаци који сe чувају на телефону док је покретачки програм откључан. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да закључате покретачки програм уређаја. То ће поново ресетовати уређај на фабричка подешавања и вратити га на производна подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера. Ако је уређај нестабилан или се на њему не укључи Android, поново га флешујте користећи најновије слике са фабричким подешавањима са <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Можете и да користите <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> и изаберете Обриши уређај, Закључај покретачки програм и Принудно флешуј све партиције."</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Користите режим од 16 kB независан од величине странице"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Користите режим од 16 kB у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па подаци који сe чувају на телефону док је покретачки програм откључан могу да буду угрожени. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да га вратите на режим од 4 kB и закључате покретачки програм уређаја. Додирните да бисте прочитали више."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Користите режим од 16 kB у оквиру режима независног од величине странице. У овом режиму не може да се гарантује интегритет софтвера, па подаци који сe чувају на телефону док је покретачки програм откључан могу да буду угрожени. Неке функције су онемогућене у овим режимима, што значи да неке апликације можда неће радити. Да бисте уређај поново вратили у производни режим, морате да га вратите на режим од 4 kB и закључате покретачки програм уређаја. То ће поново ресетовати уређај на фабричка подешавања и вратити га на производна подешавања. Када се на уређају укључи Android, онемогућите OEM откључавање у Опцијама за програмера. Ако је уређај нестабилан или се на њему не укључи Android, поново га флешујте користећи најновије слике са фабричким подешавањима са <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>. Можете и да користите <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> и изаберете Обриши уређај, Закључај покретачки програм и Принудно флешуј све партиције."</string>
+ <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Режим од 16 kB независан од величине странице"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Прочитајте више"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Обрађивач извештаја о грешци"</string>
<string name="bug_report_handler_picker_footer_text" msgid="4935758328366585673">"Одређује која апликација управља пречицом за извештај о грешци на уређају."</string>
@@ -4956,7 +4974,7 @@
<string name="default_active_sim_calls" msgid="2390973682556353558">"позиви"</string>
<string name="default_active_sim_sms" msgid="8041498593025994921">"SMS"</string>
<string name="default_active_sim_mobile_data" msgid="6798083892814045301">"мобилни подаци"</string>
- <string name="wifi_scan_notify_message" msgid="1331238142061476869">"Ради бољег доживљаја уређаја, апликације и услуге могу и даље да траже WiFi мреже у било ком тренутку, чак и када је WiFi искључен. То може да се користи, на пример, за побољшавање функција и услуга заснованих на локацији. То можете да промените у подешавањима WiFi скенирања."</string>
+ <string name="wifi_scan_notify_message" msgid="1331238142061476869">"Ради бољег доживљаја, апликације и услуге могу и даље да траже WiFi мреже у било ком тренутку, чак и када је WiFi искључен. То може да се користи, на пример, за побољшавање функција и услуга заснованих на локацији. То можете да промените у подешавањима WiFi скенирања."</string>
<string name="wifi_scan_change" msgid="8438320311511852918">"Промени"</string>
<string name="preference_summary_default_combination" msgid="4643585915107796253">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="NETWORKMODE">%2$s</xliff:g>"</string>
<string name="mobile_data_connection_active" msgid="2422223108911581552">"Повезано"</string>
diff --git a/res/values-sv/arrays.xml b/res/values-sv/arrays.xml
index c7693ec..fcb9b8c 100644
--- a/res/values-sv/arrays.xml
+++ b/res/values-sv/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 2faf2d4..e1186f7 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Ska enheten kopplas från?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Parkoppla en ny enhet"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Aktivera automatiskt igen i morgon"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Parkoppla höger"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Parkoppla vänster"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Parkoppla andra örat"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Parkoppla vänster"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Inställningar för hörapparat"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Genväg, kompatibilitet med hörapparat"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Förinställningar"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Förinställning"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Det gick inte att uppdatera förinställningen"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Ljudutgång"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Om ljudutgång"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Avbryt"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Nej tack"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Inte nu"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Jag godkänner"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Mer"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Lås upp med ansiktet"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Tänk på detta"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Du kan använda fingeravtrycket för att låsa upp mobilen och godkänna köp.\n\nObs! Du kan inte använda fingeravtrycket för att låsa upp den här enheten. Kontakta organisationens administratör om du vill veta mer."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Avbryt"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Nej tack"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Inte nu"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Jag godkänner"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Vill du hoppa över fingeravtryck?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Det tar bara ett par minuter att konfigurera fingeravtrycket. Hoppar du över det kan du lägga till fingeravtryck i inställningarna senare."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Varje gång enheten låses"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minuter efter att skärmen har släckts"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Endast när enheten har startats om"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Om du använder ett annat lås för ditt privata område måste du kanske verifiera din identitet för att öppna appar i det privata området."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Dölj privat område"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Dölj privat område när det är låst"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Du kan dölja ett privat område i applistan så att andra inte vet att du har ett"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Ställ in"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Privat område"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Dölj eller lås privata appar i ett separat område. Använd ett dedikerat Google-konto för extra säkerhet."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Konfigurera ett privat område"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Välj ett Google-konto för ditt område"</b>\n"Om du använder ett dedikerat konto visas inte synkroniserade filer, foton och e-postmeddelanden utanför området"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Så fungerar det"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Skapa ett Google-konto för ditt privata område"</b>\n"Om du använder ett separat konto förhindrar det att synkroniserade filer, foton och e-postmeddelanden visas utanför det privata området"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Ställ in ett lås"</b>\n"Lås ditt område så att andra inte kan öppna det"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Installera appar"</b>\n"Ditt privata område har en egen Play Butik så att du smidigt kan installera appar."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Appar i ditt privata område visas inte i behörighetshanteringen, integritetsöversikten eller andra inställningar när ditt privata område är låst.\n\nDitt privata område kan inte återställas på en ny enhet. Du måste ställa in ett nytt privat område om du vill använda det på en annan enhet.\n\nAlla som ansluter din enhet till en dator eller installerar skadliga appar på enheten kan få åtkomst till ditt privata område."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Installera appar"</b>\n"Installera appar som du vill hålla privata i området"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Viktigt att tänka på"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Appar stoppas när du låser ditt privata område"</b>\n"När du låser ditt privata område stoppas apparna i området och du får inga aviseringar från dem"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Läs mer om privat område"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Detta tar en stund"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Ställer in privat område …"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Du kan ställa in ett nytt lås för endast det privata området eller använda samma lås som du har till enheten"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Använd skärmlås"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Välj ett nytt lås"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Ett ögonblick …"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Ett ögonblick …"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Klart!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Om du vill hitta ditt privata område öppnar du applistan och scrollar nedåt"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Klar"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Ställ in pinkod för ditt privata rum"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Ställ in lösenord för ditt privata rum"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Ställ in mönster för ditt privata rum"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Skapa ett Google-konto för att hålla din data privat:"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"På nästa skärm kan du logga in på kontot som du vill använda med ditt privata område"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Skapa ett dedikerat konto för att förhindra att data visas utanför det privata området, till exempel:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Synkroniserade foton, filer, e-post, kontakter, kalenderhändelser och annan data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Rekommendationer och nedladdningshistorik för appar"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Webbhistorik, bokmärken och sparade lösenord"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Föreslaget innehåll som rör din aktivitet i appar i det privat området"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Lås"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Dölj"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Du kan lägga till upp till <xliff:g id="COUNT">%d</xliff:g> fingeravtryck"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Systemcertifikat"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Fästa certifikat"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Nätverksinformation"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Det här nätverket använder ett äldre säkerhetsprotokoll som kallas WEP och som är mindre säkert"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Nätmask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Servernamn"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Typ"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Enhetens MAC-adress för wifi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth-adress"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serienummer"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Tid sedan systemstart"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Drifttid"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Tillverkningsdatum"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Datum för första användning"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Antal cykler"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Tryck längst ned till höger"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Tryck på det nedre högra hörnet av styrplattan för fler alternativ"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Markörens hastighet"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Fyllningsstil för markör"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Ändra markörfyllningen till svart"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Ändra markörfyllningen till grön"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Ändra markörfyllningen till gul"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Ändra markörfyllningen till rosa"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Ändra markörfyllningen till blå"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Lär dig rörelser för styrplattan"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"styrplatta, styr platta, mus, markör, scrolla, svep, högerklicka, klicka, pekare"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"högerklicka, tryck"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Inga}=1{1 schema har ställts in}other{# scheman har ställts in}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Stör ej"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Prioriterade lägen"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Få bara aviseringar från viktiga personer och appar"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Begränsa antalet avbrott"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Aktivera Stör ej."</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Lägg till en kalender"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Använd kalendern"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Schemalägg"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Schemalägg"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Stäng av mobilljud vid vissa tider"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Ange regler för Stör ej"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Den här appen har inte stöd för avancerade inställningar"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Fler inställningar"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Fler inställningar är tillgängliga i appen"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Gradvis sänkning"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Använd gradvis sänkning"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"När du får många aviseringar på kort tid kommer din enhet att minimera ljudstörningar och pop-ups på skärmen. Samtal, alarm och prioriterade konversationer kommer fortfarande att aviseras som vanligt, och alla levererade aviseringar är lätta att hitta i meddelandepanelen."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Använd för jobbprofiler"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Tillämpa på jobbprofilappar"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Hjälptjänster för VR"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Valda appar"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Ingen"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Alla"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Tillåt att appar åsidosätter funktionen"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Appar som får störa dig"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Välj fler appar"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Ändra till endast alarm i en timme tills {time}}other{Ändra till endast alarm i # timmar tills {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Ändra till endast alarm fram till kl. <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Ändra till avbryt alltid"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Varning"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Stäng"</string>
<string name="device_feedback" msgid="5351614458411688608">"Skicka feedback om den här enheten"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Vänster"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Höger"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Fodral"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batteri"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panelen Inställningar"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Tvinga fram skrivbordsläge"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Tvinga fram experimentellt skrivbordsläge på sekundära skärmar"</string>
@@ -4841,9 +4865,9 @@
<string name="enable_16k_pages" msgid="8001470927566110689">"Starta med sidstorlek på 16 kB"</string>
<string name="enable_16k_pages_summary" msgid="1964363364670306912">"Starta med kärna kompatibel med sidor på 16 kB"</string>
<string name="confirm_enable_16k_pages_title" msgid="611010487387251491">"Byta från 4 kB-läge till 16 kB-läge"</string>
- <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Du använder ett sidoberoende läge med en kärna på 4 kB och byter till läget med 16 kB. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. Åtgärden startar om enheten. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återställa produktionsläget på enheten måste du byta tillbaka till 4 kB-läget och låsa starthanteraren. Enheten återställs då till standardinställningarna. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen."</string>
+ <string name="confirm_enable_16k_pages_text" msgid="6129208614283750541">"Du använder ett sidagnostiskt läge med en kärna på 4 kB och byter till läget med 16 kB. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. Åtgärden startar om enheten. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återställa produktionsläget på enheten måste du byta tillbaka till 4 kB-läget och låsa starthanteraren. Enheten återställs då till standardinställningarna. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen."</string>
<string name="confirm_enable_4k_pages_title" msgid="3210360137887034659">"Byt från 16 kB-läge till 4 kB-läge"</string>
- <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Du använder ett sidoberoende läge med en kärna på 16 kB och byter till läget med 4 KB. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. Åtgärden startar om enheten. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återställa produktionsläget på enheten måste du låsa starthanteraren. Enheten återställs då till standardinställningarna. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen."</string>
+ <string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Du använder ett sidagnostiskt läge med en kärna på 16 kB och byter till läget med 4 KB. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. Åtgärden startar om enheten. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återställa produktionsläget på enheten måste du låsa starthanteraren. Enheten återställs då till standardinställningarna. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Det gick inte att uppdatera kärnan till en kärna som är kompatibel med sidor på 16 kB."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Tillämpar ändring"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"Vill du formatera om enheten till ext4? (krävs för 16 kB-läge)"</string>
@@ -4852,13 +4876,13 @@
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Det gick inte att formatera om och rensa datapartionen till ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Starthanteraren måste vara upplåst för 16 kB-läge"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Starthanteraren måste vara upplåst på den här enheten innan du kan använda utvecklaralternativet för 16 kB. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. Alla användaruppgifter och inställningar rensas när 16 kB-läget aktiveras. När starthanteraren har låsts upp krävs två omstarter för att aktivera 16 kB-alternativet. När läget är aktiverat kan du byta fram och tillbaka mellan 4 kB och 16 kB genom att starta om. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återställa produktionsläget på enheten måste du byta tillbaka till 4 kB-läget och låsa OEM/starthanteraren. Enheten återställs då till standardinställningarna. Lås upp starthanteraren och försök igen. Du hittar anvisningar om hur du gör detta på <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4 kB-versionen av det sidoberoende läget används"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Du använder 4 kB-versionen av det sidoberoende läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du låsa starthanteraren på enheten. Tryck för att läsa mer."</string>
- <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Du använder 4 kB-versionen av det sidoberoende läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du låsa starthanteraren på enheten. Detta återställer enheten till produktionsinställningarna igen. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen. Om det inte går att starta enheten med Android eller om den inte är stabil flashar du om enheten med de senaste systemavbildningarna från <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> och väljer Rensa enhet, Lås starthanteraren och Tvångsflasha alla partitioner."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16 kB-versionen av det sidoberoende läget används"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Du använder 16 kB-versionen av det sidoberoende läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du byta tillbaka till 4 kB-läget och sedan låsa starthanteraren på enheten. Tryck för att läsa mer."</string>
- <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Du använder 16 kB-versionen av det sidoberoende läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du byta tillbaka till 4 kB-läget och sedan låsa starthanteraren på enheten. Detta återställer enheten till produktionsinställningarna igen. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen. Om det inte går att starta enheten med Android eller om den inte är stabil flashar du om enheten med de senaste systemavbildningarna från <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> och väljer Rensa enhet, Lås starthanteraren och Tvångsflasha alla partitioner."</string>
- <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 kB-versionen av det sidoberoende läget"</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4 kB-versionen av det sidagnostiska läget används"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Du använder 4 kB-versionen av det sidagnostiska läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du låsa starthanteraren på enheten. Tryck för att läsa mer."</string>
+ <string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Du använder 4 kB-versionen av det sidagnostiska läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du låsa starthanteraren på enheten. Detta återställer enheten till produktionsinställningarna igen. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen. Om det inte går att starta enheten med Android eller om den inte är stabil flashar du om enheten med de senaste systemavbildningarna från <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> och väljer Rensa enhet, Lås starthanteraren och Tvångsflasha alla partitioner."</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16 kB-versionen av det sidagnostiska läget används"</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Du använder 16 kB-versionen av det sidagnostiska läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du byta tillbaka till 4 kB-läget och sedan låsa starthanteraren på enheten. Tryck för att läsa mer."</string>
+ <string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Du använder 16 kB-versionen av det sidagnostiska läget. Det går inte att garantera mjukvarans integritet i detta läge och all data som lagras på telefonen när starthanteraren är olåst kan vara i farozonen. En del funktioner inaktiveras i dessa lägen. Det kan innebära att vissa program inte fungerar. Om du vill återgå till produktionsläget måste du byta tillbaka till 4 kB-läget och sedan låsa starthanteraren på enheten. Detta återställer enheten till produktionsinställningarna igen. När enheten startas med Android ska du inaktivera OEM-upplåsning i utvecklaralternativen. Om det inte går att starta enheten med Android eller om den inte är stabil flashar du om enheten med de senaste systemavbildningarna från <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> or use <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> och väljer Rensa enhet, Lås starthanteraren och Tvångsflasha alla partitioner."</string>
+ <string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 kB-versionen av det sidagnostiska läget"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Läs mer"</string>
<string name="bug_report_handler_title" msgid="713439959113250125">"Felrapportshanterare"</string>
<string name="bug_report_handler_picker_footer_text" msgid="4935758328366585673">"Avgör vilken app som hanterar Genväg till felrapport på enheten."</string>
diff --git a/res/values-sw/arrays.xml b/res/values-sw/arrays.xml
index 2bfad67..9b5084f 100644
--- a/res/values-sw/arrays.xml
+++ b/res/values-sw/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index e88472d..34b3e07 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Ungependa kuondoa kifaa?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Unganisha kifaa kipya"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Iwashe tena kesho kiotomatiki"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Unganisha kisaidizi cha kulia"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Unganisha kisaidizi cha kushoto"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Unganisha kisaidizi cha sikio jingine"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Unganisha kisaidizi cha kushoto"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Mipangilio ya vifaa vya kusikilizia"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Njia ya mkato, uoanifu wa kifaa cha kusaidia kusikia"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Mipangilio iliyowekwa mapema"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Mipangilio iliyowekwa mapema"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Imeshindwa kusasisha mipangilio iliyowekwa mapema"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Vifaa vya kutoa sauti"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Kuhusu vifaa vya kutoa sauti"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Ghairi"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Hapana"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Si sasa"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ninakubali"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Zaidi"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Fungua ukitumia uso wako"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Kumbuka"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Tumia alama ya kidole chako kufungua simu yako au kuidhinisha ununuzi.\n\nKumbuka: Huwezi kutumia alama ya kidole chako kufungua kifaa hiki. Kwa maelezo zaidi, wasiliana na msimamizi wa shirika lako."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Ghairi"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Hapana"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Si sasa"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ninakubali"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Ungependa kuruka alama ya kidole?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Itachukua dakika moja au mbili kuweka mipangilio ya alama ya kidole. Kama utaruka hatua hii, unaweza kuongeza alama ya kidole baadaye katika mipangilio."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Jinsi inavyofanya kazi"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Kipengele cha Kufungua kwa Alama ya Kidole huunda muundo wa kipekee wa alama ya kidole chako ili kuthibitisha kuwa ni wewe. Ili uunde muundo wa alama ya kidole wakati wa kuweka mipangilio, utanasa picha za alama ya kidole chako kutoka pembe tofauti."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Kipengele cha Kufungua kwa Alama ya Kidole huunda muundo wa kipekee wa alama ya kidole cha mtoto wako ili kuthibitisha kuwa ni yeye. Ili kuunda muundo huu wa alama ya kidole wakati wa kuweka mipangilio, atapiga picha za alama ya kidole chake kutoka pembe tofauti."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Kwa matokeo bora, tumia ulinzi wa skrini ambao umethibitishwa na Made for Google. Ukitumia aina fulani za vilinda skrini, alama yako ya kidole huenda isifanye kazi."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Kwa matokeo bora, tumia kilinda skrini ambacho kimethibitishwa na mpango wa Made for Google. Ukitumia ulinzi mwingine wa skrini, alama yako ya kidole inaweza kutofanya kazi."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Kwa matokeo bora, tumia ulinzi wa skrini ambao umethibitishwa na Made for Google. Ukitumia aina fulani za vilinda skrini, alama ya kidole ya mtoto wako huenda isifanye kazi."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Kufungua kupitia Saa"</string>
@@ -557,7 +558,7 @@
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Kufungua sehemu ya faragha kwa alama ya kidole"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Kufungua sehemu ya faragha kwa kutumia uso"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Kufungua kwa Uso au alama ya kidole katika sehemu ya faragha"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Weka mipangilio ya Kufungua kwa alama ya kidole katika sehemu ya faragha"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Kuweka mipangilio ya Kufungua sehemu ya faragha kwa alama ya kidole"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Tumia alama ya kidole chako kufungua sehemu yako ya faragha au kuthibitisha kuwa ni wewe, kama vile unapoingia katika akaunti kwenye programu au unapoidhinisha ununuzi"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Sehemu yako ya faragha inaweza kufunguliwa wakati hujakusudia, kama vile mtu mwingine akishikilia simu yako kwenye kidole chako."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Tumia alama ya kidole chako kufungua sehemu yako ya faragha au kuidhinisha ununuzi"</string>
@@ -569,7 +570,7 @@
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"Tumia uso wako kufungua sehemu yako ya faragha.\n\nKumbuka:\nUnaweza kuweka mipangilio ya uso mmoja tu kwa wakati mmoja. Ili uweke uso mwingine, futa uso uliopo kwa sasa.\n\nUkiangalia simu yako unaweza kuifungua bila kukusudia.\n\nSehemu yako ya faragha inaweza kufunguliwa na mtu mwingine akiweka kifaa chako mbele ya uso wako.\n\nSehemu yako ya faragha inaweza kufunguliwa na mtu anayefanana sana nawe, kama vile ndugu pacha."</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"Iombe uthibitishaji kila wakati unapotumia kipengele cha kufungua kwa uso"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"Mbinu za kufungua"</string>
- <string name="private_space_screen_lock_summary" msgid="394837965365561070">"Mbinu sawa ya kufunga skrini ya kifaa"</string>
+ <string name="private_space_screen_lock_summary" msgid="394837965365561070">"Sawa na njia ya kufunga skrini ya kifaa"</string>
<string name="private_space_new_lock_title" msgid="9056139964133004094">"Ungependa kuchagua mbinu mpya ya kufunga sehemu ya faragha?"</string>
<string name="private_space_new_lock_message" msgid="3117703578905489206">"Utahitaji kuweka PIN, mchoro au nenosiri la kifaa chako kwenye skrini inayofuata"</string>
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"Kufunga sehemu ya faragha kiotomatiki"</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Kila wakati kifaa kinapojifunga"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Dakika 5 baada ya skrini kujizima"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Baada tu ya kifaa kuzima kisha kiwake"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Iwapo unatumia njia tofauti ya kufunga katika sehemu yako ya faragha, huenda ukahitaji kuthibitisha kuwa ni wewe ili kufungua programu katika sehemu yako ya faragha."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ficha sehemu ya faragha"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ficha sehemu ya faragha iwapo imefungwa"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Ili watu wengine wasijue kuwa una sehemu ya faragha kwenye kifaa chako, unaweza kuificha kwenye orodha ya programu"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Weka mipangilio"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Sehemu ya faragha"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Ficha au ufunge programu za faragha katika sehemu tofauti. Tumia Akaunti maalum ya Google ili upate usalama zaidi."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Weka mipangilio ya sehemu yako ya faragha"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Chagua Akaunti ya Google ya sehemu yako"</b>\n"Kutumia akaunti maalum husaidia kukomesha faili, picha na barua pepe zilizosawazishwa kuonekana nje ya sehemu yako"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Utaratibu wake"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Fungua Akaunti ya Google ya sehemu yako ya faragha"</b>\n"Ukitumia akaunti maalum, inasaidia kuzuia faili, picha na barua pepe zilizosawazishwa zisionekane nje ya sehemu yako ya faragha"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Weka mipangilio ya kufunga"</b>\n"Funga sehemu yako ili ukomeshe watu wengine wasiifungue"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Weka programu"</b>\n"Sehemu yako ya faragha ina Duka lake binafsi la Google Play kwa hivyo unaweza kuweka programu kwenye vifaa kwa urahisi."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Programu zilizo kwenye sehemu yako ya faragha hazitaonekana kwenye kidhibiti cha ruhusa, dashibodi ya faragha na mipangilio mingine wakati umefunga sehemu yako ya faragha.\n\nSehemu yako ya faragha haiwezi kurejeshwa kwenye kifaa kipya. Utahitaji kuweka mipangilio ya sehemu nyingine ya faragha kama ungependa kuitumia kwenye kifaa kingine.\n\nMtu yeyote anayeunganisha kifaa chako kwenye kompyuta au anayeweka programu hasidi kwenye kifaa chako huenda akafikia sehemu yako ya faragha."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Weka programu"</b>\n"Weka programu ambazo ungependa ziwe za faragha katika sehemu yako ya faragha"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Kumbuka"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Programu huacha kufanya kazi ukifunga sehemu yako ya faragha"</b>\n"Ukifunga sehemu yako ya faragha, programu zilizo katika sehemu hiyo zitaacha kufanya kazi na hazitakutumia arifa"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Pata maelezo kuhusu sehemu ya faragha"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Hatua hii itachukua dakika chache"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Inaweka mipangilio ya sehemu ya faragha…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Unaweza kuweka mbinu mpya ya kufunga sehemu ya faragha au utumie mbinu ile ile unayotumia kufungua kifaa chako"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Tumia mbinu ya kufunga skrini"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Chagua mbinu mpya ya kufunga"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Subiri kidogo…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Subiri kidogo…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Tayari!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Ili upate sehemu yako ya faragha, nenda kwenye programu zako zilizoorodheshwa kisha uende chini"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Nimemaliza"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Weka PIN ya sehemu yako ya faragha"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Weka nenosiri la sehemu yako ya faragha"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Weka mchoro wa sehemu yako ya faragha"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Fungua Akaunti ya Google ili usaidie kudumisha faragha ya data yako"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Kwenye skrini inayofuata, unaweza kuingia katika akaunti ambako utatumia sehemu yako ya faragha"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Fungua akaunti maalum ili usaidie kuzuia data isionekane nje ya sehemu ya faragha, kama vile:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Picha, faili, barua pepe, anwani, matukio ya kalenda na data nyingine iliyosawazishwa"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Mapendekezo na historia ya upakuaji wa programu"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Historia ya kuvinjari, alamisho na manenosiri uliyohifadhi"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Maudhui yanayopendekezwa yanayohusu shughuli zako kwenye programu za sehemu ya faragha"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Nimeelewa"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Funga"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ficha"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Unaweza kuongeza hadi alama za vidole <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Cheti cha mfumo"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Ubandikaji wa vyeti"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Maelezo ya mtandao"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Mtandao huu unatumia itifaki ya usalama ya zamani, inayojulikana kama WEP, ambayo si salama sana"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Mfano wa kijimtandao"</string>
<string name="server_name_title" msgid="7257095185810299066">"Jina la seva"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Aina"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Anwani ya MAC ya Wi-Fi ya kifaa"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Anwani ya Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Nambari ya Ufuatiliaji"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Muda wa kutumika tangu ilipowashwa"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Muda wa shughuli"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Tarehe ilipoundwa"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Tarehe ulipotumia mara ya kwanza"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Mara ambazo betri imejaa"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Mguso wa chini kulia"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Gusa kona ya upande wa chini kulia wa padi ya kugusa kwa chaguo zaidi"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Kasi ya kiashiria"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Muundo wa kielekezi"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Badilisha kielekezi kiwe cheusi"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Badilisha kielekezi kiwe cha kijani"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Badilisha kielekezi kiwe cha njano"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Badilisha kielekezi kiwe cha waridi"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Badilisha kielekezi kiwe cha buluu"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Jifunze ishara za padi ya kugusa"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"padi ya kusogeza, padi ya kusogeza, kipanya, kiteuzi, nenda, telezesha kidole, bofya kulia, bofya, kishale"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"bofya kulia, gusa"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Hamna}=1{Pana ratiba moja}other{Pana ratiba #}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Usinisumbue"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Hali za Kipaumbele"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Pata arifa za watu na programu muhimu pekee"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Punguza usumbufu"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Washa kipengele cha Usinisumbue"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Weka kalenda"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Tumia kalenda yako"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Ratiba"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Ratibu"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Zima simu katika vipindi fulani"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Weka sheria za Usinisumbue"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Programu hii haitumii mipangilio iliyoboreshwa"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Mipangilio zaidi"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Mipangilio zaidi inapatikana ndani ya programu hii"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Tumia Cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Ukipata arifa nyingi ndani ya muda mfupi, kifaa chako kitapunguza matukio ya ukatizaji wa sauti na madirisha ibukizi kwenye skrini. Simu, kengele na mazungumzo mengine ya kipaumbele yatatuma arifa kama kawaida na arifa zote zilizotumwa zinaweza kupatikana kwa urahisi katika Shade."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Tumia kwenye wasifu wa kazini"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Inatumika kwa programu zenye wasifu wa kazini"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Huduma za kisaidizi cha Uhalisia Pepe"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Programu zilizochaguliwa"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Hamna"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Zote"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Ruhusu programu zibatilishe hali"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Programu zinazoweza kukatiza"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Chagua programu zaidi"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Badilisha utumie kengele pekee kwa saa moja hadi {time}}other{Badilisha utumie kengele pekee kwa saa # hadi {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Badilisha utumie kengele pekee hadi <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Badilisha utumie hali ya katiza wakati wote"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Onyo"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Funga"</string>
<string name="device_feedback" msgid="5351614458411688608">"Tuma maoni kuhusu kifaa hiki"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Kushoto"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Kulia"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Kipochi"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Betri"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Kidirisha cha Mipangilio"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Lazimisha hali ya eneo-kazi"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Lazimisha hali ya jaribio la eneo-kazi kwenye maonyesho yasiyo ya msingi"</string>
diff --git a/res/values-ta/arrays.xml b/res/values-ta/arrays.xml
index 7d00713..7f3b62c 100644
--- a/res/values-ta/arrays.xml
+++ b/res/values-ta/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index 6a75a39..5a01a88 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"சாதனத்தைத் துண்டிக்கவா?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"புதிய சாதனத்தை இணை"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"புளூடூத்"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"நாளைக்குத் தானாகவே மீண்டும் இயக்கு"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"வலதுபுற கருவியை இணை"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"இடதுபுற கருவியை இணை"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"மற்றொரு கருவியை இணைத்தல்"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"இடதுபுற கருவியை இணை"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"செவித்துணைச் சாதன அமைப்புகள்"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ஷார்ட்கட், செவித்துணைக் கருவியுடனான இணக்கத்தன்மை"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"முன்னமைவுகள்"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"முன்னமைவு"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"முன்னமைவைப் புதுப்பிக்க முடியவில்லை"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ஆடியோ வெளியீடு"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ஆடியோ அவுட்புட் - அறிமுகம்"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ரத்துசெய்"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"வேண்டாம்"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"இப்போது வேண்டாம்"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ஏற்கிறேன்"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"மேலும்"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"முகத்தைக் காட்டி அன்லாக் செய்யலாம்"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"கவனத்திற்கு"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"மொபைலை அன்லாக் செய்ய அல்லது வாங்குவதை அங்கீகரிக்க, உங்கள் கைரேகையைப் பயன்படுத்தவும்.\n\n குறிப்பு: இந்தச் சாதனத்தை அன்லாக் செய்ய, கைரேகையைப் பயன்படுத்த முடியாது. மேலும் தகவலுக்கு, உங்கள் நிறுவனத்தின் நிர்வாகியைத் தொடர்புகொள்ளவும்."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ரத்துசெய்"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"வேண்டாம்"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"இப்போது வேண்டாம்"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ஏற்கிறேன்"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"கைரேகையை அமைக்க வேண்டாமா?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"கைரேகையை அமைப்பதற்கு ஒன்று அல்லது இரண்டு நிமிடங்கள் மட்டுமே ஆகும். தவிர்த்தால், பிறகு அமைப்புகளுக்குச் சென்று கைரேகையைச் சேர்க்கலாம்."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"இது எவ்வாறு வேலை செய்கிறது?"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"நீங்கள்தான் என்பதை உறுதிப்படுத்த, கைரேகை அன்லாக் அம்சமானது உங்கள் கைரேகையின் தனித்துவமான பதிவை உருவாக்கிடும். அமைவின்போது இந்தக் கைரேகைப் பதிவை உருவாக்க, வெவ்வேறு நிலைகளில் உங்கள் கைரேகையைப் படமெடுப்பீர்கள்."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"உங்கள் பிள்ளைதான் என்பதை உறுதிப்படுத்த, கைரேகை அன்லாக் அம்சமானது அவரது கைரேகையின் தனித்துவமான பதிவை உருவாக்கிடும். அமைவின்போது இந்தக் கைரேகைப் பதிவை உருவாக்க, அவர் தனது கைரேகையை வெவ்வேறு நிலைகளில் படமெடுப்பார்."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"சிறந்த முடிவுகளுக்கு, Made for Google சான்றளிக்கப்பட்ட ஸ்கிரீன் கார்டைப் பயன்படுத்துங்கள். உங்கள் கைரேகை மற்ற ஸ்கிரீன் கார்டுகளில் வேலை செய்யாமல் போகக்கூடும்."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"சிறந்த முடிவுகளுக்கு, Made for Google சான்றளிக்கப்பட்ட ஸ்கிரீன் கார்டைப் பயன்படுத்துங்கள். உங்கள் கைரேகை மற்ற ஸ்கிரீன் கார்டுகளுடன் பொருந்தாமல் போகக்கூடும்."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"சிறந்த முடிவுகளுக்கு, Made for Google சான்றளிக்கப்பட்ட ஸ்கிரீன் கார்டைப் பயன்படுத்துங்கள். உங்கள் பிள்ளையின் கைரேகை மற்ற ஸ்கிரீன் கார்டுகளுடன் பொருந்தாமல் போகக்கூடும்."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"வாட்ச் அன்லாக்"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"சாதனம் பூட்டப்படும் ஒவ்வொரு முறையும்"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"திரை அணைவு நேரத்திலிருந்து 5 நிமிடம்"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"சாதனம் மீண்டும் தொடங்கிய பிறகு மட்டும்"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ரகசிய இடத்தை மறைத்தல்"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ரகசிய இடம் பூட்டப்பட்டிருக்கும்போது அதை மறைத்தல்"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"சாதனத்தில் ரகசிய இடம் இருப்பது பிறருக்குத் தெரியக்கூடாது எனில், ஆப்ஸ் பட்டியலில் இருந்து நீங்கள் அதை மறைக்கலாம்"</string>
@@ -592,7 +591,7 @@
<string name="private_space_hide_dialog_message" msgid="618693520130744836">"ரகசிய இடத்தை அணுக, உங்கள் ஆப்ஸ் பட்டியலிலுள்ள தேடல் பட்டியில் ரகசிய இடம் என டைப் செய்க."</string>
<string name="private_space_hide_dialog_button" msgid="4157191429310035457">"சரி"</string>
<string name="private_space_category_system" msgid="1286843321867285700">"சிஸ்டம்"</string>
- <string name="private_space_delete_title" msgid="636873505724100006">"ரகசிய இடத்தை நீக்குதல்"</string>
+ <string name="private_space_delete_title" msgid="636873505724100006">"ரகசிய இடத்தை நீக்கு"</string>
<string name="private_space_delete_header" msgid="4594429153176776184">"ரகசிய இடத்தை நீக்க வேண்டுமா?"</string>
<string name="private_space_delete_summary" msgid="7507302208399543921">"உங்கள் சாதனத்திலிருந்து உங்கள் ரகசிய இடம் நிரந்தரமாக நீக்கப்படும். \n\nஅத்துடன், உங்கள் ரகசிய இடத்திலுள்ள அனைத்து ஆப்ஸும் அவற்றின் தரவும் உங்கள் மொபைலின் "<b>"அகச் சேமிப்பகத்திலிருந்து"</b>" நிரந்தரமாக நீக்கப்படும்."</string>
<string name="private_space_accounts" msgid="1078277762792056395">"உங்கள் ரகசிய இடத்தில் இருந்து பின்வரும் கணக்குகள் அகற்றப்படும்:"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"அமை"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"ரகசிய இடம்"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"தனிப்பட்ட ஆப்ஸைத் தனி இடத்தில் மறைக்கலாம்/பூட்டலாம். கூடுதல் பாதுகாப்பிற்கு, அதற்கெனப் பிரத்தியேக Google கணக்கைப் பயன்படுத்தலாம்."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"உங்களின் ரகசிய இடத்தை அமையுங்கள்"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"உங்களின் ரகசிய இடத்திற்கு Google கணக்கைத் தேர்வுசெய்தல்"</b>\n"இதற்கெனப் பிரத்தியேகக் கணக்கைப் பயன்படுத்துவது ஒத்திசைக்கப்பட்ட ஃபைல்கள், படங்கள், மின்னஞ்சல்கள் ஆகியவை உங்களின் ரகசிய இடத்திற்கு வெளியே காட்டப்படுவதை நிறுத்த உதவும்"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"இது எப்படிச் செயல்படுகிறது?"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"உங்கள் ரகசிய இடத்திற்கான Google கணக்கை உருவாக்குதல்"</b>\n"பிரத்தியேகக் கணக்கை நீங்கள் பயன்படுத்தினால் ஒத்திசைக்கப்பட்ட ஃபைல்கள், படங்கள், மின்னஞ்சல்கள் ஆகியவை உங்கள் ரகசிய இடத்திற்கு வெளியே காட்டப்படாது"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"பூட்டை அமைத்தல்"</b>\n"பிற நபர்கள் உங்களின் ரகசிய இடத்தைத் திறக்காமல் இருக்க அதைப் பூட்டலாம்"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ஆப்ஸை நிறுவுதல்"</b>\n"உங்களின் ரகசிய இடம் அதற்கெனத் தனி Play Storeரைக் கொண்டுள்ளதால் ஆப்ஸை நீங்கள் எளிதாக நிறுவலாம்."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"உங்கள் ரகசிய இடம் பூட்டப்பட்டிருக்கும்போது அதிலுள்ள ஆப்ஸ் எதுவும் அனுமதி நிர்வாகம், தனியுரிமை டாஷ்போர்டு மற்றும் பிற அமைப்புகளில் காட்டப்படாது.\n\nஉங்கள் ரகசிய இடத்தைப் புதிய சாதனத்தில் மீட்டெடுக்க முடியாது. வேறொரு சாதனத்தில் அதைப் பயன்படுத்த விரும்பினால், நீங்கள் வேறொரு ரகசிய இடத்தை அமைக்க வேண்டும்.\n\nஉங்கள் சாதனத்தைக் கம்ப்யூட்டருடன் இணைக்கின்ற அல்லது தீங்கிழைக்கும் ஆப்ஸை உங்கள் சாதனத்தில் நிறுவுகின்ற யாராலும் உங்கள் ரகசிய இடத்தை அணுக முடியும்."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ஆப்ஸை நிறுவுதல்"</b>\n"உங்கள் ரகசிய இடத்தில் தனிப்பட்டதாக வைத்திருக்க விரும்பும் ஆப்ஸை நிறுவுங்கள்"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"நினைவில்கொள்ள வேண்டியவை"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"உங்கள் ரகசிய இடத்தைப் பூட்டியதும் ஆப்ஸ் செயல்படாது"</b>\n"உங்கள் இடத்தைப் பூட்டினால் அதிலுள்ள ஆப்ஸின் செயல்பாடு நிறுத்தப்படுவதோடு அவற்றிலிருந்து அறிவிப்புகளையும் பெறமாட்டீர்கள்"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ரகசிய இடம் குறித்து மேலும் அறிக"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"இதற்குச் சிறிது நேரம் ஆகும்"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"தனிப்பட்ட இடத்தை அமைக்கிறது…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"ரகசிய இடத்திற்கான புதிய பூட்டை அமைக்கலாம் அல்லது உங்கள் சாதனத்தை அன்லாக் செய்யப் பயன்படுத்தும் அதே பூட்டைப் பயன்படுத்தலாம்"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"திரைப் பூட்டைப் பயன்படுத்து"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"புதிய பூட்டைத் தேர்ந்தெடு"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"சற்று காத்திருக்கவும்…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"சற்று காத்திருங்கள்…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"அமைத்துவிட்டீர்கள்!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"உங்கள் ரகசிய இடத்தை அணுக, ஆப்ஸ் பட்டியலுக்குச் சென்று கீழே நகர்த்துங்கள்"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"முடிந்தது"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"தனிப்பட்ட இடத்திற்கான பின்னை அமைத்தல்"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"தனிப்பட்ட இடத்தின் கடவுச்சொல்லை அமைத்தல்"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"தனிப்பட்ட இடத்திற்கான பேட்டர்னை அமைத்தல்"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"உங்கள் தரவை தனிப்பட்டதாக வைத்திருக்க உதவ ஒரு Google கணக்கை உருவாக்குங்கள்"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"அடுத்த திரையில் உங்கள் ரகசிய இடத்தைப் பயன்படுத்த, கணக்கில் உள்நுழையலாம்"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"ரகசிய இடத்திற்கு வெளியே தரவு தோன்றுவதைத் தடுக்க உதவ ஒரு பிரத்தியேகக் கணக்கை உருவாக்குங்கள்:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"ஒத்திசைக்கப்பட்ட படங்கள், ஃபைல், மின்னஞ்சல், தொடர்பு, கேலெண்டர் நிகழ்வு மற்றும் பிற தரவு"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"இதுவரை பதிவிறக்கிய ஆப்ஸும் பரிந்துரைகளும்"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"இதுவரை இணையத்தில் பார்த்தவை, புக்மார்க் & சேமித்த கடவுச்சொல்"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ரகசிய இடம் ஆப்ஸில் உங்கள் செயல்பாடு தொடர்பாகப் பரிந்துரைக்கப்படும் உள்ளடக்கம்"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"சரி"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"லாக் செய்தல்"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"மறைத்தல்"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"<xliff:g id="COUNT">%d</xliff:g> கைரேகைகள் வரை சேர்க்கலாம்"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"சிஸ்டம் சான்றிதழ்"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"சான்றிதழைப் பின் செய்யலாம்"</string>
<string name="wifi_details_title" msgid="222735438574597493">"நெட்வொர்க் விவரங்கள்"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"WEP எனும் பழைய பாதுகாப்பு நெறிமுறையை இந்த நெட்வொர்க் பயன்படுத்துகிறது, அது குறைவான பாதுகாப்பை உடையது"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"சப்நெட் மாஸ்க்"</string>
<string name="server_name_title" msgid="7257095185810299066">"சேவையகத்தின் பெயர்"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"வகை"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"சாதன வைஃபையின் MAC முகவரி"</string>
<string name="status_bt_address" msgid="6919660304578476547">"புளூடூத் முகவரி"</string>
<string name="status_serial_number" msgid="9060064164331466789">"வரிசை எண்"</string>
- <string name="status_up_time" msgid="1274778533719495438">"இயங்கிய நேரம்"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"இயக்க நேரம்"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"தயாரிக்கப்பட்ட தேதி"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"முதலில் உபயோகித்தத் தேதி"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"சுழற்சியின் எண்ணிக்கை"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"கீழ் இடதுபுறத்தைத் தட்டுதல்"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"மேலும் விருப்பங்களுக்கு டச்பேடின் கீழ்வலது மூலையில் தட்டுக"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"பாயிண்ட்டர் வேகம்"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"பாயிண்ட்டர் ஃபில் ஸ்டைல்"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"பாயிண்ட்டர் ஃபில் ஸ்டைலைக் கருப்பாக மாற்றலாம்"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"பாயிண்ட்டர் ஃபில் ஸ்டைலைப் பச்சையாக மாற்றலாம்"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"பாயிண்ட்டர் ஃபில் ஸ்டைலை மஞ்சளாக மாற்றலாம்"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"பாயிண்ட்டர் ஃபில் ஸ்டைலை இளஞ்சிவப்பாக மாற்றலாம்"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"பாயிண்ட்டர் ஃபில் ஸ்டைலை நீலமாக மாற்றலாம்"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"டச்பேட் சைகைகளை அறிந்துகொள்ளுங்கள்"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"டிராக்பேட், டிராக் பேட், மவுஸ், கர்சர், ஸ்க்ரோல், ஸ்வைப், வலது கிளிக், கிளிக், பாயிண்ட்டர்"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"வலது கிளிக், தட்டு"</string>
@@ -2199,7 +2202,7 @@
<string name="accessibility_toggle_high_text_contrast_preference_title" msgid="1830189632458752698">"மிகை ஒளிமாற்ற எழுத்து"</string>
<string name="accessibility_toggle_high_text_contrast_preference_summary" msgid="5286411556836346180">"வார்த்தையின் வண்ணத்தைக் கருப்பு/வெள்ளைக்கு மாற்றும். பின்னணியில் ஒளி மாறுபாட்டை அதிகரிக்கும்."</string>
<string name="accessibility_toggle_maximize_text_contrast_preference_title" msgid="8737272017343509753">"வார்த்தை நிற மாறுபாட்டை அதிகரித்தல்"</string>
- <string name="accessibility_toggle_maximize_text_contrast_preference_summary" msgid="8200408691846666900">"ஒளி மாறுபாட்டை அதிகரிக்க, உரையைச் சுற்றி கருப்பு அல்லது வெள்ளை பின்னணியைச் சேர்க்கும்"</string>
+ <string name="accessibility_toggle_maximize_text_contrast_preference_summary" msgid="8200408691846666900">"நிற மாறுபாட்டை அதிகரிக்க, உரையைச் சுற்றி கருப்பு அல்லது வெள்ளை பின்னணியைச் சேர்க்கும்"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_title" msgid="4987009529235165664">"திரை உருப்பெருக்கத்தைத் தானாகப் புதுப்பி"</string>
<string name="accessibility_toggle_screen_magnification_auto_update_preference_summary" msgid="9034532513972547720">"ஆப்ஸ் மாற்றங்களில் திரை உருப்பெருக்கத்தைப் புதுப்பிக்கவும்"</string>
<string name="accessibility_power_button_ends_call_prerefence_title" msgid="8187306131979612144">"பவர் பட்டன் மூலம் அழைப்பை நிறுத்து"</string>
@@ -2699,7 +2702,7 @@
<string name="adaptive_connectivity_main_switch_title" msgid="261045483524512420">"Adaptive Connectivity சேவையைப் பயன்படுத்துதல்"</string>
<string name="cellular_security_title" msgid="5562899485544677941">"மொபைல் நெட்வொர்க் பாதுகாப்பு"</string>
<string name="cellular_security_summary" msgid="1893770670709928113">"நெட்வொர்க் வகை, என்க்ரிப்ஷன், அறிவிப்புக் கட்டுப்பாடுகள்"</string>
- <string name="cellular_security_top_intro" msgid="6749166804080092892">"இந்த அமைப்புகள் உங்கள் அழைப்புகள், மெசேஜ்கள், தரவு ஆகியவற்றைக் காலாவதியான அல்லது என்க்ரிப்ட் செய்யப்படாத நெட்வொர்க்குகளில் இருந்து பாதுகாக்க உதவும்"</string>
+ <string name="cellular_security_top_intro" msgid="6749166804080092892">"இந்த அமைப்புகள் உங்கள் அழைப்புகள், மெசேஜ்கள், தரவு ஆகியவற்றைக் காலாவதியான அல்லது என்க்ரிப்ட் செய்யப்படாத நெட்வொர்க்குகளில் இருந்து பாதுகாக்க உதவும். அத்தகைய நெட்வொர்க்குகளால் உங்கள் தரவு திருடப்படலாம் அல்லது கண்காணிக்கப்படலாம்."</string>
<string name="cellular_security_settings_title" msgid="7779141923670352595">"மொபைல் நெட்வொர்க் பாதுகாப்பு"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"அறிவிப்புகள்"</string>
<string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"நெட்வொர்க் அறிவிப்புகள்"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{எதுவுமில்லை}=1{1 திட்டமிடல் அமைக்கப்பட்டுள்ளது}other{# திட்டமிடல்கள் அமைக்கப்பட்டுள்ளன}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"தொந்தரவு செய்யாதே"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"முன்னுரிமைப் பயன்முறைகள்"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"முக்கியமான நபர்கள் மற்றும் ஆப்ஸிலிருந்து மட்டும் அறிவிப்புகளைப் பெறுங்கள்"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"குறுக்கீடுகளைக் குறைத்தல்"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"தொந்தரவு செய்ய வேண்டாம் என்பதை ஆன் செய்யும்"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"மாற்று"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"திட்டமிடல்"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"திட்ட அட்டவணை"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"தானாகவே இயக்குதல்"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"கேலெண்டரைச் சேருங்கள்"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"உங்கள் கேலெண்டரைப் பயன்படுத்துங்கள்"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"திட்டமிடுதல்"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"நேர அட்டவணை"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"குறிப்பிட்ட நேரத்தில் ஒலி முடக்கு"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"இந்த ஆப்ஸ் மேம்படுத்தப்பட்ட அமைப்புகளை ஆதரிக்காது"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"கூடுதல் அமைப்புகள்"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"இந்த ஆப்ஸில் கூடுதல் அமைப்புகள் உள்ளன"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"குறைந்த ஒலியளவில் அறிவிப்புகள்"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"\'குறைந்த ஒலியளவில் அறிவிப்புகளைப்\' பயன்படுத்துதல்"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"நீங்கள் குறைந்த கால இடைவெளியில் பல அறிவிப்புகளைப் பெறும்போது, ஒலி இடையூறுகளையும் திரையில் தோன்றும் பாப்-அப்களையும் உங்கள் சாதனம் குறைக்கும். எனினும் அழைப்புகள், அலாரங்கள் மற்றும் முக்கியமான உரையாடல்களுக்கு வழக்கம்போல் அறிவிப்புகளைப் பெறுவீர்கள். பெறப்பட்ட அனைத்து அறிவிப்புகளையும் \'அறிவிப்பு விவரம்\' பேனலில் எளிதாகக் கண்டறியலாம்."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"பணிக் கணக்குகளுக்குப் பயன்படுத்துதல்"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"பணிக் கணக்கு ஆப்ஸுக்குப் பயன்படுத்தும்"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR உதவிச் சேவைகள்"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"தேர்ந்தெடுக்கப்பட்ட ஆப்ஸ்"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"எதுவுமில்லை"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"அனைத்தும்"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ஆப்ஸை மீறிச் செயல்பட அனுமதிக்கின்றன"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"குறுக்கிட முடிகின்ற ஆப்ஸ்"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"கூடுதல் ஆப்ஸைத் தேர்ந்தெடுங்கள்"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} வரை ஒரு மணிநேரத்திற்கு மட்டும் அலாரங்கள் என மாற்றும்}other{{time} வரை # மணிநேரத்திற்கு மட்டும் அலாரங்கள் என மாற்றும்}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> வரை அலாரங்கள் மட்டும் என மாற்று"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"எப்போதும் குறுக்கிடு என மாற்று"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"எச்சரிக்கும்"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"மூடுக"</string>
<string name="device_feedback" msgid="5351614458411688608">"சாதனம் பற்றி கருத்தை அனுப்புக"</string>
@@ -4161,7 +4179,7 @@
<string name="data_saver_off" msgid="5891210864117269045">"ஆஃப்"</string>
<string name="data_saver_switch_title" msgid="7111538580123722959">"டேட்டா சேமிப்பானைப் பயன்படுத்து"</string>
<string name="unrestricted_app_title" msgid="8531936851059106374">"கட்டுப்பாடற்ற மொபைல் டேட்டா பயன்பாடு"</string>
- <string name="unrestricted_app_summary" msgid="8320813971858627624">"டேட்டா சேமிப்பான் இயக்கப்பட்டிருக்கும்போது கட்டுப்பாடற்ற மொபைல் டேட்டா அணுகலை அனுமதித்தல்"</string>
+ <string name="unrestricted_app_summary" msgid="8320813971858627624">"டேட்டா சேமிப்பான் இயக்கப்பட்டிருக்கும்போதும் கட்டுப்பாடற்ற மொபைல் டேட்டா அணுகலை அனுமதிக்கும்"</string>
<string name="home_app" msgid="6056850504746902747">"முகப்பு"</string>
<string name="suggestion_additional_fingerprints" msgid="4726777300101156208">"மற்றொரு கைரேகையைச் சேர்க்கவும்"</string>
<string name="suggestion_additional_fingerprints_summary" msgid="2825364645039666674">"வேறு விரலைப் பயன்படுத்தி அன்லாக் செய்யவும்"</string>
@@ -4468,7 +4486,7 @@
<string name="credman_confirmation_change_provider_positive_button" msgid="7732302992885116967">"மாற்று"</string>
<string name="credman_limit_error_msg_title" msgid="1525814645803612135">"5 சேவைகளை மட்டுமே இயக்கி வைத்திருக்கலாம்"</string>
<string name="credman_limit_error_msg" msgid="2521803280130310063">"மற்றொரு சேவையைச் சேர்க்க, குறைந்தது ஒரு சேவையையாவது முடக்கவும்"</string>
- <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"உள்நுழைவதற்கும் தன்னிரப்பிப் பரிந்துரைகளுக்கும் தரவைச் சேமிக்க, உங்களுக்கு விருப்பமான சேவையைத் தேர்ந்தெடுக்கவும். அவை பரிந்துரைகளையும் வழங்க விரும்பினால் கூடுதல் சேவைகளை இயக்கவும்."</string>
+ <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"உள்நுழைவதற்கும் தானாக நிரப்புவதற்கான பரிந்துரைகளுக்கும் தரவைச் சேமிக்க, உங்களுக்கு விருப்பமான சேவையைத் தேர்ந்தெடுக்கவும். அவை பரிந்துரைகளையும் வழங்க நீங்கள் விரும்பினால் கூடுதல் சேவைகளை இயக்கவும்."</string>
<string name="credman_enable_confirmation_message" msgid="8407841892310870169">"எவற்றைத் தானாக நிரப்பலாம் என்பதைத் தீர்மானிக்க உங்கள் திரையில் உள்ளவற்றை %1$s பயன்படுத்தும்."</string>
<string name="credman_error_message_title" msgid="4099557206946333568">"கடவுச்சொற்கள், கடவுச்சாவிகள் மற்றும் தரவுச் சேவைகளுக்கான வரம்பு"</string>
<string name="credman_error_message" msgid="8334797097200415449">"ஒரே நேரத்தில் 5 கடவுச்சொற்கள், கடவுச்சாவிகள் மற்றும் தரவுச் சேவைகள் வரை செயலில் வைத்திருக்கலாம். மேலும் ஒன்றைச் சேர்க்க ஒரு சேவையை முடக்கவும்."</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"இடது"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"வலது"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"சார்ஜ் செய்யும் பெட்டி"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"பேட்டரி"</string>
<string name="settings_panel_title" msgid="346363079938069215">"அமைப்புகளுக்கான பேனல்"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"கட்டாய டெஸ்க்டாப் பயன்முறை"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"இரண்டாம்நிலை திரைகளில் \'கட்டாயப் பரிசோதனை டெஸ்க்டாப்\' பயன்முறை"</string>
diff --git a/res/values-te/arrays.xml b/res/values-te/arrays.xml
index 81b0df0..9af40e9 100644
--- a/res/values-te/arrays.xml
+++ b/res/values-te/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index a94bb73..65feefa 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"పరికరం డిస్కనెక్ట్ చేయాలా?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"కొత్త పరికరాన్ని పెయిర్ చేయండి"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"బ్లూటూత్"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"రేపు మళ్లీ ఆటోమేటిక్గా ఆన్ చేస్తుంది"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"కుడి చెవి పెయిర్"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"ఎడమ చెవి పెయిర్"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"మీ మరో చెవిని పెయిర్ చేయి"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"ఎడమ చెవి పెయిర్ చేయి"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"వినికిడి పరికర సెట్టింగ్లు"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"షార్ట్కట్, వినికిడి పరికరంతో అనుకూలత"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"ప్రీసెట్లు"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ప్రీసెట్"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"ప్రీసెట్ను అప్డేట్ చేయడం సాధ్యపడలేదు"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"ఆడియో అవుట్పుట్"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"ఆడియో అవుట్పుట్ గురించి"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"రద్దు చేయండి"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"వద్దు, థ్యాంక్స్"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ఇప్పుడు కాదు"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"నేను అంగీకరిస్తున్నాను"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"మరింత"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"మీ ముఖంతో అన్లాక్ చేయండి"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"గుర్తుంచుకోండి"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"మీ ఫోన్ని అన్లాక్ చేయడం లేదా కొనుగోళ్లను ఆమోదించడం కోసం మీ వేలిముద్రను ఉపయోగించండి.\n\nగమనించండి: మీరు మీ వేలిముద్రను ఉపయోగించి ఈ డివైజ్ను అన్లాక్ చేయలేరు. మరింత సమాచారం కావాలంటే మీ నిర్వాహకులను సంప్రదించండి."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"రద్దు చేయండి"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"వద్దు, ధన్యవాదాలు"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ఇప్పుడు కాదు"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"నేను అంగీకరిస్తున్నాను"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"వేలిముద్రను స్కిప్ చేయాలా?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"కేవలం ఒకటి రెండు నిమిషాల్లో, వేలిముద్రను సెటప్ చేయవచ్చు. మీరు ఇప్పుడు స్కిప్ చేస్తే, తర్వాత సెట్టింగ్స్లో వేలిముద్రను జోడించవచ్చు."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"పరికరం లాక్ అయిన ప్రతిసారీ"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"స్క్రీన్ టైమ్అవుట్ అయిన 5నిమిషాల తర్వాత"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"పరికరం రీస్టార్ట్ అయిన తర్వాత మాత్రమే"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ప్రైవేట్ స్పేస్ను దాచండి"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ప్రైవేట్ స్పేస్ లాక్ చేసి ఉన్నప్పుడు దాచండి"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"మీ పరికరంలో మీకు ప్రైవేట్ స్పేస్ ఉందని ఇతరులకు తెలియకుండా ఉండడానికి, ఆ స్పేస్ను మీ యాప్ల లిస్ట్ నుండి దాచవచ్చు"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"సెటప్ చేయండి"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"ప్రైవేట్ స్పేస్"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ప్రైవేట్ యాప్లను ప్రత్యేక స్పేస్లో దాచండి లేదా లాక్ చేయండి. అదనపు సెక్యూరిటీ కోసం ప్రత్యేక Google ఖాతాను ఉపయోగించండి."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"మీ ప్రైవేట్ స్పేస్ను సెటప్ చేయండి"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"మీ స్టోరేజీ కోసం ఒక Google ఖాతాను ఎంచుకోండి"</b>\n"నిర్దిష్టంగా కేటాయించిన ఖాతాను ఉపయోగించడం వల్ల సింక్ అయిన ఫైల్స్, ఫోటోలు, ఈమెయిల్స్ మీ స్టోరేజీని దాటి బయటకు వెళ్లకుండా ఉంటాయి."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"ఇది ఎలా పని చేస్తుంది"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"మీ స్పేస్ కోసం ఒక Google ఖాతాను క్రియేట్ చేయండి"</b>\n"మీరు ఒక ప్రత్యేకమైన ఖాతాను ఉపయోగిస్తే, సింక్ అయిన ఫైళ్లు, ఫోటోలు, ఈమెయిళ్లు మీ స్పేస్ బయట కనిపించకుండా అది సహాయపడుతుంది"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"లాక్ను సెట్ చేయండి"</b>\n"మీ స్పేస్ను ఇతర వ్యక్తులు తెరవకుండా ఆపడానికి దాన్ని లాక్ చేయండి"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"యాప్లను ఇన్స్టాల్ చేయండి"</b>\n"మీ ప్రైవేట్ స్పేస్కు దాని స్వంత Play Store ఉంది కాబట్టి మీరు యాప్లను సులభంగా ఇన్స్టాల్ చేసుకోవచ్చు."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"మీ ప్రైవేట్ స్పేస్ లాక్ అయి ఉన్నప్పుడు, అందులో ఉన్న యాప్లు అనుమతి మేనేజర్లో, గోప్యతా డ్యాష్బోర్డ్లో, ఇతర సెట్టింగ్లలో కనిపించవు.\n\nమీ ప్రైవేట్ స్పేస్ను కొత్త పరికరానికి రీస్టోర్ చేయడం సాధ్యం కాదు. మీరు దానిని మరొక పరికరంలో ఉపయోగించాలంటే, మరొక ప్రైవేట్ స్పేస్ను సెటప్ చేయవలసి ఉంటుంది.\n\nమీ పరికరాన్ని కంప్యూటర్కు కనెక్ట్ చేసే లేదా మీ పరికరంలో హానికరమైన యాప్లను ఇన్స్టాల్ చేసే ఎవరైనా మీ ప్రైవేట్ స్పేస్ను యాక్సెస్ చేయగలరు."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"యాప్లను ఇన్స్టాల్ చేయండి"</b>\n"మీ స్పేస్లో మీరు ప్రైవేట్గా ఉంచాలనుకునే యాప్లను ఇన్స్టాల్ చేయండి"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"గుర్తుంచుకోండి"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"మీ స్పేస్ను మీరు లాక్ చేసినప్పుడు యాప్లు ఆగిపోతాయి"</b>\n"మీ స్పేస్ను మీరు లాక్ చేసినప్పుడు, మీ స్పేస్లోని యాప్లు ఆగిపోతాయి, వాటి నుండి మీకు నోటిఫికేషన్లు రావు"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ప్రైవేట్ స్పేస్ గూర్చి మరింత తెలుసుకోండి"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"దీనికి కొన్ని క్షణాలు పడుతుంది"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"ప్రైవేట్ స్పేస్ సెటప్ ప్రోగ్రెస్లో ఉంది…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"కేవలం ప్రైవేట్ స్పేస్ కోసం మీరు కొత్త లాక్ను సెట్ చేయవచ్చు, లేదా మీ పరికరాన్ని అన్లాక్ చేయడానికి మీరు ఉపయోగించే అదే లాక్ను ఉపయోగించవచ్చు"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"స్క్రీన్ లాక్ను ఉపయోగించండి"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"కొత్త లాక్ను ఎంచుకోండి"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"ఒక క్షణం వేచి ఉండండి…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"ఒక క్షణం వేచి ఉండండి…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"అంతా సిద్ధంగా ఉంది!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"మీ ప్రైవేట్ స్పేస్ను కనుగొనడానికి మీ యాప్ల లిస్ట్కు వెళ్లి, కిందికి స్క్రోల్ చేయండి"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"పూర్తయింది"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"మీ ప్రైవేట్ స్పేస్ కోసం PIN సెట్ చేయండి"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"మీ ప్రైవేట్ స్పేస్ కోసం పాస్వర్డ్ను సెట్ చేయండి"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"మీ ప్రైవేట్ స్పేస్ కోసం ఆకృతి సెట్ చేయి"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"మీ డేటాను ప్రైవేట్గా ఉంచడంలో సహాయపడటానికి Google ఖాతాను క్రియేట్ చేయండి"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"తర్వాత స్క్రీన్లో మీరు మీ ప్రైవేట్ స్పేస్తో ఉపయోగించడానికి ఖాతాకు సైన్ ఇన్ చేయవచ్చు"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"ప్రైవేట్ స్పేస్ వెలుపల డేటా కనిపించకుండా చేయడంలో సహాయపడటానికి ప్రత్యేక ఖాతాను క్రియేట్ చేయండి, ఉదాహరణకు:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"సింక్ చేయబడిన ఫోటోలు, ఫైల్స్, ఈమెయిల్స్, కాంటాక్ట్లు, క్యాలెండర్ ఈవెంట్లు, ఇతర డేటా"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"యాప్ డౌన్లోడ్ హిస్టరీ, సిఫార్సులు"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"బ్రౌజింగ్ హిస్టరీ, బుక్మార్క్లు, సేవ్ చేసిన పాస్వర్డ్లు"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"ప్రైవేట్ స్పేస్ యాప్లలో మీ యాక్టివిటీకి సంబంధించి సూచించబడిన కంటెంట్"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"సరే"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"లాక్ చేయండి"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"దాచండి"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"మీరు గరిష్ఠంగా <xliff:g id="COUNT">%d</xliff:g> వేలిముద్రలను జోడించవచ్చు"</string>
@@ -665,7 +661,7 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"స్క్రీన్ లాక్ను ఎంచుకోండి"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"కొత్త స్క్రీన్ లాక్ను ఎంచుకోండి"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"వర్క్ యాప్ల కోసం లాక్ను ఎంచుకోండి"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"కొత్త వర్క్ లాక్ ఎంచుకోండి"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"కొత్త వర్క్ప్లేస్ లాక్ను ఎంచుకోండి"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"అదనపు సెక్యూరిటీ కోసం, బ్యాకప్ స్క్రీన్ లాక్ను సెట్ చేయండి"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"మీ బ్యాకప్ స్క్రీన్ లాక్ పద్ధతిని ఎంచుకోండి"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"మీ స్క్రీన్ లాక్ను మీరు మర్చిపోతే, మీ IT అడ్మిన్ దాన్ని రీసెట్ చేయలేరు."</string>
@@ -796,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{తప్పనిసరిగా కనీసం 1 అక్షరేతర గుర్తును కలిగి ఉండాలి}other{తప్పనిసరిగా కనీసం # అక్షరేతర గుర్తులను కలిగి ఉండాలి}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{తప్పనిసరిగా కనీసం 1 సంఖ్యేతర అక్షరాన్ని కలిగి ఉండాలి}other{తప్పనిసరిగా కనీసం # సంఖ్యేతర అక్షరాలను కలిగి ఉండాలి}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"ఇటీవలి పాస్వర్డ్ను ఉపయోగించడానికి పరికర నిర్వాహకులు అనుమతించరు"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"అంకెలను ఆరోహణ, అవరోహణ క్రమంలో లేదా ఒకే అంకెను వరుసగా పునరావృతంగా ఉపయోగించకూడదు"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"అంకెలను ఒకటి తర్వాత ఒకటి పెంచుకుంటూ లేదా తగ్గించుకుంటూ లేదా ఒకే అంకెను వరుసగా రిపీటెడ్గా ఉపయోగించకూడదు"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"నిర్ధారించండి"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"క్లియర్ చేయండి"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"స్క్రీన్ లాక్ ఇప్పటికే మార్చబడింది. కొత్త స్క్రీన్ లాక్తో మళ్లీ ట్రై చేయండి."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"సిస్టమ్ సర్టిఫికెట్"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"సర్టిఫికెట్ పిన్నింగ్"</string>
<string name="wifi_details_title" msgid="222735438574597493">"నెట్వర్క్ వివరాలు"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"ఈ నెట్వర్క్, తక్కువ సురక్షితంగా ఉన్న WEP అనే పాత సెక్యూరిటీ ప్రోటోకాల్ను ఉపయోగిస్తోంది"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"సబ్నెట్ మాస్క్"</string>
<string name="server_name_title" msgid="7257095185810299066">"సర్వర్ పేరు"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"రకం"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"పరికరం Wi‑Fi MAC అడ్రస్"</string>
<string name="status_bt_address" msgid="6919660304578476547">"బ్లూటూత్ అడ్రస్"</string>
<string name="status_serial_number" msgid="9060064164331466789">"సీరియల్ నంబర్"</string>
- <string name="status_up_time" msgid="1274778533719495438">"చివరి రీబూట్ నుండి గడిచిన సమయం"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"పని చేసే సమయం"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"తయారు చేసిన తేదీ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"మొదటి సారి ఉపయోగించిన తేదీ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"ఎన్నిసార్లు ఛార్జ్ అయింది"</string>
@@ -1620,9 +1617,9 @@
<string name="settings_license_activity_loading" msgid="1653151990366578827">"లోడ్ చేస్తోంది…"</string>
<string name="settings_safetylegal_activity_loading" msgid="1757860124583063395">"లోడ్ చేస్తోంది…"</string>
<string name="lockpassword_choose_your_password_header" msgid="2407205113298094824">"పాస్వర్డ్ను సెట్ చేయండి"</string>
- <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"వర్క్ పాస్వర్డ్ను సెట్ చేయండి"</string>
+ <string name="lockpassword_choose_your_profile_password_header" msgid="7038997227611893312">"వర్క్ప్లేస్ పాస్వర్డ్ను సెట్ చేయండి"</string>
<string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PINను సెట్ చేయండి"</string>
- <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"వర్క్ PINను సెట్ చేయండి"</string>
+ <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"వర్క్ప్లేస్ PINను సెట్ చేయండి"</string>
<string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ఆకృతిని సెట్ చేయండి"</string>
<string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"అదనపు సెక్యూరిటీ కోసం, పరికరాన్ని అన్లాక్ చేయడానికి ఆకృతిని సెట్ చేయండి"</string>
<string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"వర్క్ ఆకృతిని సెట్ చేయండి"</string>
@@ -1631,12 +1628,12 @@
<string name="lockpassword_choose_your_pin_message" msgid="7230665212172041837">"సెక్యూరిటీ కోసం పిన్ను సెట్ చేయండి"</string>
<string name="lockpassword_choose_your_pin_header_for_fingerprint" msgid="2783879743691792556">"వేలిముద్రకు పిన్ సెట్ చేయండి"</string>
<string name="lockpassword_confirm_your_password_header" msgid="6132312814563023990">"మీ పాస్వర్డ్ను మళ్లీ ఎంటర్ చేయండి"</string>
- <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"మీ వర్క్ పాస్వర్డ్ను మళ్లీ ఎంటర్ చేయండి"</string>
+ <string name="lockpassword_reenter_your_profile_password_header" msgid="3812040127714827685">"మీ వర్క్ పాస్వర్డ్ మళ్లీ ఎంటర్ చేయండి"</string>
<string name="lockpassword_confirm_your_work_password_header" msgid="4647071231702288305">"మీ కార్యాలయ పాస్వర్డ్ను నమోదు చేయండి"</string>
<string name="lockpassword_confirm_your_pattern_header" msgid="4037701363240138651">"మీ ఆకృతిని నిర్ధారించండి"</string>
<string name="lockpassword_confirm_your_work_pattern_header" msgid="2668883108969165844">"మీ కార్యాలయ నమూనాను నమోదు చేయి"</string>
<string name="lockpassword_confirm_your_pin_header" msgid="2241722970567131308">"మీ PINను మళ్లీ ఎంటర్ చేయండి"</string>
- <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"మీ వర్క్ PINను మళ్లీ ఎంటర్ చేయండి"</string>
+ <string name="lockpassword_reenter_your_profile_pin_header" msgid="2890233614560435538">"మీ వర్క్ప్లేస్ PINను మళ్లీ ఎంటర్ చేయండి"</string>
<string name="lockpassword_confirm_your_work_pin_header" msgid="4229765521391960255">"మీ ఆఫీస్ పిన్ నెంబర్ను ఎంటర్ చేయండి"</string>
<string name="lockpassword_confirm_passwords_dont_match" msgid="2100071354970605232">"పాస్వర్డ్లు మ్యాచ్ కాలేదు"</string>
<string name="lockpassword_confirm_pins_dont_match" msgid="1103699575489401030">"PINలు మ్యాచ్ కాలేదు"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"దిగువ కుడి ట్యాప్"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"మనిన్ని ఆప్షన్లకై టచ్ప్యాడ్ దిగువ కుడి మూలన ట్యాప్ చేయండి"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"పాయింటర్ స్పీడ్"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"పాయింటర్ ఫిల్ స్టయిల్"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"పాయింటర్ ఫిల్ స్టయిల్ను నలుపు రంగుకి మార్చండి"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"పాయింటర్ ఫిల్ స్టయిల్ను ఆకుపచ్చ రంగుకి మార్చండి"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"పాయింటర్ ఫిల్ స్టయిల్ను పసుపు రంగుకి మార్చండి"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"పాయింటర్ ఫిల్ స్టయిల్ను గులాబీ రంగుకి మార్చండి"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"పాయింటర్ ఫిల్ స్టయిల్ను నీలం రంగుకి మార్చండి"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"టచ్ప్యాడ్ సంజ్ఞ గూర్చి తెలుసుకోండి"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ట్రాక్ప్యాడ్, ట్రాక్ ప్యాడ్, మౌస్, కర్సర్, స్క్రోల్, స్వైప్, కుడి క్లిక్, క్లిక్, పాయింటర్"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"కుడి క్లిక్, ట్యాప్"</string>
@@ -2609,7 +2612,7 @@
<string name="battery_usage_background_less_than_one_minute" msgid="267133882897827276">"బ్యాక్గ్రౌండ్: నిమిషం కంటే తక్కువ"</string>
<string name="battery_usage_screen_time_less_than_one_minute" msgid="578511021578427369">"పరికర వినియోగ వ్యవధి: నిమిషం కంటే తక్కువ"</string>
<string name="power_usage_time_less_than_one_minute" msgid="1599706998204418081">"నిమిషం కంటే తక్కువ"</string>
- <string name="battery_usage_for_total_time" msgid="8402254046930910905">"మొత్తం ఉపయోగం: <xliff:g id="TIME">%s</xliff:g>"</string>
+ <string name="battery_usage_for_total_time" msgid="8402254046930910905">"మొత్తం వినియోగం: <xliff:g id="TIME">%s</xliff:g>"</string>
<string name="battery_usage_for_background_time" msgid="9109637210617095188">"బ్యాక్గ్రౌండ్ సమయం: <xliff:g id="TIME">%s</xliff:g>"</string>
<string name="battery_usage_screen_time" msgid="3973865893520804115">"పరికర వినియోగ వ్యవధి: <xliff:g id="TIME">%s</xliff:g>"</string>
<string name="battery_usage_screen_footer_empty" msgid="3301144846133808193">"ఒక్కసారి పూర్తిగా ఛార్జ్ చేసిన తర్వాత కొన్ని గంటల్లో బ్యాటరీ వినియోగ డేటా అందుబాటులో ఉంటుంది"</string>
@@ -3023,7 +3026,7 @@
<string name="user_revoke_admin_confirm_message" msgid="9207187319308572958">"ఈ యూజర్కు మీరు అడ్మిన్ హక్కులను తీసివేస్తే, తర్వాత ఎప్పుడైనా మీరు గానీ లేదా వేరే అడ్మిన్ గానీ, వారికి తిరిగి అడ్మిన్ హక్కులను ఇవ్వవచ్చు."</string>
<string name="emergency_info_title" msgid="8233682750953695582">"ఎమర్జెన్సీ సమాచారం"</string>
<string name="emergency_info_summary" msgid="8463622253016757697">"<xliff:g id="USER_NAME">%1$s</xliff:g> సంబంధిత సమాచారం & కాంటాక్ట్లు"</string>
- <string name="open_app_button" msgid="5025229765547191710">"<xliff:g id="APP_NAME">%1$s</xliff:g>ని తెరువు"</string>
+ <string name="open_app_button" msgid="5025229765547191710">"<xliff:g id="APP_NAME">%1$s</xliff:g>ను తెరవండి"</string>
<string name="application_restrictions" msgid="276179173572729205">"యాప్లు మరియు కంటెంట్ను అనుమతించండి"</string>
<string name="apps_with_restrictions_header" msgid="5277698582872267931">"పరిమితులు గల యాప్లు"</string>
<string name="apps_with_restrictions_settings_button" msgid="2648355133416902221">"యాప్ సెట్టిం. విస్తరింపజేయి"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ఏవీ లేవు}=1{1 షెడ్యూల్ సెట్ చేయబడింది}other{# షెడ్యూళ్లు సెట్ చేయబడ్డాయి}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"అంతరాయం కలిగించవద్దు"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ముఖ్యమైన ఫైల్స్ మోడ్స్"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"ముఖ్యమైన వ్యక్తులు, యాప్ల నుంచి వచ్చే నోటిఫికేషన్లను మాత్రమే అందించు"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"అంతరాయాలను పరిమితం చేయండి"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"అంతరాయం కలిగించవద్దును ఆన్ చేయండి"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"ఎడిట్"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"షెడ్యూళ్లు"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"షెడ్యూల్"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"ఆటోమేటిక్గా ఆన్ చేయండి"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"క్యాలెండర్ను జోడించండి"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"మీ క్యాలెండర్ను ఉపయోగించండి"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"షెడ్యూల్"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"షెడ్యూల్ను సెట్ చేయండి"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"షెడ్యూల్ చేయండి"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> గం., <xliff:g id="MINUTES">%2$d</xliff:g> నిమి."</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"షెడ్యూల్"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"కొన్ని సమయాల్లో ఫోన్ని నిశ్శబ్దంగా ఉంచు"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"అంతరాయం కలిగించవద్దు నియమాలు సెట్ చేయండి"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"మెరుగుపరిచిన సెట్టింగ్లను ఈ యాప్ సపోర్ట్ చేయదు"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"మరిన్ని సెట్టింగ్లు"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"ఈ యాప్లో మరిన్ని సెట్టింగ్లు అందుబాటులో ఉన్నాయి"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"కూల్డౌన్"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"కూల్డౌన్ను ఉపయోగించండి"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"మీరు తక్కువ సమయ వ్యవధిలో అనేక నోటిఫికేషన్లను పొందినప్పుడు, మీ పరికరం స్క్రీన్పై సౌండ్ అంతరాయాలను, పాప్-అప్లను తగ్గిస్తుంది. కాల్స్, అలారాలు మరియు ప్రాధాన్య సంభాషణలు ఇప్పటికీ సాధారణమైనవి, డెలివరీ చేయబడిన అన్ని నోటిఫికేషన్లను షేడ్లో సులభంగా కనుగొనవచ్చు."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"వర్క్ ప్రొఫైల్లకు వర్తింపజేయండి"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"వర్క్ ప్రొఫైల్ యాప్లకు వర్తింపజేయండి"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR సహాయక సర్వీసులు"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"ఎంచుకున్న యాప్లు"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ఏదీ లేదు"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"అన్నీ"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"భర్తీ చేయడానికి యాప్లను అనుమతించండి"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"అంతరాయం కలిగించగల యాప్లు"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"మరిన్ని యాప్లను ఎంచుకోండి"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} వరకు ఒక గంట పాటు మాత్రమే అలారాలకు మార్చండి}other{{time} వరకు # గంటల పాటు మాత్రమే అలారాలకు మార్చండి}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> వరకు అలారాలు మాత్రమే ఎంపికకు మార్చుతుంది"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ఎల్లప్పుడూ అంతరాయం కలిగించు ఎంపికకు మార్చుతుంది"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"పేరు మార్చండి"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"చిహ్నాన్ని మార్చండి"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"చిహ్నాన్ని మార్చండి"</string>
<string name="warning_button_text" msgid="1274234338874005639">"హెచ్చరిక"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"మూసివేయండి"</string>
<string name="device_feedback" msgid="5351614458411688608">"ఈ పరికరంపై ఫీడ్బ్యాక్ ఇవ్వండి"</string>
@@ -4468,7 +4480,7 @@
<string name="credman_confirmation_change_provider_positive_button" msgid="7732302992885116967">"మార్చండి"</string>
<string name="credman_limit_error_msg_title" msgid="1525814645803612135">"గరిష్ఠంగా 5 సర్వీస్లను మాత్రమే జోడించవచ్చు"</string>
<string name="credman_limit_error_msg" msgid="2521803280130310063">"మరొక సర్వీస్ను జోడించడానికి కనీసం 1 సర్వీస్ను ఆఫ్ చేయండి"</string>
- <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"సైన్-ఇన్, ఆటోఫిల్ సూచనల కోసం డేటాను సేవ్ చేయడానికి మీ ప్రాధాన్య సర్వీస్ను ఎంచుకోండి. వారు కూడా సూచనలను అందించాలని మీరు కోరుకుంటే అదనపు సర్వీస్లను ఆన్ చేయండి."</string>
+ <string name="credman_main_settings_intro_text" msgid="4981603639240772620">"సైన్-ఇన్, ఆటోఫిల్ సూచనల కోసం డేటాను సేవ్ చేయడానికి మీ ప్రాధాన్య సర్వీస్ను ఎంచుకోండి. సర్వీసులు సూచనలను కూడా అందించాలని మీరు కోరుకుంటే అదనపు సర్వీస్లను ఆన్ చేయండి."</string>
<string name="credman_enable_confirmation_message" msgid="8407841892310870169">"ఏది ఆటోఫిల్ చేయవచ్చో గుర్తించడానికి %1$s మీ స్క్రీన్పై ఉన్న వాటిని ఉపయోగిస్తుంది."</string>
<string name="credman_error_message_title" msgid="4099557206946333568">"పాస్వర్డ్లు, పాస్-కీలు, అలాగే డేటా సర్వీస్ల పరిమితి"</string>
<string name="credman_error_message" msgid="8334797097200415449">"మీరు ఒకే సమయంలో గరిష్ఠంగా 5 పాస్వర్డ్లు, పాస్-కీలు, అలాగే డేటా సర్వీస్లను యాక్టివ్గా జోడించవచ్చు. మరిన్నింటిని జోడించడం కోసం ఇప్పటికే ఉన్న ఒక సర్వీస్ను ఆఫ్ చేయండి."</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ఎడమ"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"కుడి"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"కేస్"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"బ్యాటరీ"</string>
<string name="settings_panel_title" msgid="346363079938069215">"సెట్టింగ్ల ప్యానెల్"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ఫోర్స్ డెస్క్టాప్ మోడ్"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ఇతర డిస్ప్లేలలో తప్పనిసరి ప్రయోగాత్మక డెస్క్టాప్ మోడ్"</string>
@@ -5230,7 +5243,7 @@
<string name="about_phone_device_name_warning" msgid="3243226572404472381">"మీరు ఇన్స్టాల్ చేసిన యాప్లకు మీ పరికరం పేరు కనిపిస్తుంది. మీరు బ్లూటూత్ పరికరాలకు కనెక్ట్ చేసినప్పుడు, Wi-Fi నెట్వర్క్కు కనెక్ట్ చేసినప్పుడు లేదా Wi-Fi హాట్స్పాట్ను సెటప్ చేసినప్పుడు ఇతర వ్యక్తులకు కూడా కనబడవచ్చు."</string>
<string name="grammatical_gender_title" msgid="8584242850477270828">"వ్యాకరణ లింగం"</string>
<string name="grammatical_gender_dialog_title" msgid="8754048592099871587">"వ్యాకరణ లింగం ఎంచుకోండి"</string>
- <string name="content_protection_preference_title" msgid="5069260032659193074">"మోసపూరిత యాప్ల కోసం స్కాన్ చేస్తోంది"</string>
+ <string name="content_protection_preference_title" msgid="5069260032659193074">"మోసపూరిత యాప్ల కోసం స్కాన్ చేయడం"</string>
<string name="content_protection_preference_summary" msgid="2252393849408445391">"ఫిషింగ్ కోసం యాప్ యాక్టివిటీని చెక్ చేయండి"</string>
<string name="content_protection_preference_user_consent_switch_title" msgid="1797782616799594426">"మోసపూరిత యాప్లను గుర్తించడానికి స్కానింగ్ను ఉపయోగించండి"</string>
<string name="content_protection_preference_user_consent_work_profile_switch_title" msgid="3004347470520916069">"ఆఫీస్కు సంబంధించిన మోసపూరిత యాప్లను గుర్తించడానికి స్కానింగ్ను ఉపయోగించండి"</string>
diff --git a/res/values-th/arrays.xml b/res/values-th/arrays.xml
index e5367c1..ecd5bec 100644
--- a/res/values-th/arrays.xml
+++ b/res/values-th/arrays.xml
@@ -498,4 +498,15 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <string-array name="zen_mode_icon_options_descriptions">
+ <item msgid="6386593780953863398">"เวลาเข้านอน"</item>
+ <item msgid="4152450357280759894">"การขับขี่"</item>
+ <item msgid="7096549258219399423">"สมจริง"</item>
+ <item msgid="2760716776980432977">"ที่มีการจัดการ"</item>
+ <item msgid="601734478369121764">"ดาว"</item>
+ <item msgid="6243809315432780521">"ปฏิทิน"</item>
+ <item msgid="4913577903148415331">"เวลา"</item>
+ <item msgid="3653377604690057780">"ละครเวที"</item>
+ <item msgid="3843711267408385410">"ดอกไม้"</item>
+ </string-array>
</resources>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index a437153..4127e69 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"เลิกเชื่อมต่ออุปกรณ์ไหม"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"จับคู่อุปกรณ์ใหม่"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"บลูทูธ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"เปิดอีกครั้งโดยอัตโนมัติในวันพรุ่งนี้"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"จับคู่หูฟังข้างขวา"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"จับคู่หูฟังข้างซ้าย"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"จับคู่หูฟังอีกข้าง"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"จับคู่หูฟังข้างซ้าย"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"การตั้งค่าเครื่องช่วยฟัง"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"ทางลัด ความเข้ากันได้กับเครื่องช่วยฟัง"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"ค่าที่กำหนดล่วงหน้า"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"ค่าที่กำหนดล่วงหน้า"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"ไม่สามารถอัปเดตค่าที่กำหนดล่วงหน้า"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"เอาต์พุตเสียง"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"เกี่ยวกับเอาต์พุตเสียง"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"ยกเลิก"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"ไม่เป็นไร"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ไว้ทีหลัง"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"ยอมรับ"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"เพิ่มเติม"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"ปลดล็อกด้วยใบหน้า"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"โปรดทราบ"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"ใช้ลายนิ้วมือเพื่อปลดล็อกโทรศัพท์หรืออนุมัติการซื้อ\n\nหมายเหตุ: คุณไม่สามารถใช้ลายนิ้วมือเพื่อปลดล็อกอุปกรณ์นี้ โปรดติดต่อผู้ดูแลระบบขององค์กรสำหรับข้อมูลเพิ่มเติม"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"ยกเลิก"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"ไม่เป็นไร"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ไว้ทีหลัง"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"ยอมรับ"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"ข้ามการตั้งค่าลายนิ้วมือไหม"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"การตั้งค่าลายนิ้วมือใช้เวลาเพียง 1-2 นาทีเท่านั้น หากข้ามขั้นตอนนี้ คุณสามารถเพิ่มลายนิ้วมือภายหลังได้ใน \"การตั้งค่า\""</string>
@@ -557,7 +558,7 @@
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"การปลดล็อกด้วยลายนิ้วมือสำหรับพื้นที่ส่วนตัว"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"การปลดล็อกด้วยใบหน้าสำหรับพื้นที่ส่วนตัว"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"การปลดล็อกด้วยใบหน้าและลายนิ้วมือสำหรับพื้นที่ส่วนตัว"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"ตั้งค่าปลดล็อกด้วยลายนิ้วมือสำหรับพื้นที่ส่วนตัว"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"ตั้งค่าการปลดล็อกด้วยลายนิ้วมือสำหรับพื้นที่ส่วนตัว"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"ใช้ลายนิ้วมือเพื่อปลดล็อกพื้นที่ส่วนตัวหรือยืนยันว่าเป็นคุณ เช่น เมื่อลงชื่อเข้าใช้แอปหรืออนุมัติการซื้อ"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"พื้นที่ส่วนตัวอาจปลดล็อกได้แม้คุณไม่ได้ตั้งใจ เช่น เมื่อมีการยกโทรศัพท์ไปแตะกับนิ้วของคุณ"</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"ใช้ลายนิ้วมือเพื่อปลดล็อกพื้นที่ส่วนตัวหรืออนุมัติการซื้อ"</string>
@@ -566,7 +567,7 @@
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"การมองโทรศัพท์จะปลดล็อกพื้นที่ส่วนตัวได้แม้ว่าคุณไม่ได้ตั้งใจก็ตาม หากมีคนที่หน้าคล้ายคุณมากๆ เช่น พี่น้องที่หน้าตาเหมือนกัน หรือหากมีผู้ถืออุปกรณ์ไว้ตรงหน้าคุณ ก็อาจปลดล็อกพื้นที่ส่วนตัวได้เช่นกัน"</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"การใช้ใบหน้าเพื่อปลดล็อกพื้นที่ส่วนตัวอาจไม่ปลอดภัยเท่าการใช้รูปแบบ, PIN หรือรหัสผ่านที่เดาได้ยาก"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"คุณต้องลืมตาเพื่อปลดล็อกพื้นที่ส่วนตัว ถอดแว่นกันแดดออกเพื่อผลลัพธ์ที่ดีที่สุด"</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"ใช้ใบหน้าเพื่อปลดล็อกพื้นที่ส่วนตัว\n\nข้อควรจำ\nคุณตั้งค่าได้ครั้งละ 1 ใบหน้าเท่านั้น หากต้องการเพิ่มใบหน้าอื่น ให้ลบใบหน้าปัจจุบันออก\n\nการดูโทรศัพท์อาจปลดล็อกเครื่องโดยไม่ตั้งใจ\n\nคนอื่นอาจปลดล็อกพื้นที่ส่วนตัวได้หากถือไว้ตรงหน้าคุณ\n\nคนที่หน้าคล้ายคุณมากๆ เช่น พี่น้องที่หน้าตาเหมือนกันอาจปลดล็อกพื้นที่ส่วนตัวได้"</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"ใช้ใบหน้าเพื่อปลดล็อกพื้นที่ส่วนตัว\n\nข้อควรจำ\nคุณตั้งค่าได้ครั้งละ 1 ใบหน้าเท่านั้น หากต้องการเพิ่มใบหน้าอื่น ให้ลบใบหน้าปัจจุบันออก\n\nการดูโทรศัพท์อาจปลดล็อกเครื่องโดยไม่ตั้งใจ\n\nคนอื่นอาจปลดล็อกพื้นที่ส่วนตัวได้หากถืออุปกรณ์ของคุณไว้ตรงหน้าคุณ\n\nคนที่หน้าคล้ายคุณมากๆ เช่น พี่น้องที่หน้าตาเหมือนกันอาจปลดล็อกพื้นที่ส่วนตัวได้"</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"เมื่อใช้ \"การปลดล็อกด้วยใบหน้า\" ต้องมีขั้นตอนการยืนยันเสมอ"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"วิธีปลดล็อก"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"เหมือนกับล็อกหน้าจออุปกรณ์"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ทุกครั้งที่อุปกรณ์ล็อก"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 นาทีหลังจากระยะหมดเวลาหน้าจอ"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"หลังจากรีสตาร์ทอุปกรณ์เท่านั้น"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"ซ่อนพื้นที่ส่วนตัว"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"ซ่อนพื้นที่ส่วนตัวเมื่อล็อกไว้"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"คุณซ่อนพื้นที่ส่วนตัวจากรายการแอปได้ เพื่อไม่ให้คนอื่นรู้ว่ามีพื้นที่ส่วนตัวอยู่ในอุปกรณ์ของคุณ"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"ตั้งค่า"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"พื้นที่ส่วนตัว"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"ซ่อนหรือล็อกแอปส่วนตัวในพื้นที่แยกต่างหาก ใช้บัญชี Google ที่เฉพาะเจาะจงเพื่อเพิ่มความปลอดภัย"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"ตั้งค่าพื้นที่ส่วนตัว"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"เลือกบัญชี Google สำหรับพื้นที่ของคุณ"</b>\n"การใช้บัญชีที่เฉพาะเจาะจงจะช่วยไม่ให้ไฟล์ รูปภาพ และอีเมลที่ซิงค์ปรากฏนอกพื้นที่ของคุณ"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"วิธีการทำงาน"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"สร้างบัญชี Google สำหรับพื้นที่ทำงานของคุณ"</b>\n"หากคุณใช้บัญชีเพื่อการดำเนินการนี้โดยเฉพาะ ก็จะช่วยป้องกันไม่ให้ไฟล์ รูปภาพ และอีเมลที่ซิงค์ไว้ปรากฏนอกพื้นที่ทำงานได้"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ตั้งค่าการล็อก"</b>\n"ล็อกพื้นที่ของคุณไม่ให้คนอื่นเปิดได้"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ติดตั้งแอป"</b>\n"พื้นที่ส่วนตัวของคุณมี Play Store ของตัวเอง คุณจึงติดตั้งแอปได้อย่างง่ายดาย"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"แอปในพื้นที่ส่วนตัวจะไม่ปรากฏในเครื่องมือจัดการสิทธิ์ แดชบอร์ดความเป็นส่วนตัว และการตั้งค่าอื่นๆ เมื่อล็อกพื้นที่ส่วนตัวไว้\n\nระบบจะกู้คืนพื้นที่ส่วนตัวไปยังอุปกรณ์ใหม่ไม่ได้ คุณจะต้องตั้งค่าพื้นที่ส่วนตัวอีกแห่งหนึ่งหากต้องการใช้ในอุปกรณ์อื่น\n\nใครก็ตามที่เชื่อมต่ออุปกรณ์ของคุณกับคอมพิวเตอร์หรือติดตั้งแอปที่เป็นอันตรายลงในอุปกรณ์อาจเข้าถึงพื้นที่ส่วนตัวได้"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ติดตั้งแอป"</b>\n"ติดตั้งแอปที่คุณต้องการเก็บไว้เป็นส่วนตัวในพื้นที่ทำงาน"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"ข้อควรจำ"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"แอปหยุดทำงานเมื่อคุณล็อกพื้นที่ทำงาน"</b>\n"เมื่อคุณล็อกพื้นที่ทำงาน จะทำให้แอปในพื้นที่ทำงานดังกล่าวหยุดทำงานโดยไม่มีการแจ้งเตือนคุณ"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"ดูข้อมูลเพิ่มเติมเกี่ยวกับพื้นที่ส่วนตัว"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"การดำเนินการนี้จะใช้เวลาสักครู่"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"กำลังตั้งค่าพื้นที่ส่วนตัว…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"คุณจะตั้งค่าการล็อกใหม่สำหรับพื้นที่ส่วนตัวโดยเฉพาะ หรือจะใช้การล็อกเดียวกับที่ใช้ปลดล็อกอุปกรณ์ก็ได้"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"ใช้การล็อกหน้าจอ"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"เลือกการล็อกใหม่"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"รอสักครู่…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"รอสักครู่…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"เรียบร้อยแล้ว"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"หากต้องการดูพื้นที่ส่วนตัว ให้ไปที่รายการแอปแล้วเลื่อนลงไปด้านล่าง"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"เสร็จสิ้น"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"ตั้ง PIN สำหรับพื้นที่ส่วนตัว"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"ตั้งรหัสผ่านสำหรับพื้นที่ส่วนตัว"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"ตั้งรูปแบบสำหรับพื้นที่ส่วนตัว"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"สร้างบัญชี Google เพื่อช่วยรักษาข้อมูลของคุณให้เป็นส่วนตัว"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"คุณจะลงชื่อเข้าใช้บัญชีเพื่อใช้กับพื้นที่ส่วนตัวได้ในหน้าจอถัดไป"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"สร้างบัญชีเฉพาะเพื่อช่วยไม่ให้ข้อมูลปรากฏนอกพื้นที่ส่วนตัว เช่น"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"รูปภาพ ไฟล์ อีเมล รายชื่อติดต่อ กิจกรรมในปฏิทิน และข้อมูลอื่นๆ ที่ซิงค์ไว้"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ประวัติและคำแนะนำในการดาวน์โหลดแอป"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"ประวัติการท่องเว็บ บุ๊กมาร์ก และรหัสผ่านที่บันทึกไว้"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"เนื้อหาแนะนำที่เกี่ยวข้องกับกิจกรรมของคุณในแอปพื้นที่ส่วนตัว"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"รับทราบ"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"ล็อก"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"ซ่อน"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"คุณสามารถเพิ่มได้ถึง <xliff:g id="COUNT">%d</xliff:g> ลายนิ้วมือ"</string>
@@ -831,9 +827,9 @@
<string name="bluetooth_device_context_disconnect" msgid="4464167389972513232">"ยกเลิกการเชื่อมต่อ"</string>
<string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"จับคู่อุปกรณ์และเชื่อมต่อ"</string>
<string name="bluetooth_empty_list_bluetooth_off" msgid="7326727272747345476">"เมื่อเปิดบลูทูธ อุปกรณ์จะสื่อสารกับอุปกรณ์บลูทูธที่อยู่ใกล้ๆ ได้"</string>
- <string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"เมื่อเปิดบลูทูธ อุปกรณ์ของคุณจะสื่อสารกับอุปกรณ์บลูทูธเครื่องอื่นในบริเวณใกล้เคียงได้ ฟีเจอร์ต่างๆ เช่น Quick Share และหาอุปกรณ์ของฉัน ใช้บลูทูธ"</string>
+ <string name="bluetooth_empty_list_bluetooth_off_auto_on_available" msgid="3430864468105204282">"เมื่อเปิดบลูทูธ อุปกรณ์ของคุณจะสื่อสารกับอุปกรณ์บลูทูธเครื่องอื่นในบริเวณใกล้เคียงได้ ฟีเจอร์ต่างๆ เช่น Quick Share และ \"หาอุปกรณ์ของฉัน\" ใช้บลูทูธ"</string>
<string name="bluetooth_scanning_on_info_message" msgid="786648535600075223">"เมื่อเปิดบลูทูธ อุปกรณ์ของคุณจะสื่อสารกับอุปกรณ์บลูทูธเครื่องอื่นในบริเวณใกล้เคียงได้\n\nแอปและบริการต่างๆ จะยังคงสแกนหาอุปกรณ์ที่อยู่ใกล้เคียงได้ทุกเมื่อแม้บลูทูธจะปิดอยู่เพื่อปรับปรุงประสบการณ์การใช้งานอุปกรณ์ การตั้งค่านี้ใช้เพื่อทำสิ่งต่างๆ เช่น ปรับปรุงฟีเจอร์และบริการที่อิงตามตำแหน่ง คุณเปลี่ยนตัวเลือกนี้ได้ในการตั้งค่าการสแกนหาบลูทูธ"</string>
- <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"เมื่อเปิดบลูทูธ อุปกรณ์ของคุณจะสื่อสารกับอุปกรณ์บลูทูธเครื่องอื่นในบริเวณใกล้เคียงได้ ฟีเจอร์ต่างๆ เช่น Quick Share และหาอุปกรณ์ของฉัน ใช้บลูทูธ\n\nแอปและบริการต่างๆ จะยังคงสแกนหาอุปกรณ์ที่อยู่ใกล้เคียงได้ทุกเมื่อแม้บลูทูธจะปิดอยู่ การตั้งค่านี้ใช้เพื่อทำสิ่งต่างๆ เช่น ปรับปรุงฟีเจอร์และบริการที่อิงตามตำแหน่ง คุณเปลี่ยนตัวเลือกนี้ได้ในการตั้งค่าการสแกนหาบลูทูธ"</string>
+ <string name="bluetooth_scanning_on_info_message_auto_on_available" msgid="7792443293031247638">"เมื่อเปิดบลูทูธ อุปกรณ์ของคุณจะสื่อสารกับอุปกรณ์บลูทูธเครื่องอื่นในบริเวณใกล้เคียงได้ ฟีเจอร์ต่างๆ เช่น Quick Share และ \"หาอุปกรณ์ของฉัน\" ใช้บลูทูธ\n\nแอปและบริการต่างๆ จะยังคงสแกนหาอุปกรณ์ที่อยู่ใกล้เคียงได้ทุกเมื่อแม้บลูทูธจะปิดอยู่ การตั้งค่านี้ใช้เพื่อทำสิ่งต่างๆ เช่น ปรับปรุงฟีเจอร์และบริการที่อิงตามตำแหน่ง คุณเปลี่ยนตัวเลือกนี้ได้ในการตั้งค่าการสแกนหาบลูทูธ"</string>
<string name="bluetooth_scan_change" msgid="1744636222637390367">"เปลี่ยน"</string>
<string name="device_details_title" msgid="1155622417516195481">"รายละเอียดอุปกรณ์"</string>
<string name="bluetooth_device_keyboard_settings_preference_title" msgid="3411693160917620519">"การตั้งค่าแป้นพิมพ์"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"ใบรับรองระบบ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"การปักหมุดใบรับรอง"</string>
<string name="wifi_details_title" msgid="222735438574597493">"รายละเอียดเครือข่าย"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"เครือข่ายนี้ใช้โปรโตคอลความปลอดภัยเวอร์ชันเก่าที่ชื่อว่า WEP ซึ่งมีความปลอดภัยน้อยกว่า"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"ซับเน็ตมาสก์"</string>
<string name="server_name_title" msgid="7257095185810299066">"ชื่อเซิร์ฟเวอร์"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"ประเภท"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"ที่อยู่ MAC ของ Wi-Fi ของอุปกรณ์"</string>
<string name="status_bt_address" msgid="6919660304578476547">"ที่อยู่บลูทูธ"</string>
<string name="status_serial_number" msgid="9060064164331466789">"หมายเลขซีเรียล"</string>
- <string name="status_up_time" msgid="1274778533719495438">"เวลาใช้งาน"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"ระยะเวลาทำงาน"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"วันที่ผลิต"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"วันที่ใช้งานครั้งแรก"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"จำนวนรอบ"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"แตะด้านล่างขวา"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"แตะที่มุมล่างขวาของทัชแพดเพื่อดูตัวเลือกเพิ่มเติม"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"ความเร็วของตัวชี้"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"รูปแบบการเติมพื้นตัวชี้"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"เปลี่ยนรูปแบบการเติมพื้นตัวชี้เป็นสีดำ"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"เปลี่ยนรูปแบบการเติมพื้นตัวชี้เป็นสีเขียว"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"เปลี่ยนรูปแบบการเติมพื้นตัวชี้เป็นสีเหลือง"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"เปลี่ยนรูปแบบการเติมพื้นตัวชี้เป็นสีชมพู"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"เปลี่ยนรูปแบบการเติมพื้นตัวชี้เป็นสีน้ำเงิน"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"เรียนรู้ท่าทางสัมผัสของทัชแพด"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"แทร็กแพด, แทร็ก แพด, เมาส์, เคอร์เซอร์, เลื่อน, ปัด, คลิกขวา, คลิก, Pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"คลิกขวา แตะ"</string>
@@ -2401,7 +2404,7 @@
<string name="accessibility_dialog_button_deny" msgid="2037249860078259284">"ปฏิเสธ"</string>
<string name="accessibility_dialog_button_stop" msgid="7584815613743292151">"ปิด"</string>
<string name="accessibility_dialog_button_cancel" msgid="8625997437316659966">"เปิดไว้"</string>
- <string name="disable_service_title" msgid="8178020230162342801">"ปิด <xliff:g id="SERVICE">%1$s</xliff:g> ใช่ไหม"</string>
+ <string name="disable_service_title" msgid="8178020230162342801">"ปิด<xliff:g id="SERVICE">%1$s</xliff:g>ใช่ไหม"</string>
<string name="accessibility_no_services_installed" msgid="3725569493860028593">"ไม่ได้ติดตั้งบริการใดไว้"</string>
<string name="accessibility_no_service_selected" msgid="1310596127128379897">"ไม่ได้เลือกบริการ"</string>
<string name="accessibility_service_default_description" msgid="7801435825448138526">"ไม่มีคำอธิบาย"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{ไม่มี}=1{ตั้งกำหนดการแล้ว 1 รายการ}other{ตั้งกำหนดการแล้ว # รายการ}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ห้ามรบกวน"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"โหมดสำคัญ"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"รับเฉพาะการแจ้งเตือนจากผู้คนและแอปที่สำคัญ"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"จำกัดการรบกวน"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"เปิด \"ห้ามรบกวน\""</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"แก้ไข"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"กำหนดการ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"กำหนดการ"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"เปิดอัตโนมัติ"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"เพิ่มปฏิทิน"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"ใช้ปฏิทินของคุณ"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"กำหนดเวลา"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"กำหนดการ"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"ปิดเสียงโทรศัพท์ในบางช่วงเวลา"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"แอปนี้ไม่รองรับการตั้งค่าที่ปรับปรุง"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"การตั้งค่าเพิ่มเติม"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"สามารถใช้งานการตั้งค่าเพิ่มเติมได้ในแอปนี้"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"ระยะเวลาพัก"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"ใช้ระยะเวลาพัก"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"เมื่อคุณได้รับการแจ้งเตือนจำนวนมากภายในระยะเวลาสั้นๆ อุปกรณ์จะลดเสียงรบกวนและลดจำนวนป๊อปอัปบนหน้าจอลง โดยที่การโทร การปลุก และการสนทนาสำคัญจะยังคงแจ้งเตือนตามปกติ อีกทั้งคุณยังค้นหาการแจ้งเตือนที่ส่งมาทั้งหมดได้ง่ายๆ ตามเฉดสี"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"ใช้กับโปรไฟล์งาน"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"ใช้กับแอปในโปรไฟล์งาน"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"บริการตัวช่วย VR"</string>
@@ -3742,7 +3752,7 @@
<string name="zen_mode_none_calls" msgid="2047166006414016327">"ไม่มี"</string>
<string name="zen_mode_none_messages" msgid="1386626352943268342">"ไม่มี"</string>
<string name="zen_mode_alarms" msgid="5989343060100771099">"การปลุก"</string>
- <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"จากตัวจับเวลา การปลุก ระบบรักษาความปลอดภัย และแอปอื่นๆ"</string>
+ <string name="zen_mode_alarms_summary" msgid="3388679177457223967">"จากตัวจับเวลา การปลุก ระบบรักษาความปลอดภัย และแอปอื่นๆ"</string>
<string name="zen_mode_alarms_list" msgid="334782233067365405">"การปลุก"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"การปลุก"</string>
<string name="zen_mode_media" msgid="885017672250984735">"เสียงสื่อ"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"แอปที่เลือก"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"ไม่มี"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"ทั้งหมด"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"อนุญาตให้แอปลบล้าง"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"แอปที่รบกวนคุณได้"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"เลือกแอปเพิ่มเติม"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{เปลี่ยนเป็นเฉพาะปลุกเท่านั้นเป็นเวลา 1 ชั่วโมงจนถึง {time}}other{เปลี่ยนเป็นเฉพาะปลุกเท่านั้นเป็นเวลา # ชั่วโมงจนถึง {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"เปลี่ยนเป็นเฉพาะปลุกเท่านั้นจนถึง <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"เปลี่ยนเป็นรบกวนได้เสมอ"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"คำเตือน"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"ปิด"</string>
<string name="device_feedback" msgid="5351614458411688608">"ส่งความคิดเห็นเกี่ยวกับอุปกรณ์นี้"</string>
@@ -4274,7 +4292,7 @@
<string name="swipe_up_to_switch_apps_summary" msgid="1415457307836359560">"สลับแอปโดยปัดขึ้นบนปุ่มหน้าแรก ดูแอปทั้งหมดโดยปัดขึ้นอีกครั้ง กลับโดยแตะปุ่มกลับ"</string>
<string name="emergency_settings_preference_title" msgid="6183455153241187148">"ความปลอดภัยและเหตุฉุกเฉิน"</string>
<string name="emergency_dashboard_summary" msgid="401033951074039302">"SOS ฉุกเฉิน, ข้อมูลทางการแพทย์, การแจ้งเตือน"</string>
- <string name="edge_to_edge_navigation_title" msgid="714427081306043819">"การนำทางด้วยท่าทางสัมผัส"</string>
+ <string name="edge_to_edge_navigation_title" msgid="714427081306043819">"การไปยังส่วนต่างๆ ด้วยท่าทางสัมผัส"</string>
<string name="edge_to_edge_navigation_summary" msgid="818109176611921504">"ไปที่หน้าแรกโดยปัดขึ้นจากด้านล่างของหน้าจอ สลับแอปโดยปัดขึ้นจากด้านล่างค้างไว้แล้วปล่อย กลับโดยปัดจากขอบด้านซ้ายหรือขวา"</string>
<string name="legacy_navigation_title" msgid="7877402855994423727">"การนำทางแบบ 3 ปุ่ม"</string>
<string name="legacy_navigation_summary" msgid="5905301067778326433">"ย้อนกลับ ไปที่หน้าจอหลัก และสลับแอปโดยใช้ปุ่มที่ด้านล่างของหน้าจอ"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"ซ้าย"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"ขวา"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"กล่อง"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"แบตเตอรี่"</string>
<string name="settings_panel_title" msgid="346363079938069215">"แผงควบคุมการตั้งค่า"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"บังคับใช้โหมดเดสก์ท็อป"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"บังคับใช้โหมดเดสก์ท็อปแบบทดลองในจอแสดงผลรอง"</string>
diff --git a/res/values-tl/arrays.xml b/res/values-tl/arrays.xml
index 13711b4..71c8b9f 100644
--- a/res/values-tl/arrays.xml
+++ b/res/values-tl/arrays.xml
@@ -498,4 +498,15 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <string-array name="zen_mode_icon_options_descriptions">
+ <item msgid="6386593780953863398">"Oras ng pagtulog"</item>
+ <item msgid="4152450357280759894">"Pagmamaneho"</item>
+ <item msgid="7096549258219399423">"Immersive"</item>
+ <item msgid="2760716776980432977">"Pinamamahalaan"</item>
+ <item msgid="601734478369121764">"Bituin"</item>
+ <item msgid="6243809315432780521">"Kalendaryo"</item>
+ <item msgid="4913577903148415331">"Oras"</item>
+ <item msgid="3653377604690057780">"Teatro"</item>
+ <item msgid="3843711267408385410">"Bulaklak"</item>
+ </string-array>
</resources>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 38f7250..7e53550 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"I-diskonekta ang device?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Magpares ng bagong device"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Awtomatikong i-on ulit bukas"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Ipares ang kanan"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Ipares ang kaliwa"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Ipares ang kabila"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Ipares ang kaliwa"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Mga setting ng hearing device"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Shortcut, compatibility ng hearing aid"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Mga Preset"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Preset"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Hindi ma-update ang preset"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio output"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Tungkol sa audio output"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Kanselahin"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Hindi, salamat"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Huwag muna"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Sumasang-ayon ako"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Higit pa"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Mag-unlock gamit ang mukha mo"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Tandaan"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Gamitin ang iyong fingerprint upang i-unlock ang telepono mo o aprubahan ang mga pagbili.\n\nTandaan: Hindi mo maaaring gamitin ang iyong fingerprint upang i-unlock ang device na ito. Para sa higit pang impormasyon, makipag-ugnayan sa admin ng iyong organisasyon."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Kanselahin"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Huwag na lang"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Huwag muna"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Sumasang-ayon ako"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Laktawan ang fingerprint?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Aabutin lang nang isa o dalawang minuto ang pag-set up ng fingerprint. Kung lalaktawan mo ito, puwede mong idagdag ang iyong fingerprint sa mga setting sa ibang pagkakataon."</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Sa tuwing magla-lock ang device"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 minuto pagkatapos ng timeout ng screen"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Pagkatapos lang mag-restart ang device"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Itago ang pribadong space"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Itago ang pribadong space kapag naka-lock ito"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Para hindi malaman ng iba na may pribadong space ka, puwede itong itago sa listahan ng mga app"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"I-set up"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Pribadong space"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Itago o i-lock ang mga pribadong space sa isang hiwalay na space. Gumamit ng nakalaang Google Account para sa karagdagang seguridad."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"I-set up ang iyong pribadong space"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Pumili ng Google Account para sa iyong space"</b>\n"Kapag gumamit ka ng nakalaang account, matutulungan ka nitong ihinto ang paglabas ng mga naka-sync na file, larawan, at email sa labas ng iyong space"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Paano ito gumagana"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Gumawa ng Google Account para sa iyong space"</b>\n"Kung gumagamit ka ng nakalaang account, nakakatulong ito para hindi makita sa labas ng iyong space ang mga naka-sync na file, larawan, at email"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Magtakda ng lock"</b>\n"I-lock ang iyong space para mapigilan ang ibang taong buksan ito"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Mag-install ng mga app"</b>\n"Ang iyong pribadong space ay may sarili nitong Play Store kaya madali kang makakapag-install ng mga app."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Hindi lalabas ang mga app sa iyong pribadong space sa manager ng pahintulot, privacy dashboard, at iba pang setting kapag naka-lock ang pribadong space mo.\n\nHindi puwedeng i-restore sa bagong device ang iyong pribadong space. Kakailanganin mong mag-set up ng isa pang pribadong space kung gusto mong gamitin ito sa ibang device.\n\nPuwedeng ma-access ng sinumang magkokonekta ng iyong device sa isang computer o mag-i-install ng mga nakakapinsalang app sa device mo ang iyong pribadong space."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Mag-install ng mga app"</b>\n"Mag-install ng mga app na gusto mong panatilihing pribado sa iyong space"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Tandaan"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Hihinto ang mga app kapag na-lock mo ang iyong space"</b>\n"Kapag na-lock mo ang iyong space, hihinto ang mga app sa space mo at hindi ka makakatanggap ng mga notification mula sa mga iyon"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Matuto pa tungkol sa pribadong space"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Aabutin ito nang ilang sandali"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Sine-set up ang pribadong space…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Puwede kang magtakda ng bagong lock para lang sa pribadong space, o gamitin ang parehong lock na ginagamit mo para i-unlock ang iyong device"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Gamitin ang lock ng screen"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Pumili ng bagong lock"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Sandali lang…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Sandali lang…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Handa na lahat!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Para mahanap ang iyong pribadong space, pumunta sa listahan ng mga app mo at pagkatapos ay mag-scroll pababa"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Tapos na"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Magtakda ng PIN para sa pribadong space"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Magtakda ng password sa pribadong space"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Magtakda ng pattern sa pribadong space"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Gumawa ng Google Account para matulungan kang panatilihing pribado ang iyong data"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Sa susunod na screen, puwede kang mag-sign in sa account na gagamitin sa iyong pribadong space"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Gumawa ng nakalaang account para makatulong sa paghinto ng paglabas ng data sa labas ng pribadong space, gaya ng:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Mga naka-sync na larawan, file, email, contact, event sa kalendaryo, at iba pang data"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"History at rekomendasyon sa pag-download ng app"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"History ng pag-browse, bookmark, at naka-save na password"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Iminumungkahing content na nauugnay sa iyong aktibidad sa mga pribadong space na app"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"I-lock"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Itago"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Puwede kang magdagdag ng hanggang <xliff:g id="COUNT">%d</xliff:g> (na) fingerprint"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Certificate ng system"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Pag-pin ng certificate"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Mga detalye ng network"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Gumagamit ang network na ito ng mas lumang protocol ng seguridad na tinatawag na WEP na hindi gaanong secure"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Subnet mask"</string>
<string name="server_name_title" msgid="7257095185810299066">"Pangalan ng server"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Uri"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Device Wi‑Fi MAC address"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Address ng bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Serial number"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Up time"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Uptime"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Petsa ng paggawa"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Petsa ng unang paggamit"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Bilang ng cycle"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Pag-tap sa kanang bahagi sa ibaba"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"I-tap ang kanang sulok sa ibaba ng touchpad para sa higit pang opsyon"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Bilis ng pointer"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Istilo ng fill ng pointer"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Gawing itim ang fill ng pointer"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Gawing berde ang fill ng pointer"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Gawing dilaw ang fill ng pointer"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Gawing pink ang fill ng pointer"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Gawing asul ang fill ng pointer"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Matuto ng mga galaw sa touchpad"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"trackpad, track pad, mouse, cursor, scroll, swipe, right click, click, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"right click, tap"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Wala}=1{Naitakda ang 1 iskedyul}one{Naitakda ang # iskedyul}other{Naitakda ang # na iskedyul}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Huwag Istorbohin"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Mga Priyoridad na Mode"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Makakuha lang ng notification mula sa mahahalagang tao at app"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Limitahan ang mga pagkaantala"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"I-on ang Huwag Istorbohin"</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"I-edit"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Mga Iskedyul"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Iskedyul"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Awtomatikong i-on"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Magdagdag ng kalendaryo"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Gamitin ang iyong kalendaryo"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Iiskedyul"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Iskedyul"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"I-silent ang phone sa ilang panahon"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Hindi sinusuportahan ng app na ito ang mga pinahusay na setting"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Higit pang setting"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"May higit pang setting na available sa loob ng app na ito"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Cooldown"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Gumamit ng Cooldown"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kapag nakakuha ka ng maraming notification sa loob ng maikling panahon, hihinaan ng iyong device ang mga abala sa tunog at pop-up sa screen. Magbibigay pa rin ng alerto ang mga tawag, alarm, at priyoridad na pag-uusap gaya ng normal, at madaling mahahanap ang mga inihatid na notification sa Shade."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Ilapat sa mga profile sa trabaho"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Ilapat sa mga app ng profile sa trabaho"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Mga serbisyong pantulong sa VR"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Mga napiling app"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Wala"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Lahat"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Payagan ang mga app na mag-override"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Mga app na puwedeng umabala"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Pumili pa ng mga app"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Gawing mag-a-alarm lang sa loob ng isang oras hanggang {time}}one{Gawing mag-a-alarm lang sa loob ng # oras hanggang {time}}other{Gawing mag-a-alarm lang sa loob ng # na oras hanggang {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Gawing mag-a-alarm lang hanggang <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Gawing palaging mang-abala"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Babala"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Isara"</string>
<string name="device_feedback" msgid="5351614458411688608">"Feedback tungkol sa device"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Kaliwa"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Kanan"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Case"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Baterya"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Panel ng Mga Setting"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Force desktop mode"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Force experimental desktop mode sa mga pangalawang display"</string>
@@ -4852,7 +4871,7 @@
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Hindi na-update ang kernel sa 16KB page na compatible kernel."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Inilalapat ang pagbabago"</string>
<string name="confirm_format_ext4_title" msgid="6696191800594435577">"I-reformat ang device sa ext4? (kinakailangan para sa 16KB mode)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Kailangang i-convert sa ext4 ang partition ng data ng device na ito bago magamit ang 16KB na opsyon ng developer. Hindi magagarantiya ang integridad ng software, at posibleng malagay sa panganib ang anumang data na naka-store sa telepono habang naka-unlock ang bootloader. Kailangan ng isa pang pag-reboot pagkatapos nito para sa pag-activate ng 16KB na opsyon. Kapag nasa mode na ito ka na, puwede kang magpalipat-lipat sa 4KB at 16KB mode pagkatapos ng isang pag-reboot lang. Madi-disable ang ilang feature sa mga mode na ito, kaya posibleng hindi gumana ang ilang application. Para ibalik sa production mode ang device, kakailanganin mong bumalik sa 4KB mode at pagkatapos ay i-lock ang bootloader, na magfa-factory reset sa device. Pagkatapos mag-boot ng device sa Android, i-disable ang pag-unlock ng OEM sa Mga opsyon ng developer. Mawa-wipe sa filesystem ang device at gagawing ext4 ang filesystem pagkatapos magkumpirma. Pagkatapos nito, bumalik para i-enable ulit ang 16KB."</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Kailangang i-convert sa ext4 ang partition ng data ng device na ito bago magamit ang 16KB na opsyon ng developer. Hindi magagarantiya ang integridad ng software, at posibleng malagay sa panganib ang anumang data na naka-store sa telepono habang naka-unlock ang bootloader. Kailangan ng isa pang pag-reboot pagkatapos nito para sa pag-activate ng 16KB na opsyon. Kapag nasa mode na ito ka na, puwede kang magpalipat-lipat sa 4KB at 16KB mode pagkatapos ng isang pag-reboot lang. Madi-disable ang ilang feature sa mga mode na ito, kaya posibleng hindi gumana ang ilang application. Para ibalik sa production mode ang device, kakailanganin mong bumalik sa 4KB mode at pagkatapos ay i-lock ang bootloader, na magfa-factory reset sa device. Pagkatapos mag-boot ng device sa Android, i-disable ang pag-unlock ng OEM sa Mga opsyon ng developer. Mawa-wipe ang device at gagawing ext4 ang filesystem pagkatapos magkumpirma. Pagkatapos nito, bumalik para i-enable ulit ang 16KB."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Burahin ang lahat ng data"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Hindi na-reformat at na-wipe ang partition ng data sa ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Kinakailangan ang Pag-unlock ng Bootloader para sa 16KB Mode"</string>
diff --git a/res/values-tr/arrays.xml b/res/values-tr/arrays.xml
index 0f41472..1253374 100644
--- a/res/values-tr/arrays.xml
+++ b/res/values-tr/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 9a04e31..106f217 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Cihazla bağlantı kesilsin mi?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Yeni cihaz eşle"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Yarın otomatik olarak tekrar aç"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Sağ kulağı eşle"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Sol kulağı eşle"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Diğer kulağınızı eşleyin"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Sol kulağı eşle"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"İşitme cihazı ayarları"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Kısayol, işitme cihazı uyumluluğu"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Hazır Ayarlar"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Hazır Ayar"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Hazır ayar güncellenemedi"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Ses çıkışı"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Ses çıkışı hakkında"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"İptal"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Hayır, teşekkürler"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Şimdi değil"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Kabul ediyorum"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Daha Fazla"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Yüzünüzle kilidi açın"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Unutmayın"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Telefonunuzun kilidini açmak veya bir satın alma işlemini onaylamak için parmak izinizi kullanın.\n\nNot: Bu cihazın kilidini açmak için parmak izinizi kullanamazsınız. Daha fazla bilgi için kuruluşunuzun yöneticisine başvurun."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"İptal"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Hayır, teşekkürler"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Şimdi değil"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Kabul ediyorum"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Parmak izi atlansın mı?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Parmak izi kurulumu yalnızca birkaç dakika sürer. Bu adımı atlarsanız parmak izinizi daha sonra ayarlardan ekleyebilirsiniz."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Cihaz her kilitlendiğinde"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Ekran zaman aşımından 5 dakika sonra"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Yalnızca cihaz yeniden başlatıldıktan sonra"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Özel alanınızda farklı bir kilit kullanıyorsanız uygulamaları özel alanınızda açmak için kimliğinizi doğrulamanız gerekebilir."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Özel alanı gizle"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Kilitli olduğunda özel alanı gizleyin"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Başkalarının, cihazınızda özel alan olduğunu bilmesini önlemek için bunu uygulama listenizde gizleyin"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Kur"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Özel alan"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Özel uygulamaları ayrı bir alanda gizleyin veya kilitleyin. Daha fazla güvenlik için ayrı bir Google Hesabı kullanın."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Özel alanınızı kurun"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Alanınız için bir Google Hesabı seçin"</b>\n"Ayrı bir hesap kullanmanız, senkronize edilmiş dosyalar, fotoğraflar ve e-postaların alanınızın dışında görünmesini önler"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"İşleyiş şekli"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Alanınız için bir Google Hesabı oluşturun"</b>\n"Özel bir hesap kullanıyorsanız bu hesap; senkronize edilen dosyaların, fotoğrafların ve e-postaların alanınızın dışında görünmesini engeller"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Kilit ayarlayın"</b>\n"Alanınızı kilitleyerek diğer kullanıcıların açmasını önleyin"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Uygulama yükleyin"</b>\n"Özel alanınızın kendi Play Store\'u olduğundan uygulamaları kolayca yükleyebilirsiniz."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Özel alanınız kilitli olduğunda izin yöneticisi, gizlilik kontrol paneli ve diğer ayarlarda özel alanınızdaki uygulamalar görünmez.\n\nÖzel alanınız yeni bir cihaza geri yüklenemez. Başka bir cihazda kullanmak istiyorsanız ilgili cihazda yeni bir özel alan kurmanız gerekir.\n\nCihazınızı bilgisayara bağlayan veya cihazınıza kötü amaçlı uygulamalar yükleyen kişiler özel alanınıza erişebilir."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Uygulamaları yükleyin"</b>\n"Alanınızda gizli tutmak istediğiniz uygulamaları yükleyin"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Unutmayın"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Alanınızı kilitlediğinizde uygulamalar durur"</b>\n"Alanınızı kilitlediğinizde bu alandaki uygulamalar durdurulur ve size artık bildirim göndermez"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Özel alan hakkında daha fazla bilgi"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Bu işlem birkaç dakika sürecek"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Özel alan kuruluyor…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Yalnızca özel alanda kullanılacak yeni bir kilit ayarlayabilir veya cihazınızın kilidini açmak için kullandığınız kilidin aynısını kullanabilirsiniz"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Ekran kilidi kullan"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Yeni kilit seç"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Bir saniye…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Bir saniye…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Kurulum tamamlandı."</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Özel alanınıza erişmek için uygulama listenize gidip aşağı kaydırın"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Bitti"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Özel alanınız için PIN ayarlayın"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Özel alanınız için şifre ayarlayın"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Özel alanınız için desen ayarlayın"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Verilerinizin gizliliğini korumak için bir Google Hesabı oluşturun"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Sonraki ekranda özel alanınızda kullanacağınız hesapta oturum açabilirsiniz"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Aşağıdaki gibi verilerin özel alan dışında görünmesini durduracak özel bir hesap oluşturun:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Senkronize edilmiş fotoğraf, dosya, e-posta, kişi, takvim etkinliği ve diğer veriler"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Uygulama indirme geçmişi ve öneriler"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Tarama geçmişi, yer işaretleri ve kayıtlı şifreler"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Özel alan uygulamalarındaki etkinliğinizle ilgili önerilen içerik"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Anladım"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Kilitle"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Gizle"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"<xliff:g id="COUNT">%d</xliff:g> adede kadar parmak izi ekleyebilirsiniz"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Sistem sertifikası"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Sertifika sabitleme"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Ağ ayrıntıları"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Bu ağda, WEP adında güvenliği düşük eski bir güvenlik protokolü kullanılıyor"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Alt ağ maskesi"</string>
<string name="server_name_title" msgid="7257095185810299066">"Sunucu adı"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Tür"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Cihaz kablosuz MAC adresi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth adresi"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Seri numarası"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Açık kalma süresi"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Çalışma süresi"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Üretim tarihi"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"İlk kullanıldığı tarih"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Şarj döngü sayısı"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Sağ alt tarafa dokunma"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Daha fazlası için dokunmatik alanın sağ alt köşesine dokunun"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"İşaretçi hızı"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"İşaretçi dolgu stili"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"İşaretçi dolgu stilini siyah yapın"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"İşaretçi dolgu stilini yeşil yapın"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"İşaretçi dolgu stilini sarı yapın"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"İşaretçi dolgu stilini pembe yapın"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"İşaretçi dolgu stilini mavi yapın"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Dokunmatik alan hareketlerini öğren"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"dokunmatik yüzey, dokunma yüzeyi, fare, imleç, kaydırma, sağ tıklama, tıklama, işaretçi"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"sağ tıklama, dokunma"</string>
@@ -2767,7 +2771,7 @@
<string name="device_admin_settings_title" msgid="31392408594557070">"Cihaz yöneticisi ayarları"</string>
<string name="active_device_admin_msg" msgid="7744106305636543184">"Cihaz yönetimi uygulaması"</string>
<string name="remove_device_admin" msgid="3143059558744287259">"Bu cihaz yönetimi uygulamasını devre dışı bırak"</string>
- <string name="uninstall_device_admin" msgid="4481095209503956916">"Uygulamanın yüklemesini kaldır"</string>
+ <string name="uninstall_device_admin" msgid="4481095209503956916">"Uygulamayı kaldır"</string>
<string name="remove_and_uninstall_device_admin" msgid="707912012681691559">"Devre dışı bırak ve yüklemesini kaldır"</string>
<string name="select_device_admin_msg" msgid="5501360309040114486">"Cihaz yönetimi uygulamaları"</string>
<string name="no_device_admins" msgid="8888779888103079854">"Kullanılabilir cihaz yönetimi uygulaması yok"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Yok}=1{1 program ayarlandı}other{# program ayarlandı}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Rahatsız Etmeyin"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Öncelik Modları"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Yalnızca önemli kişiler ve uygulamalardan gelen bildirimleri alın"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Kesintileri sınırlayın"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Rahatsız Etmeyin\'i açın"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Takvim ekleyin"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Takviminizi kullanın"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Program"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Program"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Telefonun sesini belirli zamanlarda kapat"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Rahatsız Etmeyin kurallarını ayarlayın"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Bu uygulama, gelişmiş ayarları desteklemiyor"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Diğer ayarlar"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Bu uygulamada daha fazla ayar mevcut"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Dinlenme"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Dinlenmeyi Kullanın"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Kısa süre içinde çok sayıda bildirim aldığınızda cihazınız dikkat dağıtıcı sesleri ve ekrandaki pop-up\'ları en aza indirir. Aramalar, alarmlar ve öncelikli görüşmeler normal şekilde uyarı göndermeye devam eder. Gönderilen tüm bildirimleri gölgede kolayca bulabilirsiniz."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"İş profillerine uygula"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"İş profili uygulamalarına uygulayın"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR yardımcı hizmetleri"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Seçili uygulamalar"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Yok"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Tümü"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Uygulamaların geçersiz kılmasına izin ver"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Kesintiye neden olabilecek uygulamalar"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Daha fazla uygulama seçin"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Saat {time} olana kadar bir saat boyunca yalnızca alarmlar seçeneğine geç}other{Saat {time} olana kadar # saat boyunca yalnızca alarmlar seçeneğine geç}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Yalnızca şu saate kadar alarmlara geç: <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Her zaman kes seçeneğine değiştir"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Uyarı"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Kapat"</string>
<string name="device_feedback" msgid="5351614458411688608">"Bu cihazla ilgili geri bildirim gönder"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Sol"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Sağ"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Kılıf"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Pil"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Ayarlar Paneli"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Masaüstü modunu zorunlu kıl"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"İkincil ekranlarda deneysel masaüstü modunu zorunlu kıl"</string>
@@ -4846,16 +4870,16 @@
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"16 KB çekirdek çalıştıran sayfadan bağımsız moddasınız ve 4 KB moduna geçiş yapıyorsunuz. Bu modda yazılım bütünlüğü garanti edilemez ve bootloader\'ın kilidi açıkken telefonda saklanan veriler risk altında olabilir. Bu işlem, cihazı yeniden başlatır. Bu modlarda bazı özellikler devre dışı bırakılacağı için bazı uygulamalar çalışmayabilir. Cihazı üretim moduna döndürmek için bootloader\'ı kilitlemeniz gerekir. Bu durumda cihaz fabrika ayarlarına sıfırlanır. Cihaz başarılı bir şekilde Android\'de başlatıldıktan sonra Geliştirici seçeneklerinde OEM kilit açma özelliğini devre dışı bırakın."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Çekirdek, 16 KB sayfalarla uyumlu çekirdeğe güncellenemedi."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Değişiklik uygulanıyor"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Cihaz, ext4 olarak yeniden biçimlendirilsin mi? (16 KB modu için gereklidir)"</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Ext4 olarak biçimlendirilsin mi? (16 KB modu için gereklidir)"</string>
<string name="confirm_format_ext4_text" msgid="7940372488624630214">"16 KB geliştirici seçeneğini kullanmadan önce bu cihazın veri bölümünün ext4\'e dönüştürülmesi gerekir. Bu modda yazılım bütünlüğü garanti edilemez ve bootloader\'ın kilidi açıkken telefonda saklanan veriler risk altında olabilir. 16 KB seçeneğini etkinleştirdikten sonra bir kez daha yeniden başlatma yapılması gerekir. Bu moddayken tek bir yeniden başlatma işlemiyle 4 KB ve 16 KB modları arasında geçiş yapabilirsiniz. Bu modlarda bazı özellikler devre dışı bırakılacağı için bazı uygulamalar çalışmayabilir. Cihazı üretim moduna döndürmek için 4 KB moduna geri dönmeniz ve bootloader\'ı kilitlemeniz gerekir. Bu durumda cihaz fabrika ayarlarına sıfırlanır. Cihaz başarılı bir şekilde Android\'de başlatıldıktan sonra Geliştirici seçeneklerinde OEM kilit açma özelliğini devre dışı bırakın. Onayınızın ardından cihaz temizlenecek ve dosya sistemi ext4 olarak değiştirilecektir. Bu işlem tamamlandıktan sonra lütfen geri gelerek 16 KB modunu tekrar etkinleştirin."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Tüm verileri sil"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Veriler temizlenemedi ve ext4 olarak yeniden biçimlendirilemedi."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"16 KB modu için bootloader kilidinin açılması gerekir"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"16 KB geliştirici seçeneğini kullanmadan önce bu cihazın bootloader\'ının kilidinin açılması gerekir. Bu modda yazılım bütünlüğü garanti edilemez ve bootloader\'ın kilidi açıkken telefonda saklanan veriler risk altında olabilir. 16 KB modu etkinleştirildiğinde tüm kullanıcı verileri ve ayarlar silinir. Bootloader\'ın kilidi açıldıktan sonra 16 KB seçeneğinin etkinleştirilmesi için iki kez yeniden başlatma yapılması gerekir. Bu moddayken tek bir yeniden başlatma işlemiyle 4 KB ve 16 KB modları arasında geçiş yapabilirsiniz. Bu modlarda bazı özellikler devre dışı bırakılacağı için bazı uygulamalar çalışmayabilir. Cihazı üretim moduna döndürmek için 4 KB moduna geri dönmeniz ve cihazda OEM/bootloader kilidini etkinleştirmeniz gerekir. Bu durumda cihaz fabrika ayarlarına sıfırlanır. Lütfen bootloader\'ın kilidini açıp tekrar deneyin. Bu işlemle ilgili talimatları görmek için <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a> adresine gidin."</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4 KB sayfadan bağımsız modu kullanma"</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"4 KB sayfadan bağımsız modunu kullanıyorsunuz"</string>
<string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Sayfadan bağımsız moddaki 4 KB modundasınız. Bu modda yazılım bütünlüğü garanti edilemez ve bootloader\'ın kilidi açıkken telefonda saklanan veriler risk altında olabilir. Bu modlarda bazı özellikler devre dışı bırakılacağı için bazı uygulamalar çalışmayabilir. Üretim moduna tekrar girmek için cihazın bootloader\'ını kilitlemeniz gerekir. Daha fazla bilgi için dokunun."</string>
<string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Sayfadan bağımsız moddaki 4 KB modundasınız. Bu modda yazılım bütünlüğü garanti edilemez ve bootloader\'ın kilidi açıkken telefonda saklanan veriler risk altında olabilir. Bu modlarda bazı özellikler devre dışı bırakılacağı için bazı uygulamalar çalışmayabilir. Üretim moduna tekrar girmek için cihazın bootloader\'ını kilitlemeniz gerekir. Bu durumda cihaz tekrar fabrika ayarlarına sıfırlanır ve üretim ayarlarına geri döner. Cihaz başarılı bir şekilde Android\'de başlatıldıktan sonra Geliştirici seçeneklerinde OEM kilit açma özelliğini devre dışı bırakın. Cihaz Android\'de başlatılamıyorsa veya kararsızsa cihazı <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> adresindeki en güncel fabrika ayarı görüntüleriyle yeniden yükleyin veya <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> adresine gidip \"Cihazı Temizle\", \"Bootloader\'ı Kilitle\" ve \"Tüm bölümleri zorla yükle\"yi seçin."</string>
- <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16 KB sayfadan bağımsız modu kullanma"</string>
+ <string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"16 KB sayfadan bağımsız modunu kullanıyorsunuz"</string>
<string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Sayfadan bağımsız moddaki 16 KB modundasınız. Bu modda yazılım bütünlüğü garanti edilemez ve bootloader\'ın kilidi açıkken telefonda saklanan veriler risk altında olabilir. Bu modlarda bazı özellikler devre dışı bırakılacağı için bazı uygulamalar çalışmayabilir. Üretim moduna tekrar girmek için 4 KB moduna geçtikten sonra cihazın bootloader\'ını kilitlemeniz gerekir. Daha fazla bilgi için dokunun."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Sayfadan bağımsız moddaki 16 KB modundasınız. Bu modda yazılım bütünlüğü garanti edilemez ve bootloader\'ın kilidi açıkken telefonda saklanan veriler risk altında olabilir. Bu modlarda bazı özellikler devre dışı bırakılacağı için bazı uygulamalar çalışmayabilir. Üretim moduna tekrar girmek için 4 KB moduna geçtikten sonra cihazın bootloader\'ını kilitlemeniz gerekir. Bu durumda cihaz tekrar fabrika ayarlarına sıfırlanır ve üretim ayarlarına geri döner. Cihaz başarılı bir şekilde Android\'de başlatıldıktan sonra Geliştirici seçeneklerinde OEM kilit açma özelliğini devre dışı bırakın. Cihaz Android\'de başlatılamıyorsa veya kararsızsa cihazı <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> adresindeki en güncel fabrika ayarı görüntüleriyle yeniden yükleyin veya <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> adresine gidip \"Cihazı Temizle\", \"Bootloader\'ı Kilitle\" ve \"Tüm bölümleri zorla yükle\"yi seçin."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"16 KB Sayfadan Bağımsız Mod"</string>
@@ -4908,7 +4932,7 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"Diğer uygulamaların üzerinde görüntülenebilecek uygulamaların Ayarlar ekranlarıyla yer paylaşımlı olarak gösterilmesine izin verir"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"Sahte Modem\'e izin ver"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Bu cihazın, enstrümantasyon testi için Sahte Modem hizmetini çalıştırmasına izin verin. Bu hizmeti, telefonunuzu normal kullanırken etkinleştirmeyin"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Ekran paylaşımı korumalarını devre dışı bırakın"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Ekran paylaşımı korumalarını devre dışı bırak"</string>
<string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Gelecekteki ekran paylaşımı oturumlarında hassas uygulama içeriklerine yönelik sistem korumalarını kapatın"</string>
<string name="media_controls_title" msgid="403271085636252597">"Medya"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Medya oynatıcıyı sabitle"</string>
@@ -5149,7 +5173,7 @@
<string name="background_install_title" msgid="607913515188276168">"Arka planda yüklenen uygulamalar"</string>
<string name="background_install_summary" msgid="3890296129543309666">"Cihaz üreticiniz, cihazınıza arka planda uygulama yükleyebilir ya da operatörünüzün ve diğer iş ortaklarının yüklemesine izin verebilir.\n\nBurada listelenen uygulamalar, cihazınızın normal şekilde çalışması için gerekli değildir. İstemediğiniz uygulamaları kaldırabilirsiniz."</string>
<string name="background_install_feature_list_no_entry" msgid="2071343281272266154">"Arka planda yüklenen uygulama yok"</string>
- <string name="background_install_uninstall_button_description" msgid="1189649052911501249">"Uygulamanın yüklemesini kaldır"</string>
+ <string name="background_install_uninstall_button_description" msgid="1189649052911501249">"Uygulamayı kaldır"</string>
<string name="background_install_before" msgid="8608614957688912715">"{count,plural, =1{Son # ay içinde yüklenen uygulamalar}other{Son # ay içinde yüklenen uygulamalar}}"</string>
<string name="background_install_after" msgid="7983488897570908149">"{count,plural, =1{# aydan daha uzun süre önce yüklenen uygulamalar}other{# aydan daha uzun süre önce yüklenen uygulamalar}}"</string>
<string name="aspect_ratio_title" msgid="2451826875939676101">"En boy oranı"</string>
@@ -5252,7 +5276,7 @@
<string name="audio_sharing_stream_settings_title" msgid="1374391898689242036">"Ses yayını ayarları"</string>
<string name="audio_sharing_stream_name_title" msgid="8156859441897180940">"Ad"</string>
<string name="audio_sharing_stream_password_title" msgid="7026649168165764602">"Şifre"</string>
- <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"Uyumluluğu iyileştirin"</string>
+ <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"Uyumluluğu iyileştir"</string>
<string name="audio_sharing_stream_compatibility_description" msgid="8170241188606110963">"Ses kalitesini azaltarak işitme cihazı gibi bazı cihazların bağlanmasına yardımcı olur"</string>
<string name="audio_sharing_stream_compatibility_disabled_description" msgid="2586408353546825682">"Uyumluluğu yapılandırmak için ses paylaşımını kapatır"</string>
<string name="audio_sharing_nearby_audio_title" msgid="4795438407040677177">"Yakındaki sesleri dinleyin"</string>
diff --git a/res/values-uk/arrays.xml b/res/values-uk/arrays.xml
index cf72bb8..3ac8a82 100644
--- a/res/values-uk/arrays.xml
+++ b/res/values-uk/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 7115219..7d1be2e 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Від’єднати пристрій?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Підключити новий пристрій"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"Bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Автоматично ввімкнути знову завтра"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Підключити правий"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Підключити лівий"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Підключити другий"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Підключити лівий"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Налаштування слухового апарата"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Ярлик, сумісність зі слуховими апаратами"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Набори налаштувань"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Набір налаштувань"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Не вдалось оновити набір налаштувань"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Аудіовихід"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Про аудіовихід"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Скасувати"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Ні, дякую"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Не зараз"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Погоджуюся"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Більше"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Розблоковуйте обличчям"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Важливо"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Розблоковуйте телефон або схвалюйте покупки відбитком пальця.\n\nПримітка. Цей пристрій не можна розблоковувати відбитком пальця. Щоб дізнатися більше, зв’яжіться з адміністратором своєї організації."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Скасувати"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Ні, дякую"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Не зараз"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Прийняти"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Пропустити?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Налаштування відбитка пальця триває кілька хвилин. Якщо ви пропустите цей крок, відбиток пальця можна додати пізніше в налаштуваннях."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Як це працює"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Функція розблокування відбитком пальця створює унікальну модель вашого відбитка, щоб підтверджувати вашу особу. Для цього під час налаштування потрібно створити зображення свого відбитка пальця в різних положеннях."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Функція розблокування відбитком пальця створює унікальну модель відбитка вашої дитини, щоб підтверджувати її особу. Для цього дитині потрібно зберегти зображення свого відбитка пальця в різних положеннях."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Рекомендуємо використовувати захисну плівку чи скло, що мають позначку \"Створено для Google\". Якщо вони не матимуть такої позначки, відбиток пальця може не розпізнаватися."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Рекомендуємо використовувати захисну плівку чи скло, що мають позначку Made for Google. Якщо вони не матимуть такої позначки, відбиток пальця може не розпізнаватися."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Рекомендуємо використовувати захисну плівку чи скло, що мають позначку \"Створено для Google\". Якщо вони не матимуть такої позначки, відбиток пальця дитини може не розпізнаватися."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Розблокування годинником"</string>
@@ -556,8 +557,8 @@
<string name="private_space_biometric_summary" msgid="4403837276018724581">"Натисніть, щоб налаштувати"</string>
<string name="private_space_fingerprint_unlock_title" msgid="3614016453395789051">"Розблокування відбитком пальця для приватного простору"</string>
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Фейс-контроль для приватного простору"</string>
- <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Фейс-контроль і розблокування відбитком пальця для приватного простору"</string>
- <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Налаштуйте розблокування відбитком пальця для приватного простору"</string>
+ <string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Фейс-контроль і відбиток пальця для приватного простору"</string>
+ <string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Налаштуйте відбиток пальця для приватного простору"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"За допомогою відбитка пальця ви можете розблоковувати приватний простір або підтверджувати свою особу (наприклад, щоб входити в додатки або схвалювати покупки)"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Ваш приватний простір може бути розблоковано навіть без вашого бажання (наприклад, якщо хтось прикладе телефон до вашого пальця)."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Розблоковуйте приватний простір або схвалюйте покупки за допомогою відбитка пальця"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Щоразу, коли пристрій блокується"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 хвилин після часу вимкнення екрана"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Лише після перезапуску пристрою"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Приховування приватного простору"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Приховувати приватний простір, коли його заблоковано"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Приховайте приватний простір зі списку додатків, щоб ніхто не дізнався про його наявність на пристрої"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Налаштувати"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Приватний простір"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Приховуйте або блокуйте приватні додатки в окремому просторі. Задля додаткової безпеки використовуйте окремий обліковий запис Google."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Налаштуйте приватний простір"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Виберіть обліковий запис Google для свого простору"</b>\n"Використовуйте окремий обліковий запис, щоб файли, фотографії і електронна пошта не синхронізувалися за межами вашого простору."</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Як це працює"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Створіть обліковий запис Google для свого простору"</b>\n"Якщо ви використовуватимете окремий обліковий запис, то файли, фотографії і електронна пошта не синхронізуватимуться за межами вашого простору"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Налаштуйте блокування"</b>\n"Блокуйте свій простір, щоб інші користувачі не мали доступу до нього."</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Установіть додатки"</b>\n"У вашому приватному просторі є власний Play Маркет, щоб ви могли легко встановлювати додатки."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Коли приватний простір заблоковано, його додатки не відображатимуться в менеджері дозволів, на панелі керування дозволами й в інших налаштуваннях.\n\nПриватний простір не можна відновити на іншому пристрої. Якщо ви хочете використовувати приватний простір на іншому пристрої, потрібно налаштувати новий приватний простір.\n\nДо вашого приватного простору може отримати доступ будь-який користувач, установивши на вашому пристрої шкідливі додатки або підключивши його до комп’ютера."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Установіть додатки"</b>\n"Установіть додатки, які хочете приватно використовувати у своєму просторі"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Важливо"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Під час блокування простору додатки припиняють роботу"</b>\n"Якщо ви заблокуєте свій простір, включені в нього додатки припинять роботу й ви не отримуватимете сповіщень від них"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Докладніше про приватний простір"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Це може зайняти кілька хвилин"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Налаштування приватного простору…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Ви можете налаштувати новий спосіб розблокування лише для приватного простору або використовувати той самий, що й для розблокування пристрою"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Доступ розблокуванням екрана"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Вибрати новий спосіб розблокування"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Зачекайте…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Зачекайте…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Готово."</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Щоб знайти свій приватний простір, перейдіть до списку додатків і прокрутіть його вниз"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Готово"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Створіть PIN-код для особистого простору"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Установіть пароль особистого простору"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Налаштуйте ключ для особистого простору"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Створіть обліковий запис Google, щоб забезпечити конфіденційність даних"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"На наступному екрані ввійдіть в обліковий запис, який використовуватиметься для приватного простору"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Створіть окремий обліковий запис, щоб дані не синхронізувалися за межами приватного простору, наприклад:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Синхронізовані фотографії, файли, електронні листи, контакти, події в календарі тощо"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Історія завантажень додатків і рекомендації"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Історія вебперегляду, закладки й збережені паролі"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Пропонований контент, пов’язаний із вашими діями в додатках приватного простору"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Заблокувати"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Приховати"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Можна додати максимум стільки відбитків: <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -796,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{Має містити принаймні один символ, який не є літерою}one{Має містити принаймні # символ, який не є літерою}few{Має містити принаймні # символи, які не є літерами}many{Має містити принаймні # символів, які не є літерами}other{Має містити принаймні # символу, які не є літерами}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{Має містити принаймні один символ, який не є цифрою}one{Має містити принаймні # символ, який не є цифрою}few{Має містити принаймні # символи, які не є цифрами}many{Має містити принаймні # символів, які не є цифрами}other{Має містити принаймні # символу, які не є цифрами}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"Адміністратор пристрою не дозволяє використовувати останній пароль"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Цифри в порядку зростання чи спадання та повторювані цифри заборонені"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Цифри в порядку зростання чи спадання й повторювані цифри заборонені"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"Підтвердити"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"Очистити"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"Параметри блокування екрана змінено. Спробуйте ввести нові дані."</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Сертифікат системи"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Закріплення сертифікатів"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Інформація про мережу"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"У цій мережі використовується застарілий і менш надійний протокол безпеки WEP"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Маска підмережі"</string>
<string name="server_name_title" msgid="7257095185810299066">"Назва сервера"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Тип"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"MAC-адреса Wi‑Fi пристрою"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Адреса Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Серійний номер"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Час із моменту ввімкнення"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Безперервна робота"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Дата виготовлення"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Дата першого використання"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Кількість циклів"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Дотик у нижньому правому куті"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Торкніться правого нижнього кута, щоб переглянути інші опції"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Швидкість курсора"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Стиль заповнення курсора"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Змінити стиль курсора на чорний"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Змінити стиль курсора на зелений"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Змінити стиль курсора на жовтий"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Змінити стиль курсора на рожевий"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Змінити стиль курсора на синій"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Жести сенсорної панелі: докладніше"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"сенсорна панель, трекпад, миша, курсор, прокрутити, гортати, права кнопка, натиснути, вказівник"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"натиснути правою кнопкою миші, натиснути"</string>
@@ -2703,7 +2706,7 @@
<string name="cellular_security_settings_title" msgid="7779141923670352595">"Безпека мобільної мережі"</string>
<string name="cellular_security_notifications" msgid="4619728340612184944">"Сповіщення"</string>
<string name="cellular_security_notifications_controller_title" msgid="4853056963523277847">"Сповіщення мережі"</string>
- <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"Отримуйте сповіщення, коли пристрій підключається до незашифрованої мережі або коли мережа записує унікальний ідентифікатор вашого пристрою чи SIM-карти"</string>
+ <string name="cellular_security_notifications_controller_summary" msgid="8339863845393759958">"Отримувати сповіщення, коли пристрій підключається до незашифрованої мережі або коли мережа записує унікальний ідентифікатор вашого пристрою чи SIM-карти"</string>
<string name="cellular_security_settings_encryption_title" msgid="4013084091666375780">"Шифрування"</string>
<string name="cellular_security_network_generations_title" msgid="2343026988833783854">"Покоління мереж"</string>
<string name="cellular_security_network_generations_summary" msgid="139087814553929402">"Кожну вставлену SIM-карту можна налаштувати для підключення лише до мереж, що підтримують 3G, 4G й 5G. SIM-карта не підключатиметься до старіших незахищених мереж 2G. Це налаштування обмежуватиме можливість зв’язку, якщо доступна лише мережа 2G. В екстрених випадках можна використовувати 2G."</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Немає}=1{Налаштовано 1 розклад}one{Налаштовано # розклад}few{Налаштовано # розклади}many{Налаштовано # розкладів}other{Налаштовано # розкладу}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Не турбувати"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Режими пріоритету"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Отримуйте сповіщення лише від важливих людей і додатків"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Обмеження сповіщень"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Увімкнути режим \"Не турбувати\""</string>
@@ -3330,13 +3335,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Редагувати"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Розклад"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Розклад"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Вмикати автоматично"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Додати календар"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Використовувати календар"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Розклад"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Розклад"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Вимикати звук телефона в певний час"</string>
@@ -3454,7 +3461,7 @@
<string name="conversation_notifs_category" msgid="2549844862379963273">"Розмови"</string>
<string name="general_notification_header" msgid="3669031068980713359">"Керування"</string>
<string name="app_notification_field" msgid="3208079070539894909">"Сповіщення додатків"</string>
- <string name="app_notification_field_summary" msgid="5981393613897713471">"Керуйте сповіщеннями окремих додатків"</string>
+ <string name="app_notification_field_summary" msgid="5981393613897713471">"Керувати сповіщеннями окремих додатків"</string>
<string name="advanced_section_header" msgid="6478709678084326738">"Загальні"</string>
<string name="profile_section_header" msgid="4970209372372610799">"Робочі сповіщення"</string>
<string name="profile_section_header_for_advanced_privacy" msgid="8385775428904838579">"Робочий профіль"</string>
@@ -3572,10 +3579,10 @@
<string name="notifications_sent_weekly" msgid="7895656213187555346">"{count,plural, =1{Близько # сповіщення на тиждень}one{Близько # сповіщення на тиждень}few{Близько # сповіщень на тиждень}many{Близько # сповіщень на тиждень}other{Близько # сповіщення на тиждень}}"</string>
<string name="notifications_sent_never" msgid="9081278709126812062">"Ніколи"</string>
<string name="manage_notification_access_title" msgid="4154723216570646451">"Сповіщення: озвучення, відповіді й керування"</string>
- <string name="manage_notification_access_summary" msgid="2907135226478903997">"Укажіть, які додатки й пристрої можуть переглядати сповіщення"</string>
+ <string name="manage_notification_access_summary" msgid="2907135226478903997">"Вибрати, які додатки й пристрої можуть переглядати сповіщення"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8643809206612366067">"Доступ до сповіщень робочого профілю заблоковано"</string>
<string name="notification_assistant_title" msgid="5889201903272393099">"Покращені сповіщення"</string>
- <string name="notification_assistant_summary" msgid="1957783114840908887">"Отримуйте пропозиції дій, відповідей тощо"</string>
+ <string name="notification_assistant_summary" msgid="1957783114840908887">"Отримувати пропозиції дій, відповідей тощо"</string>
<string name="no_notification_assistant" msgid="2533323397091834096">"Немає"</string>
<string name="no_notification_listeners" msgid="2839354157349636000">"Установлені додатки не запитували доступу до сповіщень."</string>
<string name="notification_access_detail_switch" msgid="46386786409608330">"Надати доступ до сповіщень"</string>
@@ -3608,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Цей додаток не підтримує розширені налаштування"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Інші налаштування"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Інші налаштування доступні в цьому додатку"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Зменшення гучності сповіщень"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Використовувати зменшення гучності сповіщень"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Коли ви отримуєте багато повідомлень за короткий проміжок часу, пристрій зводить до мінімуму сповіщення зі звуком і появу спливаючих вікон на екрані. Звук дзвінків, будильників і важливих розмов не зміниться, а всі надіслані сповіщення можна буде переглянути в Shade."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Застосувати до робочих профілів"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Застосувати до додатків робочого профілю"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Допоміжні VR-сервіси"</string>
@@ -3746,7 +3756,7 @@
<string name="zen_mode_alarms_list" msgid="334782233067365405">"сигнали будильників"</string>
<string name="zen_mode_alarms_list_first" msgid="2780418316613576610">"Будильники"</string>
<string name="zen_mode_media" msgid="885017672250984735">"Звуки мультимедіа"</string>
- <string name="zen_mode_media_summary" msgid="7174081803853351461">"Звуки з відео, ігор та інших медіафайлів"</string>
+ <string name="zen_mode_media_summary" msgid="7174081803853351461">"Звуки з відео, ігор і інших медіафайлів"</string>
<string name="zen_mode_media_list" msgid="2006413476596092020">"мультимедіа"</string>
<string name="zen_mode_media_list_first" msgid="7824427062528618442">"Медіа"</string>
<string name="zen_mode_system" msgid="7301665021634204942">"Звуки під час дотику"</string>
@@ -3766,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Вибрані додатки"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Жодний"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Усі"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Дозволити додаткам замінювати режим \"Не турбувати\""</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Додатки, які можуть переривати"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Виберіть інші додатки"</string>
@@ -3802,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Активувати режим \"Лише будильник\" на одну годину до {time}}one{Активувати режим \"Лише будильник\" на # годину до {time}}few{Активувати режим \"Лише будильник\" на # години до {time}}many{Активувати режим \"Лише будильник\" на # годин до {time}}other{Активувати режим \"Лише будильник\" на # години до {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Активувати режим \"Лише будильник\" до <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Вибрати опцію \"Завжди надсилати\""</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Застереження"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Закрити"</string>
<string name="device_feedback" msgid="5351614458411688608">"Надіслати відгук про цей пристрій"</string>
@@ -4785,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Лівий"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Правий"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Футляр"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Акумулятор"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Панель налаштувань"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Примусово застосувати режим робочого столу"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Примусово застосувати експериментальний режим робочого столу на додаткових екранах"</string>
@@ -4851,17 +4870,17 @@
<string name="confirm_enable_4k_pages_text" msgid="155070605667160083">"Ви працюєте в режимі, незалежному від розміру сторінок, з ядром для сторінок розміром 16 КБ, і переходите в режим із ядром для сторінок розміром 4 KБ. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Пристрій перезапуститься. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернути пристрій у виробничий режим, вам буде потрібно заблокувати завантажувач операційної системи. Налаштування пристрою буде скинуто. Коли ОС Android завантажиться на пристрій, вимкніть розблокування завантажувача в параметрах розробника."</string>
<string name="toast_16k_update_failed_text" msgid="8888858987184345567">"Не вдалося оновити ядро до сумісного зі сторінками розміром 16 КБ."</string>
<string name="progress_16k_ota_title" msgid="2117218313875523741">"Застосування змін"</string>
- <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Переформатувати пристрій на ext4? (Обов’язково для режиму 16 КБ)"</string>
- <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Щоб використовувати опцію 16 КБ для розробників, розділ даних на цьому пристрої потрібно конвертувати в ext4. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Після цього для активації опції 16 КБ потрібно буде ще раз перезапустити пристрій. Коли ви перейдете в цей режим, то зможете переходити між режимами 4 КБ й 16 КБ, лише раз перезапускаючи пристрій. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернути пристрій у виробничий режим, вам буде потрібно повернутися в режим 4 КБ й заблокувати завантажувач операційної системи. Налаштування пристрою буде скинуто. Коли ОС Android завантажиться на пристрій, вимкніть розблокування завантажувача в параметрах розробника. Після підтвердження на пристрої буде очищено всі дані, а файлову систему буде змінено на ext4. Коли цей процес завершиться, знову ввімкніть опцію 16 КБ."</string>
+ <string name="confirm_format_ext4_title" msgid="6696191800594435577">"Для режиму 16 КБ пристрій слід відформатувати в ext4"</string>
+ <string name="confirm_format_ext4_text" msgid="7940372488624630214">"Щоб використовувати режим для розробників зі сторінками розміром 16 КБ, розділ даних на цьому пристрої потрібно відформувати у файловій системі ext4. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Після цього для активації режиму 16 КБ потрібно буде ще раз перезапустити пристрій. Коли ви перейдете в цей режим, то для зміни режиму розміру сторінки з 16 КБ на 4 КБ та навпаки пристрій потрібно буде перезапустити лише один раз. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернути пристрій у виробничий режим, вам буде потрібно повернутися в режим 4 КБ й заблокувати завантажувач операційної системи. Після цього налаштування пристрою буде скинуто. Коли ОС Android завантажиться, вимкніть розблокування завантажувача в параметрах розробника. Після підтвердження на пристрої буде очищено всі дані, а файлову систему буде змінено на ext4. Коли цей процес завершиться, знову ввімкніть режим із розміром сторінок 16 КБ."</string>
<string name="confirm_ext4_button_text" msgid="6045501984773738407">"Видалити всі дані"</string>
<string name="format_ext4_failure_toast" msgid="8059453995800471549">"Не вдалося очистити розділ даних і переформатувати на ext4."</string>
<string name="confirm_oem_unlock_for_16k_title" msgid="5374451262432025419">"Для режиму 16 КБ потрібно розблокувати завантажувач ОС"</string>
<string name="confirm_oem_unlock_for_16k_text" msgid="3583604865119937957">"Щоб використовувати режим для розробників зі сторінками розміром 16 КБ на цьому пристрої, необхідно розблокувати завантажувач операційної системи. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Під час активації режиму 16 КБ усі дані й налаштування користувача буде очищено. Коли завантажувач операційної системи буде розблоковано, для активації режиму 16 КБ потрібно буде перезапустити пристрій двічі. Коли ви перейдете в цей режим, то для зміни режиму розміру сторінки з 16 КБ на 4 КБ та навпаки пристрій потрібно буде перезапустити лише один раз. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернути пристрій у виробничий режим, вам буде потрібно повернутися в режим 4 КБ й заблокувати завантажувач операційної системи. Після цього налаштування пристрою буде скинуто. Докладні вказівки наведено на сторінці <a href=\"https://source.android.com/docs/core/architecture/bootloader/locking_unlocking\">https://source.android.com/docs/core/architecture/bootloader/locking_unlocking</a>"</string>
- <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Використання режиму, незалежного від розміру сторінок, з ядром для сторінок 4 КБ"</string>
- <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Ви працюєте в режимі, незалежному від розміру сторінок, з ядром для сторінок 4 КБ. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернутися у виробничий режим, вам потрібно заблокувати завантажувач операційної системи пристрою. Торкніться, щоб дізнатися більше."</string>
+ <string name="page_agnostic_4k_pages_title" msgid="1184703958249093215">"Режим, незалежний від розміру сторінок, з ядром 4 КБ"</string>
+ <string name="page_agnostic_4k_pages_text_short" msgid="2894243902906666242">"Ви працюєте в режимі, незалежному від розміру сторінок, з ядром 4 КБ. Цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач ОС розблоковано, можуть бути під загрозою. Деякі функції буде вимкнено, тому працюватимуть не всі додатки. Щоб повернутися у виробничий режим, заблокуйте завантажувач ОС пристрою."</string>
<string name="page_agnostic_4k_pages_text" msgid="8284806650260868833">"Ви працюєте в режимі, незалежному від розміру сторінок, з ядром для сторінок 4 КБ. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернутися у виробничий режим, вам потрібно заблокувати завантажувач операційної системи пристрою. Тоді налаштування пристрою знову буде скинуто й відновляться виробничі налаштування. Коли ОС Android завантажиться на пристрій, вимкніть розблокування завантажувача в параметрах розробника. Якщо ОС Android не завантажується на пристрій або працює нестабільно, відновіть на пристрої останні заводські образи (завантаживши їх звідси: <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a>) або перейдіть на сторінку <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> і виберіть \"Очистити пристрій\", \"Заблокувати завантажувач операційної системи\" й \"Примусово оновити всі розділи\"."</string>
<string name="page_agnostic_16k_pages_title" msgid="7762533464569818498">"Режим, незалежний від розміру сторінок, з ядром 16 КБ"</string>
- <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Ви працюєте в режимі, незалежному від розміру сторінок, з ядром для сторінок 16 КБ. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернутися у виробничий режим, вам потрібно знову перейти в режим 4 КБ й заблокувати завантажувач операційної системи пристрою. Торкніться, щоб дізнатися більше."</string>
+ <string name="page_agnostic_16k_pages_text_short" msgid="269039281591806585">"Ви працюєте в режимі, незалежному від розміру сторінок, з ядром 16 КБ. Цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач ОС розблоковано, можуть бути під загрозою. Деякі функції буде вимкнено, тому працюватимуть не всі додатки. Щоб повернутися у виробничий режим, заблокуйте завантажувач ОС пристрою."</string>
<string name="page_agnostic_16k_pages_text" msgid="6208765386837706582">"Ви працюєте в режимі, незалежному від розміру сторінок, з ядром для сторінок 16 КБ. У цьому режимі цілісність програмного забезпечення не гарантується, і будь-які дані, що зберігаються на телефоні, поки завантажувач операційної системи розблоковано, можуть бути під загрозою. Деякі функції в цих режимах буде вимкнено, тому зможуть працювати не всі додатки. Щоб повернутися у виробничий режим, вам потрібно знову перейти в режим 4 КБ й заблокувати завантажувач операційної системи пристрою. Тоді налаштування пристрою знову буде скинуто й відновляться виробничі налаштування. Коли ОС Android завантажиться, вимкніть розблокування завантажувача в параметрах розробника. Якщо ОС Android не завантажується або працює нестабільно, відновіть мікропрограму, завантаживши останні заводські образи на сайті <a href=\"https://developers.google.com/android/images\">https://developers.google.com/android/images</a> або перейдіть на сторінку <a href=\"https://flash.android.com/back-to-public\">https://flash.android.com/back-to-public</a> і виберіть \"Очистити пристрій\", \"Заблокувати завантажувач операційної системи\" й \"Примусово оновити всі розділи\"."</string>
<string name="page_agnostic_notification_channel_name" msgid="1658444283036376361">"Режим, незалежний від розміру сторінок, з ядром для сторінок 16 КБ"</string>
<string name="page_agnostic_notification_action" msgid="2309805437430150456">"Докладніше"</string>
@@ -4916,7 +4935,7 @@
<string name="allow_mock_modem" msgid="3832264806530479214">"Дозволити тестовий модем"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"Цьому пристрою буде дозволено запускати сервіс тестового модема для інструментального тестування. Не вмикайте цю функцію у звичайному режимі роботи телефона."</string>
<string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"Вимкнути захист під час показу екрана"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Вимкніть системний захист конфіденційного вмісту додатків для майбутніх сеансів показу екрана"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"Вимкнути системний захист конфіденційного вмісту додатків для майбутніх сеансів показу екрана"</string>
<string name="media_controls_title" msgid="403271085636252597">"Медіа"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"Закріпити медіапрогравач"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"Щоб швидко відновлювати відтворення, медіапрогравач залишається відкритим у швидких налаштуваннях"</string>
diff --git a/res/values-ur/arrays.xml b/res/values-ur/arrays.xml
index bf3531d..751e5ff 100644
--- a/res/values-ur/arrays.xml
+++ b/res/values-ur/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 90a7be0..c52e398 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"آلہ کو غیر منسلک کریں؟"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"نئے آلہ کا جوڑا بنائیں"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"بلوٹوتھ"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"کل دوبارہ خودکار طور پر آن کریں"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"دائیں کان کا جوڑا بنائیں"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"بائیں کان کا جوڑا بنائیں"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"اپنے دوسرے کان کا جوڑا بنائیں"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"بائیں کان کا جوڑا بنائیں"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"سماعت کے آلے کی ترتیبات"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"شارٹ کٹ، سماعتی آلہ کی موافقت"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"پہلے سے ترتیب شدہ"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"پہلے سے ترتیب شدہ"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"پہلے سے ترتیب شدہ کو اپ ڈیٹ نہیں کر سکے"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"آڈیو کا آؤٹ پُٹ"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"آڈیو آؤٹ پٹ کے بارے میں"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"منسوخ کریں"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"نہیں، شکریہ"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"ابھی نہیں"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"میں متفق ہوں"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"مزید"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"اپنے چہرے سے غیر مقفل کریں"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"یاد رکھیں"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"اپنا فون غیرمقفل کرنے یا خریداریاں منظور کرنے کے لیے اپنے فنگر پرنٹ کا استعمال کریں۔\n\nنوٹ: آپ اس آلہ کو غیرمقفل کرنے کے لیے اپنا فنگر پرنٹ استعمال نہیں کر سکتے۔ مزید معلومات کے لیے، اپنی تنظیم کے منتظم سے رابطہ کریں۔"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"منسوخ کریں"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"نہیں شکریہ"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"ابھی نہیں"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"میں متفق ہوں"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"فنگر پرنٹ کو نظر انداز کریں؟"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"فنگر پرنٹ سیٹ اپ میں صرف ایک یا دو منٹ لگتے ہیں۔ اگر آپ اسے نظر انداز کرتے ہیں، تو آپ بعد میں ترتیبات میں اپنا فنگر پرنٹ شامل کرسکتے ہیں۔"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"ہر بار جب آلہ مقفل ہوتا ہے"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"اسکرین ٹائم آؤٹ کے 5 منٹ بعد"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"صرف آلہ ری اسٹارٹ ہونے کے بعد"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"پرائیویٹ اسپیس چھپائیں"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"مقفل ہونے پر پرائیویٹ اسپیس چھپائیں"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"دیگر لوگوں کو یہ جاننے سے روکنے کیلئے کہ آپ کے آلے پر ایک پرائیویٹ اسپیس ہے، آپ اسے اپنی ایپس کی فہرست سے چھپا سکتے ہیں"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"سیٹ اپ کریں"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"پرائیویٹ اسپیس"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"نجی ایپس کو الگ اسپیس میں چھپائیں یا مقفل کریں۔ اضافی سیکیورٹی کے لیے ایک مخصوص Google اکاؤنٹ استعمال کریں۔"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"اپنی پرائیویٹ اسپیس کو سیٹ اپ کریں"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548">""<b>"اپنی اسپیس کے لیے ایک Google اکاؤنٹ منتخب کریں"</b>\n"ایک مخصوص اکاؤنٹ کا استعمال آپ کی اسپیس سے باہر ظاہر ہونے والی مطابقت پذیر فائلوں، تصاویر اور ای میلز کو روکنے میں مدد کرتا ہے"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"یہ کیسے کام کرتی ہے"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320">""<b>"اپنی اسپیس کیلئے ایک Google اکاؤنٹ بنائیں"</b>\n"اگر آپ ایک وقف شدہ اکاؤنٹ استعمال کرتے ہیں تو اس سے آپ کی اسپیس کے باہر دکھائی دینے والی سنک کردہ فائلز، تصاویر اور ای میلز کو روکنے میں مدد ملتی ہے"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"ایک قفل سیٹ کریں"</b>\n" دوسرے لوگوں کو اسے کھولنے سے روکنے کے لیے اپنی اسپیس کو مقفل کریں"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"ایپس انسٹال کریں"</b>\n" آپ کی پرائیویٹ اسپیس کا اپنا پلے اسٹور ہے تاکہ آپ آسانی سے ایپس انسٹال کر سکیں۔"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"جب آپ کی پرائیویٹ اسپیس مقفل ہوتی ہے تو آپ کی پرائیویٹ اسپیس میں موجود ایپس اجازتوں کے مینیجر، پرائیویسی ڈیش بورڈ اور دیگر ترتیبات میں ظاہر نہیں ہوں گی۔\n\nآپ کی پرائیویٹ اسپیس کو کسی نئے آلے پر بحال نہیں کیا جا سکتا۔ اگر آپ پرائیویٹ اسپیس کسی دوسرے آلے پر استعمال کرنا چاہتے ہیں تو آپ کو ایک اور پرائیویٹ اسپیس سیٹ اپ کرنے کی ضرورت ہوگی۔\n\nجو بھی آپ کے آلے کو کمپیوٹر سے منسلک کرتا ہے یا آپ کے آلے پر نقصان دہ ایپس انسٹال کرتا ہے وہ آپ کی پرائیویٹ اسپیس تک رسائی حاصل کر سکتا ہے۔"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"ایپس انسٹال کریں"</b>\n"وہ ایپس انسٹال کریں جنہیں آپ اپنی اسپیس میں نجی رکھنا چاہتے ہیں"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"یاد رکھیں"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"آپ کے اپنی اسپیس کو مقفل کرنے پر ایپس بند ہو جاتی ہیں"</b>\n"آپ کے اپنی اسپیس کو مقفل کرنے پر، آپ کی اسپیس میں موجود ایپس بند ہو جاتی ہیں اور آپ ان سے اطلاعات وصول نہیں کر سکیں گے"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"پرائیویٹ اسپیس کے بارے میں مزید جانیں"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"اس میں کچھ وقت لگے گا"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"نجی اسپیس سیٹ اپ کی جا رہی ہے…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"آپ صرف پرائیویٹ اسپیس کے لیے نیا لاک سیٹ کر سکتے ہیں، یا اسی لاک کا استعمال کر سکتے ہیں جسے آپ اپنے آلے کو اَن لاک کرنے کے لیے کرتے ہیں"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"اسکرین لاک استعمال کریں"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"نیا قفل منتخب کریں"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"بس ایک سیکنڈ…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"بس ایک سیکنڈ…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"سب کچھ تیار ہے!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"اپنی نجی اسپیس تلاش کرنے کے لیے، اپنی ایپس کی فہرست پر جائیں پھر نیچے اسکرول کریں"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"ہو گیا"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"اپنی پرائیویٹ اسپیس کے لیے PIN سیٹ کریں"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"اپنی پرائیویٹ اسپیس کے لیے پاس ورڈ سیٹ کریں"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"اپنی پرائیویٹ اسپیس کے لیے پیٹرن سیٹ کریں"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"اپنے ڈیٹا کو نجی رکھنے میں مدد کے لیے ایک Google اکاؤنٹ بنائیں"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"اگلی اسکرین پر آپ اکاؤنٹ میں سائن ان کر کے اسے اپنی پرائیویٹ اسپیس کے ساتھ استعمال کر سکتے ہیں"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"پرائیویٹ اسپیس سے باہر ظاہر ہونے والے ڈیٹا کو روکنے میں مدد کے لیے ایک وقف اکاؤنٹ بنائیں، جیسے:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"مطابقت پذیر تصاویر، فائلیں، ای میلز، رابطے، کیلنڈر ایونٹس اور دیگر ڈیٹا"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"ایپ ڈاؤن لوڈ کی سرگزشت اور تجاویز"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"براؤزنگ کی سرگزشت، بُک مارکس اور محفوظ کردہ پاس ورڈز"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"پرائیویٹ اسپیس ایپس میں آپ کی سرگرمی سے متعلق تجویز کردہ مواد"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"سمجھ آ گئی"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"مقفل کرنا"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"پوشیدہ کرنا"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"آپ <xliff:g id="COUNT">%d</xliff:g> فنگر پرنٹس شامل کر سکتے ہیں"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"سسٹم سرٹیفکیٹ"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"سرٹیفکیٹ کو پن کرنا"</string>
<string name="wifi_details_title" msgid="222735438574597493">"نیٹ ورک کی تفصیلات"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"یہ نیٹ ورک ایک پرانا سیکیورٹی پروٹوکول استعمال کرتا ہے جسے WEP کہتے ہیں، جو کم محفوظ ہے"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"سب نیٹ ماسک"</string>
<string name="server_name_title" msgid="7257095185810299066">"سرور کا نام"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"قسم"</string>
@@ -1204,7 +1201,7 @@
<string name="disable_game_default_frame_rate_title" msgid="3712908601744143753">"گیمز کیلئے ڈیفالٹ فریم ریٹ غیر فعال کریں"</string>
<string name="disable_game_default_frame_rate_summary" msgid="4436762704707434225">"گیمز کے لیے زیادہ سے زیادہ فریم ریٹ کو <xliff:g id="FRAME_RATE">%1$d</xliff:g> Hz پر محدود کرنے کو غیر فعال کریں۔"</string>
<string name="peak_refresh_rate_title" msgid="2056355754210341011">"ہموار ڈسپلے"</string>
- <string name="peak_refresh_rate_summary" msgid="3212309985294885790">"کچھ مواد کے لیے <xliff:g id="ID_1">%1$d</xliff:g> Hz تک ریفریش ریٹ خودکار طور پر بڑھ جاتی ہے۔ بیٹری کے استعمال میں کرتی اضافہ ہیں"</string>
+ <string name="peak_refresh_rate_summary" msgid="3212309985294885790">"کچھ مواد کے لیے <xliff:g id="ID_1">%1$d</xliff:g> Hz تک ریفریش ریٹ خودکار طور پر بڑھ جاتی ہے۔ بیٹری کے استعمال میں اضافہ کرتی ہیں"</string>
<string name="force_high_refresh_rate_toggle" msgid="3325789621928312050">"زیادہ سے زیادہ ریفریش کی شرح پر مجبور کریں"</string>
<string name="force_high_refresh_rate_desc" msgid="7794566420873814875">"اعلی ترین ریفریش کرنے کی بہتر شرح کے ليے ٹچ کی کارکردگی اور اینیمیشن کوالٹی۔ بیٹری کے استعمال میں اضافہ کرتا ہے۔"</string>
<string name="adaptive_sleep_title" msgid="2987961991423539233">"اسکرین پر توجہ"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"آلہ کے Wi‑Fi کا MAC پتہ"</string>
<string name="status_bt_address" msgid="6919660304578476547">"بلوٹوتھ پتہ"</string>
<string name="status_serial_number" msgid="9060064164331466789">"سیریل نمبر"</string>
- <string name="status_up_time" msgid="1274778533719495438">"آلہ اتنی دیر سے چل رہا ہے"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"اپ ٹائم"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"مینوفیکچر کی تاریخ"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"پہلے استعمال کی تاریخ"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"چارج سائیکل کی تعداد"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"نیچے بائیں طرف تھپتھپائیں"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"مزید اختیارات کے لیے ٹچ پیڈ کے نیچے دائیں کونے پر تھپتھپائیں"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"پوائنٹر کی رفتار"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"پوائنٹر فِل اسٹائل"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"پوائنٹر فِل اسٹائل کو سیاہ میں بدلیں"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"پوائنٹر فِل اسٹائل کو سبز میں بدلیں"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"پوائنٹر فِل اسٹائل کو پیلے میں بدلیں"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"پوائنٹر فِل اسٹائل کو گلابی میں بدلیں"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"پوائنٹر فِل اسٹائل کو نیلے میں بدلیں"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"ٹچ پیڈ کے اشارے کو جانیں"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"ٹریک پیڈ، ٹریک پیڈ، ماؤس، کرسر، اسکرول، سوائپ، دائیں کلک، کلک، پوائنٹر"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"دائیں کلک کریں، تھپتھپائیں"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{کوئی نہیں}=1{1 شیڈول سیٹ ہے}other{# شیڈول سیٹ ہیں}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"ڈسٹرب نہ کریں"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"ترجیحی وضع"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"صرف اہم لوگوں اور ایپس کی جانب سے اطلاعات حاصل کریں"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"مداخلتوں کی حد مقرر کریں"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"\'ڈسٹرب نہ کریں\' کو آن کریں"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"ترمیم کریں"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"شیڈولز"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"شیڈول کریں"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"خودکار طور پر آن کریں"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"کیلنڈر شامل کریں"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"اپنا کیلنڈر استعمال کریں"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"شیڈول کریں"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"شیڈول سیٹ کریں"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"شیڈول کریں"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> گھنٹہ، <xliff:g id="MINUTES">%2$d</xliff:g> منٹ"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"شیڈول"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"مخصوص اوقات میں فون خاموش کر دیں"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"\'ڈسٹرب نہ کریں\' اصول سیٹ کریں"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"یہ ایپ بہتر کردہ ترتیبات کو سپورٹ نہیں کرتی ہے"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"مزید ترتیبات"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"اس ایپ کے اندر مزید ترتیبات دستیاب ہیں"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"کول ڈاؤن"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"کول ڈاؤن استعمال کریں"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"جب آپ کو تھوڑے ہی وقت میں بہت ساری اطلاعات موصول ہوتی ہیں تو آپ کا آلہ اسکرین پر آواز کے خلل اور پاپ اپس کو کم از کم کر دے گا۔ کالز، الارمز اور ترجیحی گفتگوئیں اب بھی معمول کے مطابق الرٹ رہیں گی، اور تمام ڈیلیور کردہ اطلاعات کو شیڈ میں تلاش کرنا آسان ہے۔"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"دفتری پروفائلز پر لاگو کریں"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"دفتری پروفائل ایپس پر لاگو کریں"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR مددگار سروسز"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"منتخب کردہ ایپس"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"کوئی نہیں"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"سبھی"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"ایپس کو اوور رائیڈ کرنے کی اجازت دیں"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"ایپس جو مداخلت کر سکتی ہیں"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"مزید ایپس منتخب کریں"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{{time} تک صرف ایک گھنٹے کیلئے الارمز میں تبدیل کریں}other{{time} تک صرف # گھنٹوں کیلئے الارمز میں تبدیل کریں}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g> تک کیلئے صرف الارمز میں تبدیل کریں"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"ہمیشہ مداخلت کریں میں تبدیل کریں"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"نام تبدیل کریں"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"آئیکن تبدیل کریں"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"آئیکن تبدیل کریں"</string>
<string name="warning_button_text" msgid="1274234338874005639">"وارننگ"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"بند کریں"</string>
<string name="device_feedback" msgid="5351614458411688608">"اس آلہ کے بارے میں تاثرات بھیجیں"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"بائیں"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"دائیں"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"کیس"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"بیٹری"</string>
<string name="settings_panel_title" msgid="346363079938069215">"ترتیبات پینل"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"ڈیسک ٹاپ موڈ فورس کریں"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"ثانوی ڈسپلیز پر تجرباتی ڈیسک ٹاپ موڈ فورس کریں"</string>
diff --git a/res/values-uz/arrays.xml b/res/values-uz/arrays.xml
index 37e6546..39246f6 100644
--- a/res/values-uz/arrays.xml
+++ b/res/values-uz/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index a5986c7..f179e9a 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Qurilma uzib qo‘yilsinmi?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Yangi qurilmani juftlash"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Ertaga yana avtomatik yoqilsin"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Oʻng quloqni ulash"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Chap quloqni ulash"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Boshqa quloqni ulash"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Chap quloqni ulash"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Eshitish qurilmasi sozlamalari"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Tezkor tugma, eshitish apparati bilan moslik"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Andozalar"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Andoza"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Andoza yangilanmadi"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Audio chiqishi"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Audio chiqishi haqida"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Bekor qilish"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Kerak emas"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Hozir emas"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Roziman"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Yana"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Yuzingiz bilan oching"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Yodda tuting"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Telefonni qulfdan chiqarish yoki xaridlarni tasdiqlash uchun barmoq izingizdan foydalaning.\n\nEslatma: barmoq izi orqali bu qurilmani qulfdan chiqara olmaysiz. Batafsil axborot olish uchun tashkilot administratori bilan bog‘laning."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Bekor qilish"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Kerak emas"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Hozir emas"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Roziman"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Barmoq izi sozlanmasinmi?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Barmoq izini sozlash bir yoki ikki daqiqa vaqt oladi. Ularni keyinchalik qurilma sozlamalari orqali kiritishingiz mumkin."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Har safar qurilma qulflanganda"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Ekran oʻchganidan keyin 5 daqiqa"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Faqatgina qurilma qayta ishga tushganda"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Maxfiy makon uchun boshqa qulf ishlatsangiz, maxfiy makonda ilovalarni ochish uchun shaxsingizni tasdiqlash soʻralishi mumkin."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Maxfiy makonni berkitish"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Qulflanganda maxfiy makonni berkitish"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Qurilmada Maxfiy makon borligini boshqalar bilmasligi uchun ilovalar roʻyxatidan berkitish mumkin"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Sozlash"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Maxfiy makon"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Maxfiy ilovalarni alohida makonda berkitish yoki qulflash mumkin Qoʻshimcha xavfsizlik uchun boshqa Google hisobidan foydalaning."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Maxfiy makoniningizni sozlash"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Makoningiz uchun Google hisobi tanlang"</b>\n"Maxsus hisobdan foydalanish sinxronlangan fayllar, fotosuratlar va email xabarlarining makoningizdan tashqarida chiqishini taqiqlaydi"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Ishlash tartibi"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Makoningiz uchun Google hisobi yarating"</b>\n"Agar maxsus hisobdan foydalansangiz, bu makondan tashqarida sinxronlangan fayllar, rasmlar va email xabarlari chiqishini toʻxtatishga yordam beradi"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Qulfni sozlash"</b>\n"Makoningizni boshqalar ochmasligi uchun qulflang"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Ilovalarni oʻrnatish"</b>\n"Maxfiy makoningizning alohida Play Marketi bor, shuning uchun ilovalarni oson oʻrnata olasiz."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Maxfiy joy qulflanganda undagi ilovalar ruxsatlar boshqaruvi, maxfiylik paneli va boshqa sozlamalarda chiqmaydi.\n\nMaxfiy joyni yangi qurilmada tiklash imkonsiz. Boshqa qurilmada ishlatish uchun boshqa maxfiy makon sozlanishi kerak.\n\nQurilmani kompyuterga ulash yoki unga zararli ilova oʻrnatish ruxsati bor shaxslar maxfiy joyga ruxsat olishi mumkin."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Ilovalarni oʻrnating"</b>\n"Makoningizda maxfiy saqlamoqchi boʻlgan ilovalarni oʻrnating."</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Yodda tuting"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Makonni qulflaganingizda ilovalar toʻxtatiladi"</b>\n"Makoningizni qulflaganingizda xonadagi ilovalar toʻxtatiladi va ulardan bildirishnomalar olmaysiz"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Maxfiy makon haqida batafsil"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Bu bir necha daqiqa vaqt oladi"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Maxfiy joy sozlanmoqda…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Maxfiy makon uchun alohida qulf belgilash yoki qurilmani qulfdan chiqarish uchun ishlatiladigan qulfni ishlatish mumkin"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Ekran qulfi"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Yangi qulf tanlash"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Biroz kuting…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Biroz kuting…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Hammasi tayyor!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Maxfiy makonga kirish uchun ilovalar roʻyxatini ochib, pastga varaqlang"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Tayyor"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Maxfiy joy uchun PIN kod belgilash"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Maxfiy joy uchun parol belgilash"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Maxfiy joy uchun grafik kalit belgilash"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Maʼlumotlaringizni maxfiy saqlash uchun Google hisobini yarating"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Keyingi ekranda maxfiy makoningiz bilan foydalanish uchun hisobingizga kirishingiz mumkin"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Maxfiy makondan tashqarida maʼlumotlar chiqib ketishining oldini olish uchun maxsus hisob yarating, masalan:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Sinxronlangan suratlar, fayllar, emaillar, kontaktlar, taqvimdagi tadbirlar va boshqa maʼlumotlar"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Ilovani yuklab olishlar tarixi va tavsiyalar"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Veb-sahifalar tarixi, bukmarklar va saqlangan parollar"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Maxfiy makon ilovalaridagi faoliyatingizga aloqador tavsiya etilgan kontent"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"OK"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Qulflash"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Berkitish"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Ko’pi bilan <xliff:g id="COUNT">%d</xliff:g> ta barmoq izi qo’shish mumkin"</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Tizim sertifikati"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Sertifikat mahkamlash"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Tarmoq tafsilotlari"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Bu tarmoq past darajadagi xavfsizlikka ega eski WEP xavfsizlik protokolidan foydalanadi"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Quyi tarmoq niqobi"</string>
<string name="server_name_title" msgid="7257095185810299066">"Server nomi"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Turi"</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Qurilmaning Wi‑Fi MAC manzili"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Bluetooth manzili"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Seriya raqami"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Faollik vaqti"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Faollik vaqti"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Ishlab chiqarilgan sana"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Ilk foydalanish sanasi"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Davrlar soni"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Pastki oʻng burchakka bosing"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Pastki oʻng burchakka bossangiz, boshqa parametrlar ochiladi"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Kursor tezligi"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Kursor ichini boʻyash uslubi"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Kursor ichini qoraga boʻyash"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Kursor ichini yashilga boʻyash"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Kursor ichini sariqqa boʻyash"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Kursor ichini pushtiga boʻyash"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Kursor ichini koʻkka boʻyash"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Sensorli panel ishoralari haqida"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"sensorli panel, sichqoncha, kursor, varaqlash, surish, oʻng klik, klik, koʻrsatkich"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"oʻng klik, bosish"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Hech qanday}=1{1 ta reja sozlangan}other{# ta reja sozlangan}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Bezovta qilinmasin"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Muhim rejimlar"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Faqat muhim odamlar va ilovalardan bildirishnomalarni olish"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Bildirishnomalarni kamaytirish"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Bezovta qilinmasin rejimini yoqing"</string>
@@ -3333,6 +3339,12 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Taqvim qoʻshish"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Taqvimingizdan foydalanish"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Jadval"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
+ <skip />
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
+ <skip />
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
+ <skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Jadval"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Muayyan vaqtlarda ovozsiz qilish"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Bezovta qilmaslik qoidalari"</string>
@@ -3603,9 +3615,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Bu ilovada kengaytirilgan sozlamalar ishlamaydi"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Boshqa sozlamalar"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Boshqa sozlamalar bu ilova ichida joylashgan"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Bildirishnomalar tovushini pasaytirish"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Bildirishnomalar tovushini pasaytirish"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Qisqa vaqt ichida koʻplab bildirishnomalarni olganingizda, qurilma qalqib chiquvchi oynalar sonini kamaytiradi va keraksiz tovushlarni olib tashlaydi. Muhim suhbatlardan chaqiruvlar, signallar va bildirishnomalarni eshitishda davom etasiz. Barcha qabul qilingan bildirishnomalarni ekranning yuqori qismidan pastga surish orqali koʻrish mumkin."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Ish profillariga tatbiq qilinsin"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Ish profilidagi ilovalar uchun qoʻllash"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Yordamchi VR xizmatlar"</string>
@@ -3761,6 +3776,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Tanlangan ilovalar"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Hech biri"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Hammasi"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Ilovalarga Bezovta qilinmasin rejimiga amal qilmasligiga ruxsat berish"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Bezovta qilinmasin rejimi ishlamaydigan ilovalar"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Boshqa ilovalarni tanlang"</string>
@@ -3797,6 +3814,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Signallarni faqat {time} ga bir soat qolgungacha faol qilish}other{Signallarni faqat {time} ga # soat qolgungacha faol qilish}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"“Faqat signallar” rejimini <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> gacha faol bo‘ladigan qilib yoqish"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Har doim bezovta qilinaversin"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Diqqat"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Yopish"</string>
<string name="device_feedback" msgid="5351614458411688608">"Qurilma haqida fikr-mulohaza"</string>
@@ -4780,6 +4803,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Chap"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Oʻng"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Quvvatlash gʻilofi"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Batareya"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Sozlamalar paneli"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Desktop rejimini majburiy ochish"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Ikkilamchi displeylarda tajribaviy desktop rejimini majburiy ochish"</string>
diff --git a/res/values-vi/arrays.xml b/res/values-vi/arrays.xml
index 3f83b3d..ae3def9 100644
--- a/res/values-vi/arrays.xml
+++ b/res/values-vi/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index aa76d6f..911fb9c 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Ngắt kết nối thiết bị?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Ghép nối thiết bị mới"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Tự động bật lại vào ngày mai"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Ghép nối tai phải"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Ghép nối tai trái"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Ghép nối tai khác"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Ghép nối tai trái"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Cài đặt thiết bị trợ thính"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Phím tắt, khả năng tương thích với thiết bị trợ thính"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Giá trị đặt trước"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Chế độ đặt sẵn"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Không cập nhật được giá trị đặt trước"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Đầu ra âm thanh"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Giới thiệu về đầu ra âm thanh"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Hủy"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Không, cảm ơn"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Để sau"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Tôi đồng ý"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Xem thêm"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Mở khóa bằng khuôn mặt của bạn"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Lưu ý"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Dùng vân tay để mở khóa điện thoại hoặc phê duyệt các giao dịch mua.\n\nLưu ý: Bạn không thể sử dụng vân tay để mở khóa thiết bị này. Để biết thêm thông tin, hãy liên hệ với quản trị viên của tổ chức bạn."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Hủy"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Không, cảm ơn"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Để sau"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Tôi đồng ý"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Bạn muốn bỏ qua vân tay?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Bạn chỉ mất một hoặc hai phút để thiết lập vân tay. Nếu bỏ qua bước này, bạn có thể thêm vân tay vào lúc khác trong phần cài đặt."</string>
@@ -558,11 +559,11 @@
<string name="private_space_face_unlock_title" msgid="462248384776453613">"Tính năng Mở khoá bằng khuôn mặt cho không gian riêng tư"</string>
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"Dùng vân tay và khuôn mặt để mở khoá không gian riêng tư"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"Thiết lập tính năng Mở khoá bằng vân tay cho không gian riêng tư"</string>
- <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Bạn có thể dùng vân tay để mở khoá không gian riêng tư của mình hoặc xác minh danh tính, chẳng hạn như khi đăng nhập vào các ứng dụng hoặc phê duyệt một giao dịch mua hàng"</string>
+ <string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"Bạn có thể dùng vân tay để mở khoá không gian riêng tư của mình hoặc xác minh danh tính, chẳng hạn như khi đăng nhập vào ứng dụng hoặc phê duyệt giao dịch mua hàng"</string>
<string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"Không gian riêng tư của bạn có thể được mở khoá ngay cả khi bạn không định làm vậy, chẳng hạn như khi có người cầm điện thoại dí vào ngón tay của bạn."</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"Bạn có thể dùng vân tay để mở khoá không gian riêng tư hoặc phê duyệt một giao dịch mua hàng"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"Thiết lập tính năng Mở khoá bằng khuôn mặt cho không gian riêng tư"</string>
- <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Bạn có thể dùng khuôn mặt để mở khoá không gian riêng tư hoặc xác minh danh tính, chẳng hạn như khi đăng nhập vào các ứng dụng hoặc phê duyệt một giao dịch mua hàng"</string>
+ <string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"Bạn có thể dùng khuôn mặt để mở khoá không gian riêng tư hoặc xác minh danh tính, chẳng hạn như khi đăng nhập vào ứng dụng hoặc phê duyệt giao dịch mua hàng"</string>
<string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"Bạn chỉ cần nhìn vào điện thoại là có thể mở khoá không gian riêng tư ngay cả khi không định làm vậy. Những người trông rất giống bạn (như anh chị em ruột giống hệt bạn) có thể mở khoá không gian riêng tư của bạn. Người khác giơ thiết bị ra trước mặt bạn cũng có thể mở khoá."</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"Việc sử dụng khuôn mặt của bạn để mở khoá không gian riêng tư có thể kém an toàn hơn so với việc dùng một hình mở khoá, mã PIN hoặc mật khẩu mạnh"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"Để mở khoá không gian riêng tư, bạn phải mở mắt. Hãy tháo kính râm để có kết quả tốt nhất."</string>
@@ -577,7 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Mỗi khi khoá thiết bị"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"5 phút sau thời gian chờ khoá màn hình"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Chỉ sau khi khởi động lại thiết bị"</string>
- <string name="private_space_auto_lock_footer_message" msgid="2752467351969856487">"Nếu dùng một chế độ khoá khác cho không gian riêng tư của mình, có thể bạn sẽ phải xác minh danh tính để mở được ứng dụng trong không gian riêng tư đó."</string>
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Ẩn không gian riêng tư"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Ẩn không gian riêng tư khi không gian này bị khoá"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Để ngăn người khác biết bạn có không gian riêng tư trên thiết bị của mình, bạn có thể ẩn không gian đó khỏi danh sách ứng dụng"</string>
@@ -608,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Thiết lập"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Không gian riêng tư"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Ẩn hoặc khoá các ứng dụng riêng tư trong một không gian riêng biệt. Sử dụng một Tài khoản Google chuyên dụng để tăng cường bảo mật."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Thiết lập không gian riêng tư của bạn"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Chọn một Tài khoản Google cho không gian của bạn"</b>\n"Việc sử dụng tài khoản chuyên dụng sẽ giúp ngăn các tệp, ảnh và email được đồng bộ hoá xuất hiện bên ngoài không gian của bạn"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Cách hoạt động"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Tạo Tài khoản Google cho không gian của bạn"</b>\n"Việc bạn dùng một tài khoản chuyên dụng sẽ giúp ngăn không cho các tệp, ảnh và email đã đồng bộ hoá xuất hiện bên ngoài không gian của bạn"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Thiết lập khoá"</b>\n"Khoá không gian của bạn để người khác không mở được"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Cài đặt ứng dụng"</b>\n"Không gian riêng tư của bạn có Cửa hàng Play riêng để bạn có thể dễ dàng cài đặt ứng dụng."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Khi không gian riêng tư của bạn bị khoá, các ứng dụng trong không gian đó sẽ không xuất hiện trong trình quản lý quyền, bảng tổng quan về quyền riêng tư và một số chế độ cài đặt khác.\n\nKhông thể khôi phục không gian riêng tư của bạn sang thiết bị mới. Bạn sẽ cần thiết lập một không gian riêng tư khác nếu muốn dùng không gian đó trên thiết bị khác.\n\nBất cứ ai kết nối thiết bị của bạn với máy tính hoặc cài đặt ứng dụng độc hại trên thiết bị đó đều có thể truy cập vào không gian riêng tư của bạn."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Cài đặt ứng dụng"</b>\n"Cài đặt những ứng dụng bạn muốn giữ riêng tư trong không gian của mình"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Lưu ý"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Các ứng dụng sẽ bị dừng khi bạn khoá không gian của mình"</b>\n"Khi bạn khoá không gian của mình, các ứng dụng trong đó sẽ bị dừng và bạn sẽ không nhận được thông báo từ các ứng dụng đó"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Tìm hiểu thêm về không gian riêng tư"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Quá trình này sẽ mất vài phút"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Đang thiết lập không gian riêng tư…"</string>
@@ -622,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Bạn có thể đặt một phương thức khoá mới dành riêng cho không gian riêng tư, hoặc sử dụng phương thức khoá mà bạn dùng để mở khoá thiết bị của mình"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Dùng phương thức khoá màn hình"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Chọn phương thức khoá mới"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Vui lòng chờ trong giây lát…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Vui lòng chờ trong giây lát…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Đã hoàn tất!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Để tìm không gian riêng tư của bạn, hãy mở danh sách ứng dụng rồi cuộn xuống"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Xong"</string>
@@ -636,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Đặt mã PIN cho không gian riêng tư"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Đặt mật khẩu cho không gian riêng tư"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Đặt hình mở khoá cho không gian riêng tư"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Tạo một Tài khoản Google để giúp bảo mật dữ liệu của bạn"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Trên màn hình tiếp theo, bạn có thể đăng nhập vào một tài khoản để dùng không gian riêng tư"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Tạo một tài khoản chuyên biệt để giúp ngăn dữ liệu xuất hiện bên ngoài không gian riêng tư, chẳng hạn như:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Ảnh, tệp, email, danh bạ, sự kiện trên lịch và các dữ liệu khác đã đồng bộ hoá"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Nhật ký ứng dụng đã tải xuống và các đề xuất"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Nhật ký duyệt web, dấu trang và mật khẩu đã lưu"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Nội dung đề xuất liên quan đến hoạt động của bạn tại các ứng dụng trên không gian riêng tư"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Tôi hiểu"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Khoá"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Ẩn"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Bạn có thể thêm tối đa <xliff:g id="COUNT">%d</xliff:g> vân tay"</string>
@@ -795,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{Phải có ít nhất 1 ký tự không phải chữ cái}other{Phải có ít nhất # ký tự không phải chữ cái}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{Phải có ít nhất 1 ký tự không phải chữ số}other{Phải có ít nhất # ký tự không phải chữ số}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"Quản trị viên thiết bị không cho phép sử dụng mật khẩu gần đây"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Không cho phép thứ tự chữ số tăng dần, giảm dần hoặc lặp lại"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"Các chữ số không được có thứ tự tăng dần, giảm dần hoặc lặp lại"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"Xác nhận"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"Xóa"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"Phương thức khóa màn hình đã thay đổi. Hãy thử lại bằng phương thức khóa màn hình mới."</string>
@@ -1054,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Chứng chỉ hệ thống"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Ghim chứng chỉ"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Chi tiết mạng"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Mạng này dùng một giao thức bảo mật cũ và kém an toàn hơn có tên là WEP"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Mặt nạ mạng con"</string>
<string name="server_name_title" msgid="7257095185810299066">"Tên máy chủ"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Loại"</string>
@@ -1175,7 +1173,7 @@
<string name="accessibility_work_account_title" msgid="7622485151217943839">"Tài khoản công việc - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
<string name="accessibility_personal_account_title" msgid="8535265881509557013">"Tài khoản cá nhân - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
<string name="search_settings" msgid="7573686516434589771">"Tìm kiếm"</string>
- <string name="display_settings" msgid="7197750639709493852">"Màn hình"</string>
+ <string name="display_settings" msgid="7197750639709493852">"Hiển thị"</string>
<string name="accelerometer_title" msgid="7745991950833748909">"Tự động xoay màn hình"</string>
<string name="auto_rotate_option_off" msgid="2788096269396290731">"Đang tắt"</string>
<string name="auto_rotate_option_on" msgid="5776678230808498171">"Đang bật"</string>
@@ -1211,7 +1209,7 @@
<string name="adaptive_sleep_summary_no_permission" msgid="5822591289468803691">"Bạn cần cấp quyền truy cập vào máy ảnh để sử dụng tính năng phát hiện ánh mắt. Hãy nhấn vào quản lý quyền để sử dụng các tính năng Cá nhân hóa thiết bị"</string>
<string name="adaptive_sleep_manage_permission_button" msgid="1404510197847664846">"Quản lý quyền"</string>
<string name="adaptive_sleep_description" msgid="1835321775327187860">"Ngăn không cho màn hình tắt khi bạn đang nhìn vào đó"</string>
- <string name="adaptive_sleep_privacy" msgid="7664570136417980556">"Tính năng phát hiện ánh mắt sử dụng máy ảnh trước để xem liệu có ai đang nhìn vào màn hình hay không. Tính năng này hoạt động trên thiết bị nên sẽ không bao giờ lưu trữ hoặc gửi hình ảnh cho Google."</string>
+ <string name="adaptive_sleep_privacy" msgid="7664570136417980556">"Tính năng phát hiện ánh mắt sử dụng camera trước để xem liệu có ai đang nhìn vào màn hình hay không. Tính năng này hoạt động trên thiết bị nên sẽ không bao giờ lưu trữ hoặc gửi hình ảnh cho Google."</string>
<string name="adaptive_sleep_contextual_slice_title" msgid="7467588613212629758">"Bật tính năng phát hiện ánh mắt"</string>
<string name="adaptive_sleep_contextual_slice_summary" msgid="2993867044745446094">"Giữ màn hình luôn bật khi bạn nhìn vào"</string>
<string name="power_consumption_footer_summary" msgid="4901490700555257237">"Thời gian chờ khoá màn hình dài hơn sẽ tốn nhiều pin hơn."</string>
@@ -1371,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Địa chỉ MAC của Wi-Fi mà thiết bị sử dụng"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Địa chỉ Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Số sê-ri"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Thời gian hoạt động"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Thời gian hoạt động"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Ngày sản xuất"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Ngày bắt đầu sử dụng"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Số chu kỳ"</string>
@@ -1925,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Nhấn vào góc dưới cùng bên phải"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Nhấn vào góc cuối bên phải bàn di chuột để xem tuỳ chọn khác"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Tốc độ con trỏ"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Kiểu màu nền con trỏ"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Đổi màu nền con trỏ thành màu đen"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Đổi màu nền con trỏ thành xanh lục"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Đổi màu nền con trỏ thành màu vàng"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Đổi màu nền con trỏ thành màu hồng"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Đổi màu nền con trỏ thành xanh lam"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Tìm hiểu về cử chỉ ở bàn di chuột"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"bàn di chuột, bàn rê chuột, chuột, con trỏ chuột, cuộn, vuốt, nhấp chuột phải, nhấp, con trỏ"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"nhấp chuột phải, nhấn"</string>
@@ -2025,17 +2029,17 @@
<string name="captions_category_title" msgid="574490148949400274">"Phụ đề"</string>
<string name="audio_category_title" msgid="5283853679967605826">"Âm thanh"</string>
<string name="general_category_title" msgid="6298579528716834157">"Chung"</string>
- <string name="display_category_title" msgid="6638191682294461408">"Màn hình"</string>
+ <string name="display_category_title" msgid="6638191682294461408">"Hiển thị"</string>
<string name="accessibility_color_and_motion_title" msgid="2323301706545305874">"Màu sắc và chuyển động"</string>
<string name="accessibility_color_contrast_title" msgid="5757724357142452378">"Độ tương phản màu"</string>
<string name="accessibility_color_contrast_intro" msgid="7795090401101214930">"Độ tương phản càng cao thì văn bản, nút và biểu tượng càng nổi bật. Hãy chọn độ tương phản phù hợp nhất với bạn."</string>
<string name="color_contrast_note" msgid="7592686603372566198">"Một số ứng dụng có thể không hỗ trợ hết tất cả các chế độ cài đặt độ tương phản màu và văn bản"</string>
<string name="color_contrast_preview" msgid="6791430227535363883">"Xem trước"</string>
- <string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen, Adam"</string>
+ <string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Hoa, Tuấn"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 ngày trước"</string>
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"Theo dõi?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"Báo cáo về chuyến công tác"</string>
- <string name="color_contrast_preview_email_body" msgid="2714343154965937945">"Để được hỗ trợ thêm, vui lòng liên hệ với tôi hoặc Helen. Báo cáo này sẽ"</string>
+ <string name="color_contrast_preview_email_body" msgid="2714343154965937945">"Để được hỗ trợ thêm, vui lòng liên hệ với tôi hoặc chị Hoa. Báo cáo này sẽ"</string>
<string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"Chi phí của khách hàng"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"Thông tin về độ tương phản màu"</string>
<string name="accessibility_turn_screen_darker_title" msgid="5986223133285858349">"Giảm bớt độ sáng màn hình"</string>
@@ -2311,7 +2315,7 @@
<string name="accessibility_hearing_device_connected_title" msgid="3785140037249487287">"Thiết bị trợ thính"</string>
<string name="accessibility_hearing_device_saved_title" msgid="7573926212664909296">"Thiết bị đã lưu"</string>
<string name="accessibility_hearing_device_control" msgid="2661965917013100611">"Chế độ điều khiển thiết bị trợ thính"</string>
- <string name="accessibility_hearing_device_shortcut_title" msgid="7645100199603031360">"Phím tắt cho thiết bị trợ thính"</string>
+ <string name="accessibility_hearing_device_shortcut_title" msgid="7645100199603031360">"Lối tắt cho thiết bị trợ thính"</string>
<string name="accessibility_hac_mode_title" msgid="2037950424429555652">"Khả năng tương thích với thiết bị trợ thính"</string>
<string name="accessibility_hac_mode_summary" msgid="5198760061256669067">"Cải thiện khả năng tương thích với các cuộn dây cảm ứng và giảm tiếng ồn không mong muốn"</string>
<string name="accessibility_hearing_device_about_title" msgid="7883758309646288250">"Giới thiệu về thiết bị nghe"</string>
@@ -2399,7 +2403,7 @@
<string name="accessibility_dialog_button_allow" msgid="8274918676473216697">"Cho phép"</string>
<string name="accessibility_dialog_button_deny" msgid="2037249860078259284">"Từ chối"</string>
<string name="accessibility_dialog_button_stop" msgid="7584815613743292151">"Tắt"</string>
- <string name="accessibility_dialog_button_cancel" msgid="8625997437316659966">"Tiếp tục"</string>
+ <string name="accessibility_dialog_button_cancel" msgid="8625997437316659966">"Tiếp tục bật"</string>
<string name="disable_service_title" msgid="8178020230162342801">"Tắt <xliff:g id="SERVICE">%1$s</xliff:g>?"</string>
<string name="accessibility_no_services_installed" msgid="3725569493860028593">"Chưa có dịch vụ nào được cài đặt"</string>
<string name="accessibility_no_service_selected" msgid="1310596127128379897">"Không có dịch vụ nào được chọn"</string>
@@ -3319,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Không có}=1{Đã đặt 1 lịch biểu}other{Đã đặt # lịch biểu}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Không làm phiền"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Chế độ ưu tiên"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Chỉ nhận thông báo của những người và ứng dụng quan trọng"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Hạn chế bị gián đoạn"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Bật chế độ Không làm phiền"</string>
@@ -3333,6 +3339,9 @@
<string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Thêm lịch"</string>
<string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Dùng lịch của bạn"</string>
<string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Lịch biểu"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"Đặt lịch biểu"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"Lịch biểu"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> tiếng <xliff:g id="MINUTES">%2$d</xliff:g> phút"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Lên lịch"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Tắt tiếng điện thoại vào thời gian nhất định"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"Đặt quy tắc Không làm phiền"</string>
@@ -3603,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Ứng dụng này không hỗ trợ chế độ cài đặt nâng cao"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Chế độ cài đặt khác"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Các chế độ cài đặt khác có sẵn trong ứng dụng này"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Giảm dần âm lượng thông báo"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Dùng tính năng Giảm dần âm lượng thông báo"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Khi bạn nhận được nhiều thông báo trong một khoảng thời gian ngắn, thiết bị sẽ giảm thiểu tình trạng gián đoạn âm thanh và cửa sổ bật lên trên màn hình. Các cuộc gọi, chuông báo và cuộc trò chuyện ưu tiên sẽ vẫn có cảnh báo như bình thường và bạn có thể dễ dàng tìm thấy mọi thông báo nhận được trong Ngăn thông báo."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Áp dụng cho hồ sơ công việc"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Áp dụng cho các ứng dụng trong hồ sơ công việc"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Dịch vụ trình trợ giúp thực tế ảo"</string>
@@ -3761,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Các ứng dụng được chọn"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Không có"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Tất cả"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Cho phép ứng dụng ghi đè"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Những ứng dụng có thể làm gián đoạn chế độ Không làm phiền"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Chọn ứng dụng khác"</string>
@@ -3797,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Đổi sang chế độ chỉ báo thức trong 1 giờ cho đến {time}}other{Đổi sang chế độ chỉ báo thức trong # giờ cho đến {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Đổi sang báo thức chỉ đến khi <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Đổi sang luôn làm gián đoạn"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"Đổi tên"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"Thay đổi biểu tượng"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"Thay đổi biểu tượng"</string>
<string name="warning_button_text" msgid="1274234338874005639">"Cảnh báo"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Đóng"</string>
<string name="device_feedback" msgid="5351614458411688608">"Gửi ý kiến phản hồi về thiết bị này"</string>
@@ -3863,7 +3880,7 @@
<string name="notifications_label" msgid="8471624476040164538">"Thông báo"</string>
<string name="notifications_enabled" msgid="7743168481579361019">"Đang bật"</string>
<string name="notifications_enabled_with_info" msgid="1808946629277684308">"<xliff:g id="NOTIFICATIONS_SENT">%1$s</xliff:g> / <xliff:g id="NOTIFICATIONS_CATEGORIES_OFF">%2$s</xliff:g>"</string>
- <string name="notifications_disabled" msgid="5603160425378437143">"Tắt"</string>
+ <string name="notifications_disabled" msgid="5603160425378437143">"Đang tắt"</string>
<string name="notifications_categories_off" msgid="7712037485557237328">"{count,plural, =1{Đã tắt # danh mục}other{Đã tắt # danh mục}}"</string>
<string name="runtime_permissions_additional_count" msgid="6071909675951786523">"{count,plural, =1{# quyền bổ sung}other{# quyền bổ sung}}"</string>
<string name="runtime_permissions_summary_no_permissions_granted" msgid="7456745929035665029">"Chưa được cấp quyền nào"</string>
@@ -4780,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Trái"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Phải"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Hộp sạc"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Pin"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Bảng Cài đặt"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Buộc chạy chế độ máy tính"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Buộc chạy chế độ máy tính thử nghiệm trên màn hình phụ"</string>
diff --git a/res/values-zh-rCN/arrays.xml b/res/values-zh-rCN/arrays.xml
index 486d9f7..0d02501 100644
--- a/res/values-zh-rCN/arrays.xml
+++ b/res/values-zh-rCN/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index c9780e1..cd85112 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -51,7 +51,7 @@
<string name="stay_awake_on_lockscreen_summary" msgid="8825321939913726566">"折叠手机后,可在外屏上向上滑动以继续使用该应用,也可等待几秒钟直到屏幕锁定。游戏和视频应用会自动继续运行。"</string>
<string name="sleep_on_fold_title" msgid="7626123024330501411">"永不"</string>
<string name="sleep_on_fold_summary" msgid="4191753338303043456">"折叠设备时,外屏会关闭并锁定"</string>
- <string name="auto_rotate_settings_primary_switch_title" msgid="3440951924928594520">"使用自动屏幕旋转功能"</string>
+ <string name="auto_rotate_settings_primary_switch_title" msgid="3440951924928594520">"启用自动屏幕旋转功能"</string>
<string name="smart_rotate_text_headline" msgid="5878008933992951904">"人脸检测功能会使用前置摄像头提高屏幕自动旋转的准确性。系统绝不会存储相关图像,也不会将其发送给 Google。"</string>
<string name="bluetooth" msgid="8898478620943459654">"蓝牙"</string>
<string name="bluetooth_is_discoverable" msgid="4798961627677790935">"附近所有蓝牙设备均可检测到此设备(<xliff:g id="DISCOVERABLE_TIME_PERIOD">%1$s</xliff:g>)"</string>
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"要断开与该设备的连接吗?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"与新设备配对"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"蓝牙"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"明天自动重新开启"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"为右耳进行配对"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"为左耳进行配对"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"为另一个耳朵进行配对"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"为左耳进行配对"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"助听装置设置"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"快捷键、助听器兼容性"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"预设"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"预设"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"无法更新预设"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"音频输出"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"音频输出简介"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"取消"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"不用了"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"以后再说"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"我同意"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"更多"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"使用您的面孔进行解锁"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"注意事项"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"使用指纹解锁手机或批准购买交易。\n\n请注意:您无法使用指纹来解锁此设备。要了解详情,请与贵单位的管理员联系。"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"取消"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"不用了"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"以后再说"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"我同意"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"要跳过指纹设置吗?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"指纹设置只需一两分钟即可完成。如果您选择跳过,之后还可以在“设置”中添加指纹。"</string>
@@ -546,7 +547,7 @@
<string name="work_profile_category_header" msgid="85707750968948517">"工作资料"</string>
<string name="private_space_title" msgid="1752064212078238723">"私密空间"</string>
<string name="private_space_summary" msgid="2274405892301976238">"让专用应用保持锁定状态并隐藏"</string>
- <string name="private_space_description" msgid="4059594203775816136">"将专用应用放在可以隐藏或锁定的独立空间中"</string>
+ <string name="private_space_description" msgid="4059594203775816136">"将私密应用放在可以隐藏或锁定的独立空间中"</string>
<string name="private_space_lock_title" msgid="7230836881433350526">"私密空间锁定"</string>
<string name="private_space_one_lock_summary" msgid="2106513606571219068">"您可以像解锁设备一样解锁私密空间,也可以选择其他锁定方式"</string>
<string name="private_space_screen_lock_title" msgid="8679383894967823163">"使用设备屏锁"</string>
@@ -559,14 +560,14 @@
<string name="private_space_biometric_unlock_title" msgid="1978145237698659673">"为私密空间设置人脸和指纹解锁"</string>
<string name="private_space_fingerprint_enroll_introduction_title" msgid="5187730641333680942">"为私密空间设置指纹解锁"</string>
<string name="private_space_fingerprint_enroll_introduction_message" msgid="9092068873421435300">"您可以使用指纹来解锁私密空间或验证身份,例如在登录应用或批准购买交易时"</string>
- <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"您的私密空间有可能会意外解锁,例如有人让手机触碰到您的手指时。"</string>
+ <string name="private_space_fingerprint_enroll_introduction_footer_message" msgid="7125255484447984854">"您的私密空间有可能会在您并未要求的情况下解锁,例如有人让手机触碰到您的手指时。"</string>
<string name="private_space_fingerprint_enroll_finish_message" msgid="4754797926493316965">"使用指纹解锁私密空间或批准购买交易"</string>
<string name="private_space_face_enroll_introduction_title" msgid="3717541082520006032">"为私密空间设置人脸解锁"</string>
<string name="private_space_face_enroll_introduction_message" msgid="250239418499081821">"您可以通过刷脸来解锁私密空间或验证身份,例如在登录应用或批准购买交易时"</string>
- <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"目视手机可能会让私密空间意外解锁。长相与您非常相似的人(例如孪生兄弟姐妹)也能够解锁您的私密空间。此外,如果有人将设备对准您的脸部,私密空间也可能会解锁。"</string>
+ <string name="private_space_face_enroll_introduction_info_looking" msgid="5694757845303924042">"目视手机可能会让私密空间在您并未要求的情况下解锁。长相与您非常相似的人(例如您的孪生兄弟姐妹)可能也能解锁您的私密空间。此外,如果有人将设备对准您的脸,私密空间也可能会解锁。"</string>
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"使用人脸解锁私密空间,在安全性上可能不及安全系数高的图案、PIN 码或密码"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"如需解锁私密空间,您必须睁开双眼。为达到最佳效果,请摘下太阳镜。"</string>
- <string name="private_space_face_settings_footer" msgid="7722256209563543711">"您可以通过刷脸来解锁私密空间。\n\n请注意:\n一次只能设置 1 张面孔。如需添加另一张面孔,请先删除当前的面孔。\n\n目视手机可能会让手机意外解锁。\n\n如果有人将设备对准您的脸,您的私密空间可能也会解锁。\n\n长相与您非常相似的人(例如孪生兄弟姐妹)也能够解锁您的私密空间。"</string>
+ <string name="private_space_face_settings_footer" msgid="7722256209563543711">"您可以通过刷脸来解锁私密空间。\n\n请注意:\n一次只能设置 1 张面孔。如需添加其他面孔,请先删除当前的面孔。\n\n目视手机可能会让手机在您并未要求的情况下解锁。\n\n如果有人将设备对准您的脸,您的私密空间可能也会解锁。\n\n长相与您非常相似的人(例如您的孪生兄弟姐妹)可能也能解锁您的私密空间。"</string>
<string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"使用“人脸解锁”时,一律需要完成确认步骤"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"解锁方式"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"与设备屏锁相同"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"每次设备锁定时"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"屏幕超时 5 分钟后"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"仅在设备重启后"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"隐藏私密空间"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"当私密空间处于锁定状态时将其隐藏"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"如要防止其他人知道您的设备上有私密空间,您可以从应用列表中将其隐藏"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"设置"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"私密空间"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"在独立空间中隐藏或锁定专用应用。使用专属 Google 账号来提高安全性。"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"设置私密空间"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"为您的空间选择一个 Google 账号"</b>\n"使用专属账号有助于阻止已同步的文件、照片和电子邮件出现在空间之外"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"运作方式"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"为您的私密空间创建一个 Google 账号"</b>\n"使用专用账号有助于防止已同步的文件、照片和电子邮件出现在您的私密空间之外"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"设置锁定方式"</b>\n"锁定您的空间,防止其他人打开该空间"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"安装应用"</b>\n"您的私密空间具有自己的 Play 商店,因此您可以轻松安装应用。"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"私密空间处于锁定状态时,私密空间中的应用不会显示在权限管理器、隐私信息中心和其他设置中。\n\n私密空间无法恢复到新设备。若要在其他设备上使用私密空间,您需要在该设备上再设置一个私密空间。\n\n任何人如果将您的设备连接到计算机或在设备上安装恶意应用,或许就能够访问您的私密空间。"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"安装应用"</b>\n"将您不想公开的应用安装在私密空间中"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"注意事项"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"锁定您的私密空间后,应用将停止运行"</b>\n"在您锁定自己的私密空间后,其中的应用将停止运行,您也不会再收到来自这些应用的通知"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"详细了解私密空间"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"这将需要一点时间"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"正在设置私密空间…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"您可以专为私密空间设置新的锁定方式,或使用设备屏锁来锁定此空间"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"使用屏锁"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"选择新的锁定方式"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"请稍候…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"请稍候…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"设置完毕!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"若要查找私密空间,请前往应用列表,然后向下滚动"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"完成"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"为您的私密空间设置 PIN 码"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"为您的私密空间设置密码"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"为您的私密空间设置解锁图案"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"创建 Google 账号协助确保数据的私密性"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"在下一个界面中,您可以登录用于私密空间的账号"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"创建专用账号,防止数据出现在私密空间外,例如:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"已同步的照片、文件、电子邮件、联系人、日历活动和其他数据"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"应用下载记录和推荐"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"浏览记录、书签和已保存的密码"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"与私密空间应用中的活动相关的建议内容"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"知道了"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"锁定"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"隐藏"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"您最多可以添加 <xliff:g id="COUNT">%d</xliff:g> 个指纹"</string>
@@ -796,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{必须包含至少 1 个非字母字符}other{必须包含至少 # 个非字母字符}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{必须包含至少 1 个非数字字符}other{必须包含至少 # 个非数字字符}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"设备管理员不允许使用最近用过的密码"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"不允许使用以升序、降序或重复序列进行排列的一串数字"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"禁止使用以升序、降序或重复序列排列的一串数字"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"确认"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"清除"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"屏幕锁定设置已更改,请使用新的屏幕锁定设置再试一次。"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"系统证书"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"正在固定证书"</string>
<string name="wifi_details_title" msgid="222735438574597493">"网络详情"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"此网络采用名为 WEP 的较旧安全协议,其安全性较低"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"子网掩码"</string>
<string name="server_name_title" msgid="7257095185810299066">"服务器名称"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"类型"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"设备 WLAN MAC 地址"</string>
<string name="status_bt_address" msgid="6919660304578476547">"蓝牙地址"</string>
<string name="status_serial_number" msgid="9060064164331466789">"序列号"</string>
- <string name="status_up_time" msgid="1274778533719495438">"开机累计时长"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"正常运行时间"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"制造日期"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"首次使用日期"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"充电循环次数"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"点按右下角"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"点按触控板的右下角即可查看更多选项"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"指针速度"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"指针填充样式"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"将指针填充样式更改为黑色"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"将指针填充样式更改为绿色"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"将指针填充样式更改为黄色"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"将指针填充样式更改为粉色"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"将指针填充样式更改为蓝色"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"了解触控板手势"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"触控板, 鼠标, 光标, 滚动, 滑动, 右键点击, 点击, 指针, trackpad, track pad, mouse, cursor, scroll, swipe, right click, click, pointer"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"右键点击, 点按, right click, tap"</string>
@@ -2037,7 +2040,7 @@
<string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"要后续跟进吗?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"出差报告"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"如要获取进一步协助,请与我或 Helen 联系。此报告将"</string>
- <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"客户端支出"</string>
+ <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"客户支出"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"关于颜色对比度"</string>
<string name="accessibility_turn_screen_darker_title" msgid="5986223133285858349">"调暗屏幕"</string>
<string name="interaction_control_category_title" msgid="2696474616743882372">"互动控制"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{无}=1{已设置 1 个时间表}other{已设置 # 个时间表}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"勿扰模式"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"优先模式"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"仅接收来自重要联系人和重要应用的通知"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"限制打扰"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"开启勿扰模式"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"修改"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"时间表"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"时间表"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"自动开启"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"添加日程表"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"使用您的日程表"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"日程"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"设置时间表"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"时间表"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> 小时 <xliff:g id="MINUTES">%2$d</xliff:g> 分钟"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"时间表"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"在特定的时间将手机设为静音"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"设置“勿扰”规则"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"此应用不支持增强型设置"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"更多设置"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"您可以在此应用中使用更多设置"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"通知音量渐降"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"使用通知音量渐降功能"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"如果您在短时间内收到大量通知,设备将尽可能减少提示音干扰和屏幕上的弹出式通知。通话、闹钟和优先对话仍将正常提醒,并且在通知栏中可以轻松查看所有已发送的通知。"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"应用于工作资料"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"应用至工作资料应用"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR 助手服务"</string>
@@ -3749,10 +3756,10 @@
<string name="zen_mode_media_summary" msgid="7174081803853351461">"视频、游戏和其他媒体内容的声音"</string>
<string name="zen_mode_media_list" msgid="2006413476596092020">"媒体"</string>
<string name="zen_mode_media_list_first" msgid="7824427062528618442">"媒体"</string>
- <string name="zen_mode_system" msgid="7301665021634204942">"触摸提示音"</string>
+ <string name="zen_mode_system" msgid="7301665021634204942">"触控音效"</string>
<string name="zen_mode_system_summary" msgid="7225581762792177522">"键盘和其他按钮的音效"</string>
- <string name="zen_mode_system_list" msgid="2256218792042306434">"轻触提示音"</string>
- <string name="zen_mode_system_list_first" msgid="8590078626001067855">"轻触提示音"</string>
+ <string name="zen_mode_system_list" msgid="2256218792042306434">"触控音效"</string>
+ <string name="zen_mode_system_list_first" msgid="8590078626001067855">"触控音效"</string>
<string name="zen_mode_reminders" msgid="1970224691551417906">"提醒"</string>
<string name="zen_mode_reminders_summary" msgid="3961627037429412382">"来自任务和提醒"</string>
<string name="zen_mode_reminders_list" msgid="3133513621980999858">"提醒"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"所选应用"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"无"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"全部"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"允许应用覆盖"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"例外的应用"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"选择更多应用"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{更改为仅限闹钟并持续 1 小时,直到 {time}}other{更改为仅限闹钟并持续 # 小时,直到 {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"更改为仅限闹钟(到<xliff:g id="FORMATTEDTIME">%1$s</xliff:g>)"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"更改为一律允许打扰"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"重命名"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"更改图标"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"更改图标"</string>
<string name="warning_button_text" msgid="1274234338874005639">"警告"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"关闭"</string>
<string name="device_feedback" msgid="5351614458411688608">"发送有关此设备的反馈"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"左"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"右"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"充电盒"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"电池"</string>
<string name="settings_panel_title" msgid="346363079938069215">"设置面板"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"强制使用桌面模式"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"在辅助显示屏上强制使用桌面模式这一实验性功能"</string>
@@ -4913,8 +4926,8 @@
<string name="overlay_settings_summary" msgid="2745336273786148166">"允许可在其他应用上层显示的应用重叠显示在“设置”屏幕上"</string>
<string name="allow_mock_modem" msgid="3832264806530479214">"允许运行 Mock Modem 服务"</string>
<string name="allow_mock_modem_summary" msgid="9097416612748005374">"允许此设备运行 Mock Modem 服务以进行插桩测试。正常使用手机时不得启用该服务"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"停用屏幕共享保护"</string>
- <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"针对接下来的屏幕共享会话关闭敏感应用内容系统保护功能"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications" msgid="4987116103699222633">"停用屏幕共享防护"</string>
+ <string name="disable_screen_share_protections_for_apps_and_notifications_summary" msgid="5379583403909210858">"在接下来的屏幕共享会话中关闭针对敏感应用内容的系统防护功能"</string>
<string name="media_controls_title" msgid="403271085636252597">"媒体"</string>
<string name="media_controls_resume_title" msgid="855076860336652370">"固定媒体播放器"</string>
<string name="media_controls_resume_description" msgid="3163482266454802097">"为了方便您快速恢复播放,媒体播放器会在“快捷设置”中保持打开状态"</string>
@@ -5160,8 +5173,8 @@
<string name="aspect_ratio_title" msgid="2451826875939676101">"宽高比"</string>
<string name="aspect_ratio_summary" msgid="4056406351663726494">"如果此应用的设计不适配您的<xliff:g id="DEVICE_NAME">%1$s</xliff:g>,请试试在其他宽高比下查看此应用"</string>
<string name="aspect_ratio_main_summary" msgid="4141964559612756940">"如果此应用的设计不适配您的<xliff:g id="DEVICE_NAME">%1$s</xliff:g>,请试试在其他宽高比下查看此应用。某些应用可能没有针对特定宽高比进行优化。"</string>
- <string name="aspect_ratio_summary_text" msgid="4737461467467220325">"如果某个应用的设计不适配您的<xliff:g id="DEVICE_NAME">%1$s</xliff:g>,请试试在其他宽高比下查看此应用"</string>
- <string name="aspect_ratio_main_summary_text" msgid="5544816872094235840">"如果某个应用的设计不适配您的<xliff:g id="DEVICE_NAME">%1$s</xliff:g>,请试试在其他宽高比下查看此应用。某些应用可能没有针对特定宽高比进行优化。"</string>
+ <string name="aspect_ratio_summary_text" msgid="4737461467467220325">"如果某个应用的设计不适配您的 <xliff:g id="DEVICE_NAME">%1$s</xliff:g>,请试试在其他宽高比下查看此应用"</string>
+ <string name="aspect_ratio_main_summary_text" msgid="5544816872094235840">"如果某个应用的设计不适配您的 <xliff:g id="DEVICE_NAME">%1$s</xliff:g>,请试试在其他宽高比下查看此应用。某些应用可能没有针对特定宽高比进行优化。"</string>
<string name="user_aspect_ratio_suggested_apps_label" msgid="8085934042329632039">"有推荐宽高比的应用"</string>
<string name="user_aspect_ratio_changed_apps_label" msgid="2096614916172567672">"宽高比已更新的应用"</string>
<string name="user_aspect_ratio_app_default" msgid="270065763307617837">"应用默认设置"</string>
@@ -5257,7 +5270,7 @@
<string name="audio_sharing_stream_settings_title" msgid="1374391898689242036">"音频流设置"</string>
<string name="audio_sharing_stream_name_title" msgid="8156859441897180940">"名称"</string>
<string name="audio_sharing_stream_password_title" msgid="7026649168165764602">"密码"</string>
- <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"改进兼容性"</string>
+ <string name="audio_sharing_stream_compatibility_title" msgid="5690947186724469918">"提高兼容性"</string>
<string name="audio_sharing_stream_compatibility_description" msgid="8170241188606110963">"通过降低音频质量,帮助某些设备(例如助听器)连接"</string>
<string name="audio_sharing_stream_compatibility_disabled_description" msgid="2586408353546825682">"关闭“音频分享”功能以配置兼容性"</string>
<string name="audio_sharing_nearby_audio_title" msgid="4795438407040677177">"收听附近的音频"</string>
diff --git a/res/values-zh-rHK/arrays.xml b/res/values-zh-rHK/arrays.xml
index 221f39a..d1f74d6 100644
--- a/res/values-zh-rHK/arrays.xml
+++ b/res/values-zh-rHK/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 131e84d..9bfa92e 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"要解除連結裝置嗎?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"配對新裝置"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"藍牙"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"明天自動重新開啟"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"配對右耳"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"配對左耳"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"配對另一耳的裝置"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"配對左耳"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"助聽器設定"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"捷徑、助聽器兼容性"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"預設"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"預設"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"無法更新預設"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"音訊輸出裝置"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"關於音訊輸出"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"取消"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"不用了,謝謝"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"暫時不要"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"我同意"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"更多"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"使用面孔解鎖"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"注意事項"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"使用指紋解鎖手機或核准購物交易。\n\n請注意:你無法使用指紋解鎖此裝置。如需瞭解詳情,請聯絡你機構的管理員。"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"取消"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"不用了,謝謝"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"暫時不要"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"我同意"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"要略過指紋設定程序嗎?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"指紋設定程序只需一至兩分鐘。如略過此步驟,你可於稍後在「設定」中加入指紋。"</string>
@@ -574,11 +575,9 @@
<string name="private_space_new_lock_message" msgid="3117703578905489206">"你需要在下一個畫面輸入裝置 PIN、圖案或密碼"</string>
<string name="private_space_auto_lock_title" msgid="8663409382910601261">"自動鎖定私人空間"</string>
<string name="private_space_auto_lock_page_summary" msgid="8679844515655838654">"裝置可在閒置一段時間後自動鎖定私人空間"</string>
- <string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"每當裝置鎖定"</string>
+ <string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"每當裝置鎖定時"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"螢幕逾時 5 分鐘後"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"只在裝置重新啟動後"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"隱藏私人空間"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"私人空間處於鎖定狀態時,系統會隱藏私人空間"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"如要防止其他使用者知道裝置上有私人空間,可以從應用程式清單中隱藏該空間"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"設定"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"私人空間"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"在獨立空間隱藏或鎖定私人應用程式。使用專屬的 Google 帳戶,進一步加強安全保障。"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"設定私人空間"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"選擇私人空間使用的 Google 帳戶"</b>\n"使用專屬帳戶有助防止已同步的檔案、相片和電郵在私人空間以外的空間顯示"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"運作方式"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"為你的私人空間建立 Google 帳戶"</b>\n"使用專屬帳戶有助防止已同步的檔案、相片和電郵在私人空間以外的空間顯示"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"設定鎖定方式"</b>\n"鎖定私人空間,以防止其他人開啟"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"安裝應用程式"</b>\n"私人空間有獨立的「Play 商店」,方便你安裝應用程式。"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"私人空間處於鎖定狀態時,當中的應用程式就不會在權限管理工具、私隱資訊主頁和其他設定中顯示。\n\n私人空間無法還原至新裝置。如要在其他裝置上使用私人空間,請重新設定。\n\n如果有人將裝置連接電腦,或在裝置上安裝惡意應用程式,或許能存取你的私人空間。"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"安裝應用程式"</b>\n"在私人空間中安裝你想設定為私人的應用程式"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"注意事項"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"應用程式在私人空間鎖定後停止運作"</b>\n"私人空間鎖定後,當中的應用程式會停止運作,因此你不會收到這些應用程式的通知"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"進一步瞭解私人空間"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"過程需時數分鐘"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"正在設定私人空間…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"你可專為私人空間設定新的鎖定方式,或者使用解鎖裝置的同一個鎖定方式"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"使用螢幕鎖定方式"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"選擇新的鎖定方式"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"請稍候…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"請稍候…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"大功告成!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"如要存取私人空間,請前往應用程式清單並向下捲動畫面"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"完成"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"設定私人空間的 PIN"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"設定私人空間密碼"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"設定私人空間上鎖圖案"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"建立 Google 帳戶有助將你的資料保密"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"在下一個畫面中,你可以登入用於私人空間的帳戶"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"建立專屬帳戶,防止資料出現在私人空間外,例如:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"已同步的相片、檔案、電郵、聯絡人、日曆活動和其他資料"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"應用程式下載記錄和建議"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"瀏覽記錄、書籤和已儲存的密碼"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"與私人空間應用程式活動相關的建議內容"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"知道了"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"鎖定"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"隱藏"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"你最多可以加入 <xliff:g id="COUNT">%d</xliff:g> 個指紋"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"系統憑證"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"憑證綁定"</string>
<string name="wifi_details_title" msgid="222735438574597493">"網絡詳細資料"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"此網絡使用較舊的安全通訊協定 (WEP),安全性較低"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"子網絡遮罩"</string>
<string name="server_name_title" msgid="7257095185810299066">"伺服器名稱"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"類型"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"裝置 Wi-Fi MAC 位址"</string>
<string name="status_bt_address" msgid="6919660304578476547">"藍牙位址"</string>
<string name="status_serial_number" msgid="9060064164331466789">"序號"</string>
- <string name="status_up_time" msgid="1274778533719495438">"開機時間"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"運行時間"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"製造日期"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"首次使用日期"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"週期數"</string>
@@ -1926,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"輕按右下角"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"輕按觸控板右下角,即可查看更多選項"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"游標速度"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"游標填滿樣式"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"變更游標填滿樣式至黑色"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"變更游標填滿樣式至綠色"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"變更游標填滿樣式至黃色"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"變更游標填滿樣式至粉紅色"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"變更游標填滿樣式至藍色"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"學習觸控板手勢"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"觸控板, 滑鼠, 鼠標, 捲動, 輕掃, 按一下右鍵, 點擊, 游標"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"按一下右鍵, 輕按"</string>
@@ -3320,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{無}=1{已設定 1 個時間表}other{已設定 # 個時間表}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"請勿騷擾"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"優先模式"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"只接收重要聯絡人和應用程式的通知"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"減少干擾"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"開啟「請勿騷擾」模式"</string>
@@ -3330,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"編輯"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"時間表"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"預定時間"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"自動開啟"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"新增日曆"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"使用日曆"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"時間表"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"設定時間表"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"時間表"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> 小時 <xliff:g id="MINUTES">%2$d</xliff:g> 分鐘"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"預定時間"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"在特定時間將手機設為靜音"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"設定「請勿騷擾」規則"</string>
@@ -3608,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"此應用程式不支援進階設定"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"更多設定"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"你可在應用程式中使用更多設定"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"通知冷靜模式"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"使用「通知冷靜模式」"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"如果短時間內收到大量通知,裝置盡可能減少聲音干擾和螢幕上的彈出式視窗。系統仍會照常傳送來電、鬧鐘和重要對話通知。此外,將通知欄往下拉便可查看所有收到的通知。"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"套用至工作設定檔"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"套用至工作設定檔應用程式"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR 助手服務"</string>
@@ -3669,7 +3676,7 @@
<string name="app_notification_fsi_permission_summary" msgid="7673487977631068039">"允許在裝置上鎖時顯示全螢幕通知"</string>
<string name="notification_badge_title" msgid="6854537463548411313">"允許通知圓點"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"顯示通知圓點"</string>
- <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"忽略「請勿騷擾」"</string>
+ <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"覆寫「請勿騷擾」"</string>
<string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"「請勿騷擾」模式開啟時繼續接收這些通知"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"上鎖畫面"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"完成"</string>
@@ -3766,6 +3773,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"選取的應用程式"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"無"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"全部"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"允許應用程式取代「請勿騷擾」"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"例外可打擾的應用程式"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"選擇更多應用程式"</string>
@@ -3802,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{改為只限鬧鐘模式同埋持續 1 個鐘,直至 {time} 為止}other{改為只限鬧鐘模式同埋持續 # 個鐘,直至 {time} 為止}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"響 <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>前改為只允許鬧鐘"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"變更為永遠允許干擾"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"重新命名"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"變更圖示"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"變更圖示"</string>
<string name="warning_button_text" msgid="1274234338874005639">"警告"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"關閉"</string>
<string name="device_feedback" msgid="5351614458411688608">"傳送你對這部裝置的意見"</string>
@@ -4785,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"左耳"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"右耳"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"耳機盒"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"電池"</string>
<string name="settings_panel_title" msgid="346363079938069215">"設定面板"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"強制執行桌面模式"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"在次要顯示屏強制執行實驗版桌面模式"</string>
diff --git a/res/values-zh-rTW/arrays.xml b/res/values-zh-rTW/arrays.xml
index 7eccb5c..f6df39d 100644
--- a/res/values-zh-rTW/arrays.xml
+++ b/res/values-zh-rTW/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index d28b82c..ff33d36 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"要取消連結裝置嗎?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"配對新裝置"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"藍牙"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"明天自動重新開啟"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"配對右耳的裝置"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"配對左耳的裝置"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"配對另一耳的裝置"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"配對左耳的裝置"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"助聽器設定"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"捷徑、助聽器相容性"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"預設設定"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"預設設定"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"無法更新預設設定"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"音訊輸出裝置"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"關於音訊輸出"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"取消"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"不用了,謝謝"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"暫時不要"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"我同意"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"更多"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"以臉孔解鎖"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"注意事項"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"使用你的指紋將手機解鎖或核准購物交易。\n\n注意:你無法使用指紋將這個裝置解鎖,詳情請洽貴機構的管理員。"</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"取消"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"不用了,謝謝"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"暫時不要"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"我同意"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"要略過指紋設定程序嗎?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"指紋設定只需一兩分鐘即可完成。如果選擇略過,之後可以在「設定」中新增指紋。"</string>
@@ -567,8 +568,7 @@
<string name="private_space_face_enroll_introduction_info_less_secure" msgid="8460719783943533172">"使用複雜的圖案、PIN 碼或密碼解鎖私人空間,可能比使用人臉解鎖來得安全"</string>
<string name="private_space_face_settings_require_attention_details" msgid="2799569069549999689">"眼睛必須睜開,才能解鎖私人空間。為求順利解鎖,建議取下太陽眼鏡。"</string>
<string name="private_space_face_settings_footer" msgid="7722256209563543711">"臉孔可用於解鎖私人空間。\n\n注意事項:\n一次只能設定一張臉孔。如要新增其他臉孔,請刪除目前設定的臉孔。\n\n只要看著手機,就可能會讓手機意外解鎖。\n\n如果有人將裝置對著你的臉,私人空間可能會因此解鎖。\n\n長相與你十分相似的人 (例如孿生兄弟姐妹) 或許可以解鎖你的私人空間。"</string>
- <!-- no translation found for private_space_face_settings_require_confirmation_details (5406498664903812249) -->
- <skip />
+ <string name="private_space_face_settings_require_confirmation_details" msgid="5406498664903812249">"使用人臉解鎖功能時,一律執行確認步驟"</string>
<string name="private_space_category_ways_to_unlock" msgid="4356631225316950046">"解鎖方式"</string>
<string name="private_space_screen_lock_summary" msgid="394837965365561070">"與裝置螢幕鎖定相同"</string>
<string name="private_space_new_lock_title" msgid="9056139964133004094">"要選擇新的私人空間鎖定方式嗎?"</string>
@@ -578,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"裝置每次鎖定時"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"螢幕自動關閉的 5 分鐘後"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"僅在裝置重新啟動後"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"隱藏私人空間"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"隱藏鎖定的私人空間"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"如果不想讓其他人知道裝置上有私人空間,可以在應用程式清單中隱藏該空間"</string>
@@ -610,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"設定"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"私人空間"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"將私人應用程式隱藏或鎖定於獨立的空間,並搭配專用的 Google 帳戶,安全更有保障。"</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"設定私人空間"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"選擇私人空間專用的 Google 帳戶"</b>\n"使用專用帳戶可防止同步處理的檔案、相片和電子郵件出現在空間之外"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"運作方式"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"建立空間專屬 Google 帳戶"</b>\n"如果你使用專屬帳戶,有助避免經過同步的檔案、相片和電子郵件顯示在空間之外"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"設定鎖定功能"</b>\n"鎖定私人空間,禁止其他使用者開啟"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"安裝應用程式"</b>\n"私人空間內建 Play 商店,方便你安裝應用程式"</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"私人空間鎖定時,權限管理工具、隱私資訊主頁和其他設定不會顯示當中的應用程式。\n\n你無法將私人空間還原到新裝置。如要在其他裝置上使用私人空間,請重新設定。\n\n如果有人將裝置接上電腦,或在裝置上安裝惡意應用程式,或許能夠存取你的私人空間。"</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"安裝應用程式"</b>\n"在空間中安裝想保密的應用程式"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"注意事項"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"應用程式會在空間鎖定後停止運作"</b>\n"空間鎖定之後,當中的應用程式將停止運作,你不會收到這些應用程式的通知"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"進一步瞭解私人空間"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"請稍待片刻"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"正在設定私人空間…"</string>
@@ -624,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"你可以專為私人空間設定新的鎖定方式,也可以直接使用裝置的螢幕鎖定方式"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"使用螢幕鎖定功能"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"選擇新的鎖定方式"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"請稍候…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"請稍候…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"大功告成!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"如要尋找私人空間,請前往應用程式清單並向下捲動畫面"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"完成"</string>
@@ -638,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"設定私人空間的 PIN 碼"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"設定私人空間的密碼"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"設定私人空間的解鎖圖案"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"建立 Google 帳戶協助保障資料隱私"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"你可以在下個畫面登入帳戶,用來使用私人空間"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"建立專用帳戶,防止資料出現在私人空間外,例如:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"已同步相片、檔案、電子郵件、聯絡人、日曆活動和其他資料"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"應用程式下載記錄和建議"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"瀏覽記錄、書籤和儲存的密碼"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"與私人空間應用程式活動相關的建議內容"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"我知道了"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"鎖定"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"隱藏"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"你最多可以新增 <xliff:g id="COUNT">%d</xliff:g> 個指紋"</string>
@@ -666,12 +661,12 @@
<string name="lock_settings_picker_new_lock_title" msgid="3113042086804290919">"選擇螢幕鎖定方式"</string>
<string name="lock_settings_picker_update_lock_title" msgid="536853138943415927">"選擇新的螢幕鎖定方式"</string>
<string name="lock_settings_picker_new_profile_lock_title" msgid="2270462215256413800">"選擇工作應用程式的鎖定方式"</string>
- <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"選擇新的工作應用程式鎖定方式"</string>
+ <string name="lock_settings_picker_update_profile_lock_title" msgid="5929068163516308927">"選擇新的工作資料夾鎖定方式"</string>
<string name="lock_settings_picker_biometrics_added_security_message" msgid="1105247657304421299">"為提升安全性,請設定備用螢幕鎖定方式"</string>
<string name="lock_settings_picker_biometric_message" msgid="2609666443527262781">"選擇備用的螢幕鎖定方法"</string>
<string name="lock_settings_picker_admin_restricted_personal_message" msgid="3532653662159888328">"如果你忘記如何解除螢幕鎖定,IT 管理員也無法重設。"</string>
<string name="lock_settings_picker_admin_restricted_personal_message_action" msgid="5956615234246626264">"另外為工作應用程式設定螢幕鎖定"</string>
- <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"如果你忘記這個鎖定方式,必須請 IT 管理員重設"</string>
+ <string name="lock_settings_picker_profile_message" msgid="9142379549980873478">"如果你忘記鎖定方式,必須請 IT 管理員重設"</string>
<string name="setup_lock_settings_options_button_label" msgid="6098297461618298505">"螢幕鎖定選項"</string>
<string name="setup_lock_settings_options_dialog_title" msgid="7985107300517468569">"螢幕鎖定選項"</string>
<string name="lock_screen_auto_pin_confirm_title" msgid="3012128112186088375">"自動確認解鎖"</string>
@@ -797,7 +792,7 @@
<string name="lockpassword_password_requires_nonletter" msgid="1185342065898300006">"{count,plural, =1{至少要有 1 個非字母半形字元}other{至少要有 # 個非字母半形字元}}"</string>
<string name="lockpassword_password_requires_nonnumerical" msgid="389687423482993365">"{count,plural, =1{至少要有 1 個非數值半形字元}other{至少要有 # 個非數值半形字元}}"</string>
<string name="lockpassword_password_recently_used" msgid="5341218079730167191">"裝置管理員不允許使用最近用過的密碼"</string>
- <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"不允許使用依遞增或遞減順序排列或是重複的一串數字"</string>
+ <string name="lockpassword_pin_no_sequential_digits" msgid="5843639256988031272">"不允許使用遞增、遞減或重複的數字"</string>
<string name="lockpassword_confirm_label" msgid="560897521093566777">"確認"</string>
<string name="lockpassword_clear_label" msgid="311359833434539894">"清除"</string>
<string name="lockpassword_credential_changed" msgid="5934778179732392028">"螢幕鎖定設定已變更,請使用新的螢幕鎖定設定再試一次。"</string>
@@ -1056,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"系統憑證"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"憑證綁定"</string>
<string name="wifi_details_title" msgid="222735438574597493">"網路詳細資料"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"這個網路使用較舊的安全通訊協定 (WEP),安全性較低"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"子網路遮罩"</string>
<string name="server_name_title" msgid="7257095185810299066">"伺服器名稱"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"類型"</string>
@@ -1373,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"裝置的 Wi‑Fi MAC 位址"</string>
<string name="status_bt_address" msgid="6919660304578476547">"藍牙位址"</string>
<string name="status_serial_number" msgid="9060064164331466789">"序號"</string>
- <string name="status_up_time" msgid="1274778533719495438">"累計開機時間"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"運作時間"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"製造日期"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"首次使用日期"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"週期數"</string>
@@ -1927,6 +1923,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"輕觸右下角"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"在觸控板上輕觸右下角即可查看更多選項"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"游標速度"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"指標填滿樣式"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"將指標填滿樣式變更為黑色"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"將指標填滿樣式變更為綠色"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"將指標填滿樣式變更為黃色"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"將指標填滿樣式變更為粉紅色"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"將指標填滿樣式變更為藍色"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"學習觸控板手勢"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"觸控板, 滑鼠, 游標, 捲動, 滑動, 按滑鼠右鍵, 點按, 指標"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"按滑鼠右鍵, 輕觸"</string>
@@ -2035,10 +2037,10 @@
<string name="color_contrast_preview" msgid="6791430227535363883">"預覽"</string>
<string name="color_contrast_preview_sender_name" msgid="8641943417589238147">"Helen、Adam"</string>
<string name="color_contrast_preview_email_send_date" msgid="2108702726171600080">"2 天前"</string>
- <string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"要追蹤後續嗎?"</string>
+ <string name="color_contrast_preview_email_badge" msgid="4845484039428505392">"追蹤後續?"</string>
<string name="color_contrast_preview_email_title" msgid="198712116139754823">"出差報告"</string>
<string name="color_contrast_preview_email_body" msgid="2714343154965937945">"如需進一步協助,請與我或 Helen 聯絡。報告將會"</string>
- <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"用戶端支出"</string>
+ <string name="color_contrast_preview_email_attachment_name" msgid="852407311884814746">"客戶支出"</string>
<string name="color_contrast_about_title" msgid="5939566801408667867">"關於色彩對比"</string>
<string name="accessibility_turn_screen_darker_title" msgid="5986223133285858349">"調暗螢幕"</string>
<string name="interaction_control_category_title" msgid="2696474616743882372">"互動控制項"</string>
@@ -3254,8 +3256,7 @@
<string name="keywords_storage_settings" msgid="6018856193950281898">"記憶體, 快取, 資料, 刪除, 清除, 釋出, 空間"</string>
<string name="keywords_bluetooth_settings" msgid="2588159530959868188">"已連線, 裝置, 耳罩式耳機, 耳機, 喇叭, 無線, 配對, 耳塞式耳機, 音樂, 媒體"</string>
<string name="keywords_wallpaper" msgid="7332890404629446192">"背景, 主題, 格線, 自訂, 個人化"</string>
- <!-- no translation found for keywords_styles (1137053187860081131) -->
- <skip />
+ <string name="keywords_styles" msgid="1137053187860081131">"圖示, 圖示, 強調色, 顏色, 主畫面, 螢幕鎖定, 捷徑, 時鐘大小"</string>
<string name="keywords_assist_input" msgid="3086289530227075593">"預設, Google 助理"</string>
<string name="keywords_default_payment_app" msgid="5162298193637362104">"付款, 預設"</string>
<string name="keywords_ambient_display" msgid="3149287105145443697">"收到的通知"</string>
@@ -3322,6 +3323,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{無}=1{已設定 1 個時間表}other{已設定 # 個時間表}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"零打擾"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"優先模式"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"僅接收重要聯絡人和應用程式的通知"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"降低干擾"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"開啟「零打擾」模式"</string>
@@ -3332,14 +3335,13 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"編輯"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"排程"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"排程"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
- <skip />
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"自動開啟"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"新增日曆"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"使用日曆"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"安排時間"</string>
+ <string name="zen_mode_set_schedule_title" msgid="8023100831320026233">"設定時間表"</string>
+ <string name="zen_mode_set_schedule_link" msgid="2534032127923435737">"安排時間"</string>
+ <string name="zen_mode_schedule_duration" msgid="299332195675875111">"<xliff:g id="HOURS">%1$d</xliff:g> 小時 <xliff:g id="MINUTES">%2$d</xliff:g> 分鐘"</string>
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"排程"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"在特定時間將手機設為靜音"</string>
<string name="zen_mode_automation_suggestion_summary" msgid="1946750790084170826">"設定「零打擾」規則"</string>
@@ -3366,7 +3368,7 @@
<string name="mode_dark_theme_title_secondary_list" msgid="4761262694149772845">"啟用深色主題"</string>
<string name="mode_dark_theme_summary" msgid="8428887193785431898">"將作業系統和應用程式偏好設定切換成「淺色文字搭配深色背景」。這項設定或許可以降低眼睛負擔,而且在某些裝置上還能節省大量電力"</string>
<string name="mode_display_settings_summary" msgid="5929234706883482380">"{count,plural,offset:2 =0{沒有顯示變更}=1{{effect_1}}=2{{effect_1}和{effect_2}}=3{{effect_1}、{effect_2}和{effect_3}}other{{effect_1}、{effect_2}和另外 # 個設定}}"</string>
- <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"用來過濾通知的顯示選項"</string>
+ <string name="zen_mode_restrict_notifications_title" msgid="4926944083757096458">"如何顯示已過濾的通知"</string>
<string name="zen_mode_restrict_notifications_category" msgid="5870944770935394566">"開啟「零打擾」模式時"</string>
<string name="zen_mode_restrict_notifications_mute" msgid="6692072837485018287">"不發出通知音效"</string>
<string name="zen_mode_restrict_notifications_mute_summary" msgid="966597459849580949">"通知會顯示在畫面上"</string>
@@ -3610,9 +3612,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"這個應用程式不支援加強型設定"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"更多設定"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"應用程式內提供更多設定"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"通知冷靜模式"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"使用通知冷靜模式"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"如果短時間內收到過多通知,裝置盡可能減少聲音干擾和螢幕上的彈出式通知。系統仍會照常傳送來電、鬧鐘和重要對話通知。此外,只要將通知欄往下拉,就能查看所有收到的通知。"</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"套用至工作資料夾"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"套用到工作資料夾應用程式"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"VR 小幫手服務"</string>
@@ -3671,7 +3676,7 @@
<string name="app_notification_fsi_permission_summary" msgid="7673487977631068039">"允許在裝置鎖定時顯示全螢幕通知。"</string>
<string name="notification_badge_title" msgid="6854537463548411313">"允許使用通知圓點"</string>
<string name="notification_channel_badge_title" msgid="6505542437385640049">"顯示通知圓點"</string>
- <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"忽略「零打擾」模式設定"</string>
+ <string name="app_notification_override_dnd_title" msgid="3769539356442226691">"忽略「零打擾」模式"</string>
<string name="app_notification_override_dnd_summary" msgid="4894641191397562920">"允許系統在「零打擾」模式開啟時繼續發出這些通知"</string>
<string name="app_notification_visibility_override_title" msgid="7778628150022065920">"螢幕鎖定"</string>
<string name="app_notifications_dialog_done" msgid="573716608705273004">"完成"</string>
@@ -3763,15 +3768,12 @@
<string name="zen_mode_events_summary" msgid="3241903481309766428">"近期日曆活動的通知/音效"</string>
<string name="zen_mode_events_list" msgid="7191316245742097229">"活動"</string>
<string name="zen_mode_events_list_first" msgid="7425369082835214361">"活動"</string>
- <!-- no translation found for zen_mode_apps_title (1691010857014041183) -->
- <skip />
- <!-- no translation found for zen_mode_apps_category (4082380323683889391) -->
- <skip />
- <!-- no translation found for zen_mode_apps_priority_apps (7386196048313716076) -->
- <skip />
- <!-- no translation found for zen_mode_apps_none_apps (2493642312793604327) -->
- <skip />
- <!-- no translation found for zen_mode_apps_all_apps (705700582778445484) -->
+ <string name="zen_mode_apps_title" msgid="1691010857014041183">"應用程式"</string>
+ <string name="zen_mode_apps_category" msgid="4082380323683889391">"例外的應用程式"</string>
+ <string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"所選應用程式"</string>
+ <string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"無"</string>
+ <string name="zen_mode_apps_all_apps" msgid="705700582778445484">"全部"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
<skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"允許應用程式覆寫"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"例外的應用程式"</string>
@@ -3809,6 +3811,9 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{變更為僅限鬧鐘模式並持續 1 小時,結束時間為 {time}}other{變更為僅限鬧鐘模式並持續 # 小時,結束時間為 {time}}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"變更為僅允許鬧鐘模式,結束時間為 <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"變更為一律允許干擾模式"</string>
+ <string name="zen_mode_action_change_name" msgid="766639614789907016">"重新命名"</string>
+ <string name="zen_mode_action_change_icon" msgid="6192187791750301778">"變更圖示"</string>
+ <string name="zen_mode_icon_picker_title" msgid="6845490379143557472">"變更圖示"</string>
<string name="warning_button_text" msgid="1274234338874005639">"警告"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"關閉"</string>
<string name="device_feedback" msgid="5351614458411688608">"傳送你對這個裝置的意見"</string>
@@ -4792,6 +4797,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"左耳機"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"右耳機"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"充電盒"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"電池"</string>
<string name="settings_panel_title" msgid="346363079938069215">"設定面板"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"強制使用桌面模式"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"在次要顯示器上強制使用桌面模式實驗性功能"</string>
@@ -4976,7 +4982,7 @@
<string name="mobile_data_no_connection" msgid="905897142426974030">"沒有網路連線"</string>
<string name="mobile_data_off_summary" msgid="1884248776904165539">"系統將不會自動使用行動數據連線"</string>
<string name="mobile_data_disable_title" msgid="8438714772256088913">"要關閉行動數據嗎?"</string>
- <string name="mobile_data_disable_message" msgid="7829414836454769970">"你將無法透過「<xliff:g id="CARRIER">%s</xliff:g>」使用行動數據或網際網路,只能透過 Wi-Fi 使用網際網路。"</string>
+ <string name="mobile_data_disable_message" msgid="7829414836454769970">"你將無法透過「<xliff:g id="CARRIER">%s</xliff:g>」使用行動數據或網際網路,只能利用 Wi-Fi 上網。"</string>
<string name="mobile_data_disable_message_default_carrier" msgid="4449469407705838612">"你的電信業者"</string>
<string name="not_allowed_by_ent" msgid="1958611623122304411">"貴機構禁止使用"</string>
<string name="aware_summary_when_bedtime_on" msgid="2063856008597376344">"就寢時間模式開啟時無法使用"</string>
diff --git a/res/values-zu/arrays.xml b/res/values-zu/arrays.xml
index 353c8ef..f5b168f 100644
--- a/res/values-zu/arrays.xml
+++ b/res/values-zu/arrays.xml
@@ -498,4 +498,13 @@
<!-- no translation found for private_space_auto_lock_options:0 (551584871228110817) -->
<!-- no translation found for private_space_auto_lock_options:1 (3263162333754809690) -->
<!-- no translation found for private_space_auto_lock_options:2 (1575103586471380629) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:0 (6386593780953863398) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:1 (4152450357280759894) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:2 (7096549258219399423) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:3 (2760716776980432977) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:4 (601734478369121764) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:5 (6243809315432780521) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:6 (4913577903148415331) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:7 (3653377604690057780) -->
+ <!-- no translation found for zen_mode_icon_options_descriptions:8 (3843711267408385410) -->
</resources>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 003759a..1ff9fb0 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -65,7 +65,8 @@
<string name="bluetooth_disconnect_title" msgid="4581951246357823044">"Nqamula idivayisi?"</string>
<string name="bluetooth_pairing_pref_title" msgid="3497193027590444598">"Bhangqa idivayisi entsha"</string>
<string name="keywords_add_bt_device" msgid="4533191164203174011">"i-bluetooth"</string>
- <string name="bluetooth_screen_auto_on_title" msgid="8496443490064988240">"Vula ngokuzenzekela futhi kusasa"</string>
+ <!-- no translation found for bluetooth_screen_auto_on_title (2203993262483477532) -->
+ <skip />
<string name="bluetooth_pair_right_ear_button" msgid="3979894494803078852">"Bhangqa indlebe engakwesokudla"</string>
<string name="bluetooth_pair_left_ear_button" msgid="1019938875726073791">"Bhangqa indlebe engakwesokunxele"</string>
<string name="bluetooth_pair_other_ear_dialog_title" msgid="3814943511999984012">"Bhangqa enye indlebe yakho"</string>
@@ -75,7 +76,7 @@
<string name="bluetooth_pair_other_ear_dialog_left_ear_positive_button" msgid="6500192653171220257">"Bhangqa indlebe engakwesokunxele"</string>
<string name="bluetooth_hearing_device_settings_title" msgid="6060072560486755057">"Amasethingi ensizakuzwa"</string>
<string name="bluetooth_hearing_device_settings_summary" msgid="3822646075744075158">"Isinqamuleli, ukuhambisana kwensiza yokuzwa"</string>
- <string name="bluetooth_hearing_aids_presets" msgid="5429761844739722885">"Ukusetha ngaphambilini"</string>
+ <string name="bluetooth_hearing_aids_presets" msgid="4615094985857156388">"Ukusetha ngaphambilini"</string>
<string name="bluetooth_hearing_aids_presets_error" msgid="2095249829735188484">"Ayikwazanga ukubuyekeza ukusetha ngaphambilini"</string>
<string name="bluetooth_audio_routing_title" msgid="5541729245424856226">"Okukhishwayo komsindo"</string>
<string name="bluetooth_audio_routing_about_title" msgid="5773336779246891954">"Mayelana nokuphumayo komsindo"</string>
@@ -312,7 +313,7 @@
<string name="security_settings_face_enroll_introduction_accessibility_diversity" msgid="2774962371839179206"></string>
<string name="security_settings_face_enroll_introduction_accessibility_vision" msgid="7700394302162170363"></string>
<string name="security_settings_face_enroll_introduction_cancel" msgid="7551159644361639436">"Khansela"</string>
- <string name="security_settings_face_enroll_introduction_no_thanks" msgid="1820618982738898717">"Cha ngiyabonga"</string>
+ <string name="security_settings_face_enroll_introduction_no_thanks" msgid="6603178409726203187">"Hhayi manje"</string>
<string name="security_settings_face_enroll_introduction_agree" msgid="6319476573697497750">"Ngiyavuma"</string>
<string name="security_settings_face_enroll_introduction_more" msgid="1970820298889710532">"Okuningi"</string>
<string name="security_settings_face_enroll_introduction_title" msgid="7061610077237098046">"Vula ngobuso bakho"</string>
@@ -373,7 +374,7 @@
<string name="security_settings_fingerprint_enroll_introduction_footer_title_2" msgid="5663733424583416266">"Cabanga njalo"</string>
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled" msgid="8957789840251747092">"Sebenzisa isigxivizo zomunwe zakho ukuze uvule ifoni yakho noma uvume ukuthenga.\n\nInothi: Awukwazi ukusebenzisa isigxivizo somunwe ukuvula le divayisi. Ngolwazi olubanzi, xhumana nomlawuli wenhlangano yakho."</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel" msgid="6086532316718920562">"Khansela"</string>
- <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="6104718999323591180">"Cha ngiyabonga"</string>
+ <string name="security_settings_fingerprint_enroll_introduction_no_thanks" msgid="1663906389456119842">"Hhayi manje"</string>
<string name="security_settings_fingerprint_enroll_introduction_agree" msgid="4068276083536421828">"Ngiyavuma"</string>
<string name="setup_fingerprint_enroll_skip_title" msgid="2473807887676247264">"Yeqa izigxivizo zeminwe?"</string>
<string name="setup_fingerprint_enroll_skip_after_adding_lock_text" msgid="2412645723804450304">"Ukusethwa kwezigxivizo zeminwe kuthatha iminithi noma amabili kuphela. Uma weqa lokhu, ungangeza izigxivizo zakho zeminwe ngemuva kwesikhathi kuzilungiselelo."</string>
@@ -382,7 +383,7 @@
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_title_2" msgid="2580899232734177771">"Indlela esebenza ngayo"</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_2" msgid="5909924864816776516">"Ukuvula Ngesigxivizo Seminwe kudala imodeli ehlukile yesigxivizo sakho seminwe ukuqinisekisa ukuthi nguwe. Ukuze kudalwe le modeli yesigxivizo seminwe ngesikhathi sokusethwa, uzothatha izithombe zesigxivizo sakho seminwe kusukela kuzimo ezihlukile."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_2" msgid="3493356605815124807">"Ukuvula ngesigxivizo somunwe kudala imodeli ehlukile yesigxivizo seminwe sengane yakho ukuqinisekisa ukuthi iyona. Ukudala le modeli yesigxivizo seminwe ngesikhathi sokusetha, bazothatha izithombe zesigxivizo sabo seminwe kusukela kuzimo ezihlukile."</string>
- <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Ukuze uthole imiphumela engcono, sebenzisa isivikeli sesikrini Esenzelwe I-Google esigunyaziwe. Kwezinye izivikeli zesikrini, isigxivizo sakho somunwe singase singasebenzi."</string>
+ <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Ukuze uthole imiphumela engcono, sebenzisa isivikeli sesikrini Esenzelwe IGoogle esigunyaziwe. Kwezinye izivikeli zesikrini, isigxivizo sakho somunwe singase singasebenzi."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Ukuze uthole imiphumela engcono, sebenzisa isivikeli sesikrini Esenzelwe I-Google esigunyaziwe. Kwezinye izivikeli zesikrini, isigxivizo somunwe wengane yakho ungase ungasebenzi."</string>
<string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more" msgid="5856010507790137793"></string>
<string name="security_settings_activeunlock_preference_title" msgid="4257580421087062228">"Ukuvula Iwashi"</string>
@@ -577,8 +578,6 @@
<string name="private_space_auto_lock_every_time" msgid="1215061855836002830">"Njalo lapho idivayisi ikhiya"</string>
<string name="private_space_auto_lock_after_inactivity" msgid="7107814517866649733">"Imizuzu emi-5 ngemuva kokuba isikrini sizozocisha"</string>
<string name="private_space_auto_lock_after_device_restart" msgid="288755768725895029">"Ngemuva Lokuqala kabusha kwedivayisi yakho kuphela"</string>
- <!-- no translation found for private_space_auto_lock_footer_message (2752467351969856487) -->
- <skip />
<string name="private_space_hide_page_title" msgid="3364639176511877414">"Fihla indawo engasese"</string>
<string name="private_space_hide_when_locked" msgid="6219472348124151797">"Fihla indawo engasese uma ikhiyiwe"</string>
<string name="private_space_hide_page_summary" msgid="6247773353685839242">"Ukuze umise abanye abantu bazi ukuthi unesikhala esiyimfihlo kudivayisi yakho, ungasifihla ohlwini lwakho lwama-app"</string>
@@ -609,11 +608,16 @@
<string name="private_space_setup_button_label" msgid="2094882154623560585">"Setha"</string>
<string name="private_space_setup_title" msgid="2272968244329821450">"Isikhala esiyimfihlo"</string>
<string name="private_space_hide_apps_summary" msgid="4418722947376042418">"Fihla noma ukhiye ama-app agodliwe endaweni ehlukile. Sebenzisa i-Google Account eqondile ukuze uthole ukuvikeleka okwengeziwe."</string>
- <string name="private_space_setup_sub_header" msgid="5454598292017819146">"Setha indawo engasese"</string>
- <string name="private_space_separate_account_text" msgid="4492251315012955548"><b>"Khetha i-Google Account yesikhala sakho"</b>\n"Ukusebenzisa i-akhawunti eqondile kusiza ekuvimbeni amafayela avumelanisiwe, izithombe kanye nama-imeyili ukuba kuvele ngaphandle kwesikhala sakho"</string>
+ <string name="private_space_setup_sub_header" msgid="550476876393954356">"Indlela esebenza ngayo"</string>
+ <string name="private_space_separate_account_text" msgid="790319706810190320"><b>"Sungula iGoogle Account yesikhala sakho"</b>\n"Uma usebenzisa i-akhawunti ezinikele, isiza ukumisa amafayela avunyelanisiwe, izithombe, nama-imeyili abonakala ngaphandle kwesikhala sakho"</string>
<string name="private_space_protected_lock_text" msgid="9123250938334372735"><b>"Setha ukhiye"</b>\n"Khiya indawo yakho ukuze uvimbele abanye abantu ekuyivuleni"</string>
- <string name="private_space_install_apps_text" msgid="5693139160766464498"><b>"Faka ama-app"</b>\n"Indawo yakho engasese ine-Play Store yayo ukuze ukwazi ukufaka ama-app kalula."</string>
- <string name="private_space_apps_permission_text" msgid="7476093383297232044">"Ama-app asendaweni yakho engasese ngeke avele emphathini wemvume, edeshibhodini yobumfihlo, nakwamanye amasethingi uma indawo yakho engasese ikhiyiwe.\n\nIndawo yakho engasese ayikwazi ukubuyiselwa edivayisini entsha. Uzodinga ukusetha enye indawo engasese uma ufuna ukusisebenzisa kwenye idivayisi.\n\nNoma ngubani oxhuma idivayisi yakho ekhompyutheni noma ofaka ama-app ayingozi edivayisini yakho angakwazi ukufinyelela endaweni yakho engasese."</string>
+ <string name="private_space_install_apps_text" msgid="8072027796190028830"><b>"Faka ama-app"</b>\n"Faka ama-app ofuna ukuwagcina ayimfihlo esikhaleni sakho"</string>
+ <string name="private_space_keep_in_mind_text" msgid="7721081172657563800">"Khumbula"</string>
+ <string name="private_space_apps_stopped_text" msgid="4034574118911250169"><b>"Ama-app ayama uma ukhiya isikhala sakho"</b>\n"Uma ukhiya isikhala sakho, ama-app asesikhaleni sakho ayamiswa futhi ngeke ukwazi ukuthola izaziso ezivela kuwo"</string>
+ <!-- no translation found for private_space_apps_permission_text (4416201648436201393) -->
+ <skip />
+ <!-- no translation found for private_space_settings_footer_text (3742468470394835356) -->
+ <skip />
<string name="private_space_learn_more_text" msgid="5314198983263277586">"Funda kabanzi mayelana nendawo engasese"</string>
<string name="private_space_few_moments_text" msgid="7166883272914424011">"Lokhu kuzothatha izikhathi ezimbalwa"</string>
<string name="private_space_setting_up_text" msgid="8458035555212009528">"Isetha isikhala esigodliwe…"</string>
@@ -623,7 +627,7 @@
<string name="private_space_lockscreen_summary" msgid="3053836076639653805">"Ungasetha ukhiye omusha wenzela nje indawo engasese, noma usebenzise isikhiya esifanayo osisebenzisela ukuvula idivayisi yakho"</string>
<string name="private_space_use_screenlock_label" msgid="9182153443192032782">"Sebenzisa ukukhiya isikrini"</string>
<string name="private_space_set_lock_label" msgid="1790408277477408475">"Khetha ukhiya omusha"</string>
- <string name="private_space_pre_finish_title" msgid="2314776598615113267">"Linda kancane…"</string>
+ <string name="private_space_wait_screen_title" msgid="1535431437075585381">"Linda kancane…"</string>
<string name="private_space_success_title" msgid="4351904015352046118">"Usulungile!"</string>
<string name="private_space_access_text" msgid="4433988836344567888">"Ukuze uthole isikhala sakho esiyimfihlo, iya ohlwini lwama-app akho bese uskrolela phansi"</string>
<string name="private_space_done_label" msgid="1020482651595246071">"Kwenziwe"</string>
@@ -637,14 +641,6 @@
<string name="private_space_choose_your_pin_header" msgid="4560802934975898265">"Setha i-PIN yakho yendawo yangasese"</string>
<string name="private_space_choose_your_password_header" msgid="7660259341095044434">"Setha iphasiwedi yendawo yangasese"</string>
<string name="private_space_choose_your_pattern_header" msgid="2165607102459936724">"Setha iphethini yendawo yangasese"</string>
- <string name="private_space_gaia_education_title" msgid="3787414895669666563">"Sungula i-Google Account ukuze usize ekugcineni idatha yakho igodliwe"</string>
- <string name="private_space_gaia_education_description" msgid="1592753570023264559">"Esikrinini esilandelayo ungangena ngemvume ku-akhawunti ukuze uyisebenzise nendawo engasese yakho"</string>
- <string name="private_space_gaia_education_header" msgid="7835879839637613495"><b>"Sungula i-akhawunti ezinikele ukuze usize ekumiseni idatha evela ngaphandle kwendawo engasese, njengale:"</b></string>
- <string name="private_space_gaia_education_bullet1" msgid="641701340908301992">"Izithombe, amafayela, ama-imeyile, oxhumana nabo, umcimbi wekhalenda kanye nenye idatha evunyelanisiwe"</string>
- <string name="private_space_gaia_education_bullet2" msgid="3679859681253672976">"Umlando wokudawuniloda we-app kanye nokunconywayo"</string>
- <string name="private_space_gaia_education_bullet3" msgid="1703614225321289717">"Umlando wokubhrawuza, amabhukhimakhi, kanye namaphasiwedi alondoloziwe"</string>
- <string name="private_space_gaia_education_bullet4" msgid="515761604505366164">"Okuqukethwe okusikiselwe okuhlobene nomsebenzi wakho kuma-app endawo engasese"</string>
- <string name="private_space_gaia_education_got_it" msgid="7824029819615566806">"Ngiyezwa"</string>
<string name="private_space_category_lock" msgid="1917657024358778169">"Khiya"</string>
<string name="private_space_category_hide" msgid="3236587591523126649">"Fihla"</string>
<string name="fingerprint_add_max" msgid="8639321019299347447">"Ungangeza izigxivizo zeminwe ezingafika kwezingu-<xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -1055,6 +1051,7 @@
<string name="wifi_certificate_summary_system" msgid="6521297326433133669">"Isitifiketi sesistimu"</string>
<string name="wifi_certificate_summary_pinning" msgid="5901067790901727957">"Ukuphina kwesitifiketi"</string>
<string name="wifi_details_title" msgid="222735438574597493">"Imininingwane yenethiwekhi"</string>
+ <string name="wep_network_less_secure_warning_title" msgid="2118823633436946728">"Le nethiwekhi isebenzisa iphrothokholi yokuvikela endala ebizwa ngeWEP, engavikelekile kangako"</string>
<string name="wifi_details_subnet_mask" msgid="1619151769276260512">"Imaski ye-subnet"</string>
<string name="server_name_title" msgid="7257095185810299066">"Igama leseva"</string>
<string name="wifi_type_title" msgid="2174893488722015838">"Uhlobo"</string>
@@ -1372,7 +1369,7 @@
<string name="status_device_wifi_mac_address" msgid="1896121694334176494">"Ikheli le-Wi‑Fi MAC ledivayisi"</string>
<string name="status_bt_address" msgid="6919660304578476547">"Ikheli le-Bluetooth"</string>
<string name="status_serial_number" msgid="9060064164331466789">"Inombolo yomkhiqizo"</string>
- <string name="status_up_time" msgid="1274778533719495438">"Isikhathi esiphezulu"</string>
+ <string name="status_up_time" msgid="4250719389455342087">"Isikhathi ikhanya"</string>
<string name="battery_manufacture_date" msgid="7139426520156833987">"Ilanga lokukhiqiza"</string>
<string name="battery_first_use_date" msgid="3157207331722711317">"Ilanga lokuqala ukusebenzisa"</string>
<string name="battery_cycle_count" msgid="2912949283386571900">"Isibalo somjikelezo"</string>
@@ -1927,6 +1924,12 @@
<string name="trackpad_bottom_right_tap_title" msgid="6275428879042702880">"Thepha phansi kwesokudla"</string>
<string name="trackpad_bottom_right_tap_summary" msgid="8734094086900680674">"Thepha ekhoneni elingezansi kwesokudla lephedi yokuthinta ukuze uthole okungakhethwa kukho okwengeziwe"</string>
<string name="trackpad_pointer_speed" msgid="7786579408631352625">"Ijubane lesikhombi"</string>
+ <string name="pointer_fill_style" msgid="8413840032931637595">"Isitayela sokugcwalisa isikhombi"</string>
+ <string name="pointer_fill_style_black_button" msgid="4540815366995820960">"Shintsha isitayela sokugcwalisa isikhombi sibe mnyama"</string>
+ <string name="pointer_fill_style_green_button" msgid="3731413496528067979">"Shintsha isitayela sokugcwalisa isikhombi sibe luhlaza"</string>
+ <string name="pointer_fill_style_yellow_button" msgid="5025969961559379024">"Shintsha isitayela sokugcwalisa isikhombi sibe phuzi"</string>
+ <string name="pointer_fill_style_pink_button" msgid="4106218142489635673">"Shintsha isitayela sokugcwalisa isikhombi sibe phinki"</string>
+ <string name="pointer_fill_style_blue_button" msgid="5594958078854032785">"Shintsha isitayela sokugcwalisa isikhombi sibe luhlaza okwesibhakabhaka"</string>
<string name="trackpad_touch_gesture" msgid="8641725062131922497">"Funda ukunyakaza kwephedi lokuthinta"</string>
<string name="keywords_touchpad" msgid="8159846254066666032">"i-trackpad, i-track pad, imawuzi, i-cursor, skrola, swayipha, chofoza kwesokudla, chofoza, isikhombi"</string>
<string name="keywords_trackpad_bottom_right_tap" msgid="1285062446073929305">"chofoza ngakwesokudla, thepha"</string>
@@ -3321,6 +3324,8 @@
<string name="zen_mode_settings_schedules_summary" msgid="2047688589286811617">"{count,plural, =0{Lutho}=1{ishejuli esethiwe e-1}one{amashejuli asethiwe angu-#}other{amashejuli asethiwe angu-#}}"</string>
<string name="zen_mode_settings_title" msgid="682676757791334259">"Ungaphazamisi"</string>
<string name="zen_modes_list_title" msgid="5138745349253275428">"Amamodi Abalulekile"</string>
+ <!-- no translation found for zen_modes_add_mode (4806287336036228772) -->
+ <skip />
<string name="zen_mode_settings_summary" msgid="6040862775514495191">"Yaziswa kuphela abantu ababalulekile nezinhlelo zokusebenza"</string>
<string name="zen_mode_slice_subtitle" msgid="6849372107272604160">"Khawulela ukuphazamisa"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="7500702838426404527">"Vula ukungaphazamisi"</string>
@@ -3331,13 +3336,15 @@
<string name="zen_mode_rule_name_edit" msgid="1053237022416700481">"Hlela"</string>
<string name="zen_mode_automation_settings_page_title" msgid="6217433860514433311">"Amashejuli"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="5264835276518295033">"Ishejuli"</string>
- <!-- no translation found for zen_mode_automatic_trigger_title (9193777783079000267) -->
+ <string name="zen_mode_automatic_trigger_title" msgid="9193777783079000267">"Vula ngokuzenzekela"</string>
+ <string name="zen_mode_set_calendar_title" msgid="7216665046452644450">"Engeza ikhalenda"</string>
+ <string name="zen_mode_set_calendar_link" msgid="5694504696975898068">"Sebenzisa ikhalenda yakho"</string>
+ <string name="zen_mode_set_calendar_category_title" msgid="4860286061420133360">"Shejula"</string>
+ <!-- no translation found for zen_mode_set_schedule_title (8023100831320026233) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_title (7216665046452644450) -->
+ <!-- no translation found for zen_mode_set_schedule_link (2534032127923435737) -->
<skip />
- <!-- no translation found for zen_mode_set_calendar_link (5694504696975898068) -->
- <skip />
- <!-- no translation found for zen_mode_set_calendar_category_title (4860286061420133360) -->
+ <!-- no translation found for zen_mode_schedule_duration (299332195675875111) -->
<skip />
<string name="zen_mode_schedule_category_title" msgid="1381879916197350988">"Ishejuli"</string>
<string name="zen_mode_automation_suggestion_title" msgid="7776129050500707960">"Thulisa ifoni ngezinye izikhathi"</string>
@@ -3609,9 +3616,12 @@
<string name="notif_listener_not_migrated" msgid="6265206376374278226">"Le app ayisekeli amasethingi athuthukisiwe"</string>
<string name="notif_listener_more_settings" msgid="1348409392307208921">"Amanye amasethingi"</string>
<string name="notif_listener_more_settings_desc" msgid="7995492074281663658">"Amasethingi engeziwe ayatholakala ngaphakathi kwale app"</string>
- <string name="notification_polite_title" msgid="3801775758735739286">"Ukuphola"</string>
- <string name="notification_polite_main_control_title" msgid="855117131309844580">"Sebenzisa Ukuphola"</string>
- <string name="notification_polite_description" msgid="6414215800132666462">"Uma uthola izaziso eziningi ngesikhathi esifushane, idivayisi yakho izonciphisa ukuphazamiseka komsindo namapop-up esikrinini. Amakholi, ama-alamu, nezingxoxo ezibalulekile zisazoxwayisa njengokujwayelekile, futhi zonke izaziso ezilethiwe zitholakala kalula Emthunzini."</string>
+ <!-- no translation found for notification_polite_title (4737150709382859870) -->
+ <skip />
+ <!-- no translation found for notification_polite_main_control_title (7267191551379543859) -->
+ <skip />
+ <!-- no translation found for notification_polite_description (7749280535620291610) -->
+ <skip />
<string name="notification_polite_work" msgid="8823596456640216391">"Sebenzisa kumaphrofayela omsebenzi"</string>
<string name="notification_polite_work_summary" msgid="5014189280132951378">"Kusebenzise kuma-app ephrofayela yomsebenzi"</string>
<string name="vr_listeners_title" msgid="4960357292472540964">"Amasevisi omsizi we-VR"</string>
@@ -3767,6 +3777,8 @@
<string name="zen_mode_apps_priority_apps" msgid="7386196048313716076">"Ama-app akhethiwe"</string>
<string name="zen_mode_apps_none_apps" msgid="2493642312793604327">"Lutho"</string>
<string name="zen_mode_apps_all_apps" msgid="705700582778445484">"Konke"</string>
+ <!-- no translation found for zen_mode_apps_subtext (1764211974662012877) -->
+ <skip />
<string name="zen_mode_bypassing_apps" msgid="625309443389126481">"Vumela izinhlelo zokusebenza ukubhala ngaphezulu"</string>
<string name="zen_mode_bypassing_apps_header" msgid="60083006963906906">"Ama-app angaphazamisa"</string>
<string name="zen_mode_bypassing_apps_add_header" msgid="3201829605075172536">"Khetha ama-app amaningi"</string>
@@ -3803,6 +3815,12 @@
<string name="zen_mode_summary_alarms_only_by_hour" msgid="7400910210950788163">"{count,plural, =1{Shintshela kuma-alamu ihora elilodwa kuze kube {time}}one{Shintshela kuma-alamu kuphela amahora angu-# (kuze kube {time})}other{Shintshela kuma-alamu kuphela amahora angu-# (kuze kube {time})}}"</string>
<string name="zen_mode_summary_alarms_only_by_time" msgid="8140619669703968810">"Guqulela kuma-alamu kuphela kuze kube ngumhla ka-<xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
<string name="zen_mode_summary_always" msgid="722093064250082317">"Guqulela kuhlala uphazamisa"</string>
+ <!-- no translation found for zen_mode_action_change_name (766639614789907016) -->
+ <skip />
+ <!-- no translation found for zen_mode_action_change_icon (6192187791750301778) -->
+ <skip />
+ <!-- no translation found for zen_mode_icon_picker_title (6845490379143557472) -->
+ <skip />
<string name="warning_button_text" msgid="1274234338874005639">"Isexwayiso"</string>
<string name="suggestion_button_close" msgid="6865170855573283759">"Vala"</string>
<string name="device_feedback" msgid="5351614458411688608">"Thumela impendulo mayelana nale divayisi"</string>
@@ -4786,6 +4804,7 @@
<string name="bluetooth_left_name" msgid="7440064067910080502">"Kwesobunxele"</string>
<string name="bluetooth_right_name" msgid="7588088072444124949">"Okungakwesokudla"</string>
<string name="bluetooth_middle_name" msgid="3909371955137442319">"Isimo"</string>
+ <string name="bluetooth_header_battery_content_description" msgid="3804237436331504879">"Ibhethri"</string>
<string name="settings_panel_title" msgid="346363079938069215">"Iphaneli yezilungiselelo"</string>
<string name="force_desktop_mode" msgid="1336913605091334238">"Phoqelela imodi yedeskithophu"</string>
<string name="force_desktop_mode_summary" msgid="4587416867846930479">"Phoqelela imodi yedeskithophu yokuhlola esibukisweni sesibili"</string>
diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index 98d93a0..adaea1b 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -1525,4 +1525,31 @@
<item>2</item>
</string-array>
+ <!-- TODO: b/333901673 - Get full icon list. -->
+ <array name="zen_mode_icon_options" translatable="false">
+ <item>@*android:drawable/ic_zen_mode_type_bedtime</item>
+ <item>@*android:drawable/ic_zen_mode_type_driving</item>
+ <item>@*android:drawable/ic_zen_mode_type_immersive</item>
+ <item>@*android:drawable/ic_zen_mode_type_managed</item>
+ <item>@*android:drawable/ic_zen_mode_type_other</item>
+ <item>@*android:drawable/ic_zen_mode_type_schedule_calendar</item>
+ <item>@*android:drawable/ic_zen_mode_type_schedule_time</item>
+ <item>@*android:drawable/ic_zen_mode_type_theater</item>
+ <item>@*android:drawable/ic_zen_mode_type_unknown</item>
+ </array>
+
+ <!-- TODO: b/333901673 - Complete list -->
+ <!-- Descriptions of the icons in zen_mode_icon_options. Should describe the associated image
+ [CHAR LIMIT=NONE] -->
+ <string-array name="zen_mode_icon_options_descriptions">
+ <item>Bedtime</item>
+ <item>Driving</item>
+ <item>Immersive</item>
+ <item>Managed</item>
+ <item>Star</item>
+ <item>Calendar</item>
+ <item>Time</item>
+ <item>Theater</item>
+ <item>Flower</item>
+ </string-array>
</resources>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 402fd04..d972e13 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -174,6 +174,12 @@
<dimen name="keyboard_picker_radius">28dp</dimen>
<dimen name="keyboard_picker_text_size">16sp</dimen>
+ <!-- Pointer -->
+ <dimen name="pointer_fill_style_circle_diameter">52dp</dimen>
+ <dimen name="pointer_fill_style_circle_padding">8dp</dimen>
+ <dimen name="pointer_fill_style_shape_default_stroke">1dp</dimen>
+ <dimen name="pointer_fill_style_shape_hovered_stroke">3dp</dimen>
+
<!-- RemoteAuth-->
<dimen name="remoteauth_fragment_padding_horizontal">40dp</dimen>
<dimen name="remoteauth_fragment_subtitle_text_size">14sp</dimen>
@@ -491,4 +497,9 @@
<dimen name="audio_streams_qrcode_size">264dp</dimen>
<dimen name="audio_streams_qrcode_preview_radius">30dp</dimen>
+
+ <!-- Zen Modes -->
+ <dimen name="zen_mode_icon_list_item_size">96dp</dimen>
+ <dimen name="zen_mode_icon_list_circle_diameter">56dp</dimen>
+ <dimen name="zen_mode_icon_list_icon_size">32dp</dimen>
</resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ba14ce1..f92fd2a 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -133,7 +133,7 @@
<!-- Keywords for bluetooth pairing item [CHAR LIMIT=30] -->
<string name="keywords_add_bt_device">bluetooth</string>
<!-- Title for bluetooth auto on toggle [CHAR LIMIT=60] -->
- <string name="bluetooth_screen_auto_on_title">Automatically turn on again tomorrow</string>
+ <string name="bluetooth_screen_auto_on_title">Automatically turn on tomorrow</string>
<!-- Button to help user to pair right ear of the hearing aid device. It will show when only one of the hearing aid device set is connected. [CHAR LIMIT=20] -->
@@ -1282,8 +1282,6 @@
<string name="private_space_auto_lock_after_inactivity">5 minutes after screen timeout</string>
<!-- Configure auto lock: Value for auto lock configuration to lock private space only after device restarts. [CHAR LIMIT=40] -->
<string name="private_space_auto_lock_after_device_restart">Only after device restarts</string>
- <!-- Note in footer of private space auto lock settings page that using privae apps may need a lock verification when a separate lock is used for private space. [CHAR LIMIT=NONE] -->
- <string name="private_space_auto_lock_footer_message">If you use a different lock for your private space, you may need to verify it\u2019s you to open apps in your private space.</string>
<!-- Title for the settings page for hiding private space. [CHAR LIMIT=45] -->
<string name="private_space_hide_page_title">Hide private space</string>
<!-- Title for the settings preference for hiding private space when it's locked. [CHAR LIMIT=60] -->
@@ -1357,9 +1355,9 @@
<!-- Text shown in private space setup screen which explains that apps in private space are stopped when private space is locked. [CHAR LIMIT=NONE] -->
<string name="private_space_apps_stopped_text"><b>Apps stop when you lock your space</b>\nWhen you lock your space, apps in your space are stopped and you won\u2019t receive notifications from them</string>
<!-- This is info text to help explain in private space setup screen that the permissions granted to private space apps will not be shown in settings when private space is locked. [CHAR LIMIT=NONE] -->
- <string name="private_space_apps_permission_text">Apps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when your private space is locked.\n\nYour private space can\'t be moved to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs harmful apps on your device may be able to access your private space.</string>
+ <string name="private_space_apps_permission_text">Private spaces are not suitable for apps that need to run in the background or send critical notifications, such as medical apps. This is because notifications and background activity are stopped when your space is locked.\n\nApps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when your private space is locked.\n\nYour private space can\'t be moved to a new device. You\'ll need to set up another private space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs harmful apps on your device may be able to access your private space.</string>
<!-- This is footer text in private space settings page to help explain that when private space is locked the apps are stopped, the permissions granted to private space apps will not be shown in settings. [CHAR LIMIT=NONE] -->
- <string name="private_space_settings_footer_text">When you lock your space, apps in your private space are stopped and you won\u2019t receive notifications from them.\n\nApps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when private space is locked.\n\nYour private space can\'t be restored to a new device. You\u2019ll need to set up another space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space.</string>
+ <string name="private_space_settings_footer_text">Private spaces are not suitable for apps that need to run in the background or send critical notifications, such as medical apps. This is because notifications and background activity are stopped when your space is locked.\n\nApps in your private space won\'t appear in permission manager, privacy dashboard, and other settings when private space is locked.\n\nYour private space can\'t be restored to a new device. You\u2019ll need to set up another space if you want to use it on another device.\n\nAnyone that connects your device to a computer or installs malicious apps on your device may be able to access your private space.</string>
<!-- Private space footer link content description [CHAR LIMIT=40] -->
<string name="private_space_learn_more_text">Learn more about private space</string>
<string name="private_space_learn_more_url" translatable="false">https://support.google.com/android?p=private_space</string>
@@ -1380,7 +1378,7 @@
<!-- Label for private space lock setup button to choose a new lock. [CHAR LIMIT=50] -->
<string name="private_space_set_lock_label">Choose new lock</string>
<!-- Title for private space setup pre completion screen to add a delay. [CHAR LIMIT=30] -->
- <string name="private_space_pre_finish_title">Just a sec\u2026</string>
+ <string name="private_space_wait_screen_title">Just a sec\u2026</string>
<!-- Title for private space setup success screen. [CHAR LIMIT=30] -->
<string name="private_space_success_title">All set!</string>
<!-- Summary for the private space setup success screen. [CHAR LIMIT=NONE] -->
@@ -1407,22 +1405,6 @@
<string name="private_space_choose_your_password_header">Set a password for your private space</string>
<!-- Header for private space choose your pattern screen [CHAR LIMIT=40] -->
<string name="private_space_choose_your_pattern_header">Set a pattern for your private space</string>
- <!-- Title for private space GAIA education screen [CHAR LIMIT=90] -->
- <string name="private_space_gaia_education_title">Create a Google Account to help keep your data private</string>
- <!-- Description for private space GAIA education screen [CHAR LIMIT=120] -->
- <string name="private_space_gaia_education_description">On the next screen you can sign in to an account to use with your private space</string>
- <!-- Sub header for private space GAIA education screen [CHAR LIMIT=120] -->
- <string name="private_space_gaia_education_header"><b>Create a dedicated account to help stop data appearing outside private space, such as:</b></string>
- <!-- Text for private space GAIA education screen [CHAR LIMIT=90] -->
- <string name="private_space_gaia_education_bullet1">Synced photos, files, emails, contacts, calendar events, and other data</string>
- <!-- Text for private space GAIA education screen [CHAR LIMIT=60] -->
- <string name="private_space_gaia_education_bullet2">App download history and recommendations</string>
- <!-- Text for private space GAIA education screen [CHAR LIMIT=60] -->
- <string name="private_space_gaia_education_bullet3">Browsing history, bookmarks, and saved passwords</string>
- <!-- Text for private space GAIA education screen [CHAR LIMIT=90] -->
- <string name="private_space_gaia_education_bullet4">Suggested content related to your activity in private space apps</string>
- <!-- Text for button in private space GAIA education screen to start login [CHAR LIMIT=20] -->
- <string name="private_space_gaia_education_got_it">Got it</string>
<!-- The title of the category for settings related to the private space lock [CHAR LIMIT=20] -->
<string name="private_space_category_lock">Lock</string>
<!-- The title of the category for settings related to hiding the private space [CHAR LIMIT=20] -->
@@ -4474,6 +4456,18 @@
<string name="trackpad_bottom_right_tap_summary">Tap the bottom right corner of the touchpad for more options</string>
<!-- Title text for 'Pointer speed'. [CHAR LIMIT=35] -->
<string name="trackpad_pointer_speed">Pointer speed</string>
+ <!-- Title text for mouse pointer fill style. [CHAR LIMIT=35] -->
+ <string name="pointer_fill_style">Pointer fill style</string>
+ <!-- Content description for black pointer fill style. [CHAR LIMIT=60] -->
+ <string name="pointer_fill_style_black_button">Change pointer fill style to black</string>
+ <!-- Content description for green pointer fill style. [CHAR LIMIT=60] -->
+ <string name="pointer_fill_style_green_button">Change pointer fill style to green</string>
+ <!-- Content description for yellow pointer fill style. [CHAR LIMIT=60] -->
+ <string name="pointer_fill_style_yellow_button">Change pointer fill style to yellow</string>
+ <!-- Content description for pink pointer fill style. [CHAR LIMIT=60] -->
+ <string name="pointer_fill_style_pink_button">Change pointer fill style to pink</string>
+ <!-- Content description for blue pointer fill style. [CHAR LIMIT=60] -->
+ <string name="pointer_fill_style_blue_button">Change pointer fill style to blue</string>
<!-- Title for the button to trigger the 'touch gesture' education. [CHAR LIMIT=35] -->
<string name="trackpad_touch_gesture">Learn touchpad gestures</string>
<!-- Search keywords for "touchpad" -->
@@ -7912,7 +7906,7 @@
<!-- Sound: Footer hyperlink text to launch the Connected devices settings page. [CHAR LIMIT=NONE]-->
<string name="spatial_audio_footer_learn_more_text">Connected devices settings</string>
- <!-- Sound: Summary for the Do not Disturb option that describes how many automatic rules (schedules) are enabled [CHAR LIMIT=NONE]-->
+ <!-- Zen Modes: Summary for the Do not Disturb option that describes how many automatic rules (schedules) are enabled [CHAR LIMIT=NONE]-->
<string name="zen_mode_settings_schedules_summary">
{count, plural,
=0 {None}
@@ -7921,13 +7915,16 @@
}
</string>
- <!-- Sound: Title for the Do not Disturb option and associated settings page. [CHAR LIMIT=50]-->
+ <!-- Zen Modes: Title for the Do not Disturb option and associated settings page. [CHAR LIMIT=50]-->
<string name="zen_mode_settings_title">Do Not Disturb</string>
- <!-- Sound: Title for the Modes option and associated settings page. [CHAR LIMIT=50]-->
+ <!-- Zen Modes: Title for the Modes option and associated settings page. [CHAR LIMIT=50]-->
<string name="zen_modes_list_title">Priority Modes</string>
- <!-- Sound: Summary for the Do not Disturb option and associated settings page. [CHAR LIMIT=240]-->
+ <!-- Zen Modes: Caption of the "add a mode" item in the modes list -->
+ <string name="zen_modes_add_mode">Add a mode</string>
+
+ <!-- Zen Modes: Summary for the Do not Disturb option and associated settings page. [CHAR LIMIT=240]-->
<string name="zen_mode_settings_summary">Only get notified by important people and apps</string>
<!-- Subtitle for the Do not Disturb slice. [CHAR LIMIT=50]-->
@@ -7969,6 +7966,15 @@
<!-- Do not disturb: Title on the page where users choose a calendar to determine the schedule for an automatically-triggered DND rule. [CHAR LIMIT=30] -->
<string name="zen_mode_set_calendar_category_title">Schedule</string>
+ <!-- Do not disturb: Title prompting a user to set a time-based schedule to use for an automatic rule [CHAR LIMIT=30] -->
+ <string name="zen_mode_set_schedule_title">Set a schedule</string>
+
+ <!-- Do not disturb: Link text prompting a user to click through to setting a time-based schedule [CHAR LIMIT=40] -->
+ <string name="zen_mode_set_schedule_link">Schedule</string>
+
+ <!-- Duration in hours and minutes for the length of a Do Not Disturb schedule. For example "1 hr, 22 min" -->
+ <string name="zen_mode_schedule_duration"><xliff:g example="10" id="hours">%1$d</xliff:g> hr, <xliff:g example="20" id="minutes">%2$d</xliff:g> min</string>
+
<!-- Do not disturb: Title do not disturb settings representing automatic (scheduled) do not disturb rules. [CHAR LIMIT=30] -->
<string name="zen_mode_schedule_category_title">Schedule</string>
@@ -8729,9 +8735,9 @@
<string name="notif_listener_more_settings_desc">More settings are available inside this app</string>
<!-- Title for Polite Notifications setting [CHAR LIMIT=45]-->
- <string name="notification_polite_title">Cooldown</string>
- <string name="notification_polite_main_control_title">Use Cooldown</string>
- <string name="notification_polite_description">When you get many notifications within a short time span, your device will minimize sound interruptions and pop-ups on the screen. Calls, alarms, and priority conversations will still alert as notmal, and all delivered notifications are easy to find in the Shade.</string>
+ <string name="notification_polite_title">Adaptive Notifications</string>
+ <string name="notification_polite_main_control_title">Use adaptive notifications</string>
+ <string name="notification_polite_description">When you get many notifications within a short time, your phone will lower volume and minimize pop-ups on screen for up to two minutes. Calls, alarms, and priority conversations still vibrate, make a sound, or show up on the screen, and all notifications are easy to find when you pull down from the top of the screen.</string>
<string name="notification_polite_work">Apply to work profiles</string>
<string name="notification_polite_work_summary">Apply to work profile apps</string>
@@ -9208,6 +9214,16 @@
<string name="zen_mode_apps_none_apps">None</string>
<!-- [CHAR LIMIT=60] Zen mode settings: all apps will be able to bypass dnd -->
<string name="zen_mode_apps_all_apps">All</string>
+ <!-- [CHAR LIMIT=NONE] Zen mode settings: Lists apps that can bypass DND. For example, "Nest, Messages, and 2 more can interrupt". -->
+ <string name="zen_mode_apps_subtext">
+ {count, plural, offset:2
+ =0 {No apps can interrupt}
+ =1 {{app_1} can interrupt}
+ =2 {{app_1} and {app_2} can interrupt}
+ =3 {{app_1}, {app_2}, and {app_3} can interrupt}
+ other {{app_1}, {app_2}, and # more can interrupt}
+ }
+ </string>
<!-- [CHAR LIMIT=100] Zen mode settings: Allow apps to bypass DND -->
<string name="zen_mode_bypassing_apps">Allow apps to override</string>
@@ -9309,6 +9325,15 @@
<!-- [CHAR LIMIT=NONE] Zen mode summary spoken when changing mode by voice: Turn on all notifications. -->
<string name="zen_mode_summary_always">Change to always interrupt</string>
+ <!-- [CHAR LIMIT=20] Caption of the action button to change the name of a mode. -->
+ <string name="zen_mode_action_change_name">Rename</string>
+
+ <!-- [CHAR LIMIT=20] Caption of the action button to change the icon of a mode. -->
+ <string name="zen_mode_action_change_icon">Change icon</string>
+
+ <!-- [CHAR LIMIT=40] Zen mode settings: Title for the "choose mode icon" screen -->
+ <string name="zen_mode_icon_picker_title">Change icon</string>
+
<!-- Content description for help icon button [CHAR LIMIT=20] -->
<string name="warning_button_text">Warning</string>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 54e2fa2..0bd0406 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -968,8 +968,6 @@
</style>
<style name="PrivateSpaceSetupSubHeaderStyle" parent="@style/PrivateSpaceSetupTextFontStyle">
- <item name="android:paddingLeft">24dp</item>
- <item name="android:paddingRight">24dp</item>
<item name="android:paddingTop">20dp</item>
<item name="android:paddingBottom">8dp</item>
<item name="android:textSize">14sp</item>
@@ -977,8 +975,6 @@
</style>
<style name="PrivateSpaceSetupBulletPointLayoutStyle">
- <item name="android:paddingLeft">24dp</item>
- <item name="android:paddingRight">24dp</item>
<item name="android:paddingTop">16dp</item>
<item name="android:paddingBottom">16dp</item>
<item name="android:layout_width">fill_parent</item>
diff --git a/res/xml/accessibility_color_contrast.xml b/res/xml/accessibility_color_contrast.xml
index 651a583..ffa8072 100644
--- a/res/xml/accessibility_color_contrast.xml
+++ b/res/xml/accessibility_color_contrast.xml
@@ -33,8 +33,8 @@
<SwitchPreferenceCompat
android:key="toggle_high_text_contrast_preference"
android:persistent="false"
- android:summary="@string/accessibility_toggle_maximize_text_contrast_preference_summary"
- android:title="@string/accessibility_toggle_maximize_text_contrast_preference_title"
+ android:summary="@string/accessibility_toggle_high_text_contrast_preference_summary"
+ android:title="@string/accessibility_toggle_high_text_contrast_preference_title"
settings:controller=
"com.android.settings.accessibility.HighTextContrastPreferenceController" />
diff --git a/res/xml/accessibility_text_reading_options.xml b/res/xml/accessibility_text_reading_options.xml
index 1f8c24b..795c4ffb9 100644
--- a/res/xml/accessibility_text_reading_options.xml
+++ b/res/xml/accessibility_text_reading_options.xml
@@ -56,8 +56,8 @@
<SwitchPreferenceCompat
android:key="toggle_high_text_contrast_preference"
android:persistent="false"
- android:summary="@string/accessibility_toggle_maximize_text_contrast_preference_summary"
- android:title="@string/accessibility_toggle_maximize_text_contrast_preference_title" />
+ android:summary="@string/accessibility_toggle_high_text_contrast_preference_summary"
+ android:title="@string/accessibility_toggle_high_text_contrast_preference_title" />
<com.android.settings.accessibility.TextReadingResetPreference
android:key="reset"
diff --git a/res/xml/adb_wireless_settings.xml b/res/xml/adb_wireless_settings.xml
index 7d37207..4bf5544 100644
--- a/res/xml/adb_wireless_settings.xml
+++ b/res/xml/adb_wireless_settings.xml
@@ -53,7 +53,7 @@
settings:controller="com.android.settings.development.AdbQrCodePreferenceController"/>
<Preference
android:key="adb_pair_method_code_pref"
- android:icon="@drawable/ic_password"
+ android:icon="@drawable/ic_password_adb_wireless"
android:title="@string/adb_pair_method_code_title"
android:summary="@string/adb_pair_method_code_summary"/>
</PreferenceCategory>
diff --git a/res/xml/bluetooth_audio_streams_qr_code.xml b/res/xml/bluetooth_audio_streams_qr_code.xml
index a098845..5ec5505 100644
--- a/res/xml/bluetooth_audio_streams_qr_code.xml
+++ b/res/xml/bluetooth_audio_streams_qr_code.xml
@@ -47,8 +47,7 @@
<ImageView
android:id="@+id/qrcode_view"
android:layout_width="@dimen/qrcode_size"
- android:layout_height="@dimen/qrcode_size"
- android:src="@android:color/transparent"/>
+ android:layout_height="@dimen/qrcode_size"/>
<TextView
android:id="@+id/password"
diff --git a/res/xml/cellular_security.xml b/res/xml/cellular_security.xml
index 8e96bbd..dde152d 100644
--- a/res/xml/cellular_security.xml
+++ b/res/xml/cellular_security.xml
@@ -25,17 +25,17 @@
<PreferenceCategory
android:key="cellular_security_notifications_category"
android:title="@string/cellular_security_notifications"
- settings:controller="com.android.settings.network.CellularSecurityNotificationsDividerController">
+ settings:controller="com.android.settings.network.telephony.CellularSecurityNotificationsDividerController">
<SwitchPreferenceCompat
android:key="cellular_security_notifications"
android:title="@string/cellular_security_notifications_controller_title"
android:summary="@string/cellular_security_notifications_controller_summary"
settings:controller=
- "com.android.settings.network.CellularSecurityNotificationsPreferenceController"/>
+ "com.android.settings.network.telephony.CellularSecurityNotificationsPreferenceController"/>
</PreferenceCategory>
<PreferenceCategory
android:title="@string/cellular_security_settings_encryption_title"
- settings:controller="com.android.settings.network.CellularSecurityEncryptionDividerController">
+ settings:controller="com.android.settings.network.telephony.CellularSecurityEncryptionDividerController">
<SwitchPreferenceCompat
android:key="require_cellular_encryption"
android:title="@string/require_cellular_encryption_title"
diff --git a/res/xml/configure_notification_settings.xml b/res/xml/configure_notification_settings.xml
index 7fcf85e..b673a083 100644
--- a/res/xml/configure_notification_settings.xml
+++ b/res/xml/configure_notification_settings.xml
@@ -116,9 +116,19 @@
<PreferenceCategory
android:key="advanced_section_header"
android:title="@string/advanced_section_header">
+
+ <!--Adaptive Notifications-->
+ <Preference
+ android:fragment="com.android.settings.notification.PoliteNotificationsPreferenceFragment"
+ android:key="polite_notifications_preference"
+ android:order="17"
+ android:persistent="false"
+ android:title="@string/notification_polite_title"
+ settings:controller="com.android.settings.notification.PoliteNotificationsPreferenceController" />
+
<com.android.settingslib.RestrictedPreference
android:key="zen_mode_notifications"
- android:order="17"
+ android:order="18"
android:title="@string/zen_mode_settings_title"
settings:useAdminDisabledSummary="true"
android:fragment="com.android.settings.notification.zen.ZenModeSettings"
@@ -127,7 +137,7 @@
<SwitchPreferenceCompat
android:key="lock_screen_show_only_unseen_notifs"
- android:order="18"
+ android:order="19"
android:title="@string/unseen_notifs_lock_screen"
android:summary="@string/unseen_notifs_lock_screen_summary"
settings:controller="com.android.settings.notification.ShowOnlyUnseenNotificationsOnLockscreenPreferenceController"
@@ -136,7 +146,7 @@
<Preference
android:fragment="com.android.settings.accessibility.FlashNotificationsPreferenceFragment"
android:key="flash_notifications_preference"
- android:order="19"
+ android:order="20"
android:persistent="false"
android:title="@string/flash_notifications_title"
settings:searchable="false"
@@ -144,7 +154,7 @@
<com.android.settingslib.RestrictedPreference
android:key="app_and_notif_cell_broadcast_settings"
- android:order="20"
+ android:order="21"
android:title="@string/cell_broadcast_settings"
settings:useAdminDisabledSummary="true">
<intent
@@ -155,43 +165,36 @@
<SwitchPreferenceCompat
android:key="silent_icons"
- android:order="21"
+ android:order="22"
android:title="@string/silent_notifications_status_bar"
settings:controller="com.android.settings.notification.SilentStatusBarPreferenceController"/>
<SwitchPreferenceCompat
android:key="show_snooze_options"
- android:order="22"
+ android:order="23"
android:title="@string/snooze_options_title"
settings:controller="com.android.settings.notification.SnoozeNotificationPreferenceController" />
<!-- Notification badging -->
<SwitchPreferenceCompat
android:key="notification_badging"
- android:order="23"
+ android:order="24"
android:title="@string/notification_badging_title"
settings:controller="com.android.settings.notification.BadgingNotificationPreferenceController"/>
<!-- Pulse notification light, on devices that support it -->
<SwitchPreferenceCompat
android:key="notification_pulse"
- android:order="24"
+ android:order="25"
android:title="@string/notification_pulse_title"
settings:controller="com.android.settings.notification.PulseNotificationPreferenceController"/>
<SwitchPreferenceCompat
android:key="notification_assistant"
- android:order="25"
+ android:order="26"
android:title="@string/notification_assistant_title"
android:summary="@string/notification_assistant_summary"
settings:controller="com.android.settings.notification.NotificationAssistantPreferenceController"/>
- <Preference
- android:fragment="com.android.settings.notification.PoliteNotificationsPreferenceFragment"
- android:key="polite_notifications_preference"
- android:order="26"
- android:persistent="false"
- android:title="@string/notification_polite_title"
- settings:controller="com.android.settings.notification.PoliteNotificationsPreferenceController" />
</PreferenceCategory>
</PreferenceScreen>
diff --git a/res/xml/development_settings.xml b/res/xml/development_settings.xml
index 227f72d..866a529 100644
--- a/res/xml/development_settings.xml
+++ b/res/xml/development_settings.xml
@@ -675,6 +675,12 @@
android:title="@string/immediately_destroy_activities"
android:summary="@string/immediately_destroy_activities_summary" />
+ <ListPreference
+ android:key="app_process_limit"
+ android:title="@string/app_process_limit_title"
+ android:entries="@array/app_process_limit_entries"
+ android:entryValues="@array/app_process_limit_values" />
+
<Preference
android:key="background_check"
android:fragment="com.android.settings.applications.appops.BackgroundCheckSummary"
diff --git a/res/xml/modes_icon_picker.xml b/res/xml/modes_icon_picker.xml
new file mode 100644
index 0000000..cb0ff30
--- /dev/null
+++ b/res/xml/modes_icon_picker.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2024 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:key="zen_mode_icon_picker_page"
+ settings:searchable="false"
+ android:title="@string/zen_mode_icon_picker_title">
+
+ <com.android.settingslib.widget.LayoutPreference
+ android:key="current_icon"
+ android:layout="@layout/settings_entity_header" />
+
+ <com.android.settings.applications.SpacePreference
+ android:layout_height="16dp" />
+
+ <com.android.settingslib.widget.LayoutPreference
+ android:key="icon_list"
+ android:selectable="false"
+ android:layout="@layout/modes_icon_list"/>
+
+</PreferenceScreen>
diff --git a/res/xml/modes_list_settings.xml b/res/xml/modes_list_settings.xml
index c6b6200..8207af0 100644
--- a/res/xml/modes_list_settings.xml
+++ b/res/xml/modes_list_settings.xml
@@ -15,8 +15,10 @@
~ limitations under the License.
-->
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- android:title="@string/zen_modes_list_title" >
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:title="@string/zen_modes_list_title">
<!-- TODO: b/333682392 - add strings for summary as appropriate -->
@@ -25,4 +27,10 @@
<!-- Preferences leading to rules are added in this PreferenceCategory. -->
</PreferenceCategory>
+ <Preference
+ android:key="add_mode"
+ android:title="@string/zen_modes_add_mode"
+ android:icon="@drawable/ic_add_24dp"
+ settings:allowDividerAbove="false"/>
+
</PreferenceScreen>
diff --git a/res/xml/modes_rule_settings.xml b/res/xml/modes_rule_settings.xml
index f282274..cf090be 100644
--- a/res/xml/modes_rule_settings.xml
+++ b/res/xml/modes_rule_settings.xml
@@ -28,6 +28,10 @@
android:selectable="false"
android:layout="@layout/modes_activation_button"/>
+ <com.android.settingslib.widget.ActionButtonsPreference
+ android:key="actions"
+ android:selectable="true" />
+
<PreferenceCategory
android:title="@string/mode_interruption_filter_title"
android:key="modes_filters">
diff --git a/res/xml/modes_set_schedule.xml b/res/xml/modes_set_schedule.xml
new file mode 100644
index 0000000..dd73ec8
--- /dev/null
+++ b/res/xml/modes_set_schedule.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2024 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:key="zen_mode_set_schedule"
+ settings:searchable="false"
+ android:title="@string/zen_mode_set_schedule_title">
+
+ <!-- Time picker for schedule -->
+ <com.android.settingslib.widget.LayoutPreference
+ android:key="schedule"
+ android:selectable="false"
+ android:layout="@layout/modes_set_schedule_layout"/>
+
+ <!-- Exit mode with alarm -->
+ <SwitchPreferenceCompat
+ android:key="exit_at_alarm"
+ android:title="@string/zen_mode_schedule_alarm_title"
+ android:summary="@string/zen_mode_schedule_alarm_summary"
+ android:order="99" />
+
+</PreferenceScreen>
\ No newline at end of file
diff --git a/res/xml/private_space_settings.xml b/res/xml/private_space_settings.xml
index eb89dd7..53bbc57 100644
--- a/res/xml/private_space_settings.xml
+++ b/res/xml/private_space_settings.xml
@@ -22,16 +22,10 @@
android:title="@string/private_space_title"
settings:searchable="false">
- <com.android.settingslib.widget.IllustrationPreference
- android:key="private_space_illustration"
- settings:searchable="false"
- settings:lottie_rawRes="@raw/private_space_illustration"/>
-
- <Preference
+ <com.android.settingslib.widget.TopIntroPreference
android:key="private_space_description"
- android:summary="@string/private_space_description"
- android:selectable="false"
- settings:searchable="false" />
+ android:title="@string/private_space_description"
+ settings:searchable="false"/>
<PreferenceCategory
android:title="@string/private_space_category_lock">
diff --git a/res/xml/trackpad_settings.xml b/res/xml/trackpad_settings.xml
index fcd43a5..1eb16b7 100644
--- a/res/xml/trackpad_settings.xml
+++ b/res/xml/trackpad_settings.xml
@@ -62,6 +62,13 @@
android:selectable="false"
settings:controller="com.android.settings.inputmethod.TrackpadPointerSpeedPreferenceController"/>
+ <com.android.settings.inputmethod.PointerFillStylePreference
+ android:key="pointer_fill_style"
+ android:title="@string/pointer_fill_style"
+ android:order="50"
+ android:dialogTitle="@string/pointer_fill_style"
+ settings:controller="com.android.settings.inputmethod.PointerFillStylePreferenceController"/>
+
<com.android.settingslib.widget.ButtonPreference
android:key="trackpad_touch_gesture"
android:title="@string/trackpad_touch_gesture"
diff --git a/src/com/android/settings/ResetNetworkRequest.java b/src/com/android/settings/ResetNetworkRequest.java
index 4be8b32..7632ea0 100644
--- a/src/com/android/settings/ResetNetworkRequest.java
+++ b/src/com/android/settings/ResetNetworkRequest.java
@@ -270,6 +270,7 @@
if ((mResetOptions & RESET_IMS_STACK) != 0) {
builder.resetIms(mSubscriptionIdToResetIms);
}
+ // Reset phone process and RILD may impact above components, keep them at the end
if ((mResetOptions & RESET_PHONE_PROCESS) != 0) {
builder.restartPhoneProcess();
}
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 02205c1..a79ba80 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -283,7 +283,7 @@
createUiFromIntent(savedState, intent);
}
- protected void createUiFromIntent(Bundle savedState, Intent intent) {
+ protected void createUiFromIntent(@Nullable Bundle savedState, Intent intent) {
long startTime = System.currentTimeMillis();
final FeatureFactory factory = FeatureFactory.getFeatureFactory();
diff --git a/src/com/android/settings/SettingsApplication.java b/src/com/android/settings/SettingsApplication.java
index 169e046..7d5d2c7 100644
--- a/src/com/android/settings/SettingsApplication.java
+++ b/src/com/android/settings/SettingsApplication.java
@@ -24,9 +24,11 @@
import android.util.FeatureFlagUtils;
import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import com.android.settings.activityembedding.ActivityEmbeddingRulesController;
import com.android.settings.activityembedding.ActivityEmbeddingUtils;
+import com.android.settings.biometrics.fingerprint2.BiometricsEnvironment;
import com.android.settings.core.instrumentation.ElapsedTimeUtils;
import com.android.settings.development.DeveloperOptionsActivityLifecycle;
import com.android.settings.fuelgauge.BatterySettingsStorage;
@@ -47,6 +49,7 @@
public class SettingsApplication extends Application {
private WeakReference<SettingsHomepageActivity> mHomeActivity = new WeakReference<>(null);
+ private BiometricsEnvironment mBiometricsEnvironment;
@Override
protected void attachBaseContext(Context base) {
@@ -70,6 +73,7 @@
// Set Spa environment.
setSpaEnvironment();
+ mBiometricsEnvironment = new BiometricsEnvironment(this);
if (ActivityEmbeddingUtils.isSettingsSplitEnabled(this)
&& FeatureFlagUtils.isEnabled(this,
@@ -111,6 +115,11 @@
return mHomeActivity.get();
}
+ @Nullable
+ public BiometricsEnvironment getBiometricEnvironment() {
+ return mBiometricsEnvironment;
+ }
+
@Override
public void onTrimMemory(int level) {
super.onTrimMemory(level);
diff --git a/src/com/android/settings/accessibility/AccessibilityActivityPreference.java b/src/com/android/settings/accessibility/AccessibilityActivityPreference.java
index e5568f6..914d9cf 100644
--- a/src/com/android/settings/accessibility/AccessibilityActivityPreference.java
+++ b/src/com/android/settings/accessibility/AccessibilityActivityPreference.java
@@ -50,6 +50,7 @@
private final AccessibilityShortcutInfo mA11yShortcutInfo;
private final PackageManager mPm;
private final ComponentName mComponentName;
+ private final CharSequence mLabel;
private final ListenableFuture mExtraArgumentsFuture;
public AccessibilityActivityPreference(Context context, String packageName, int uid,
@@ -58,9 +59,10 @@
mPm = context.getPackageManager();
mA11yShortcutInfo = a11yShortcutInfo;
mComponentName = a11yShortcutInfo.getComponentName();
+ mLabel = a11yShortcutInfo.getActivityInfo().loadLabel(mPm);
// setup basic info for a preference
setKey(mComponentName.flattenToString());
- setTitle(a11yShortcutInfo.getActivityInfo().loadLabel(mPm));
+ setTitle(mLabel);
setSummary(a11yShortcutInfo.loadSummary(mPm));
setFragment(TARGET_FRAGMENT);
setIconSize(ICON_SIZE_MEDIUM);
@@ -92,6 +94,13 @@
super.performClick();
}
+ /**
+ * Returns the label of the Accessibility Activity
+ */
+ public CharSequence getLabel() {
+ return mLabel;
+ }
+
private Drawable getA11yActivityIcon() {
ActivityInfo activityInfo = mA11yShortcutInfo.getActivityInfo();
Drawable serviceIcon;
diff --git a/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceController.java b/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceController.java
index fab6e47..2546d44 100644
--- a/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceController.java
+++ b/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceController.java
@@ -43,6 +43,7 @@
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
+import com.android.settingslib.utils.ThreadUtils;
import java.util.Set;
@@ -120,7 +121,20 @@
}
@Override
- public CharSequence getSummary() {
+ protected void refreshSummary(Preference preference) {
+ if (preference == null) {
+ return;
+ }
+
+ // Loading the hearing aids summary requires IPC call, which can block the UI thread.
+ // To reduce page loading latency, move loadSummary in the background thread.
+ ThreadUtils.postOnBackgroundThread(() -> {
+ CharSequence summary = loadSummary();
+ ThreadUtils.getUiThreadHandler().post(() -> preference.setSummary(summary));
+ });
+ }
+
+ private CharSequence loadSummary() {
final CachedBluetoothDevice device = mHelper.getConnectedHearingAidDevice();
if (device == null) {
return mContext.getText(R.string.accessibility_hearingaid_not_connected_summary);
@@ -134,7 +148,7 @@
// Check if another side of LE audio hearing aid is connected as a pair
final Set<CachedBluetoothDevice> memberDevices = device.getMemberDevice();
- if (memberDevices.stream().anyMatch(m -> m.isConnected())) {
+ if (memberDevices.stream().anyMatch(m -> m.getDevice().isConnected())) {
return mContext.getString(
R.string.accessibility_hearingaid_left_and_right_side_device_summary,
name);
@@ -142,7 +156,7 @@
// Check if another side of ASHA hearing aid is connected as a pair
final CachedBluetoothDevice subDevice = device.getSubDevice();
- if (subDevice != null && subDevice.isConnected()) {
+ if (subDevice != null && subDevice.getDevice().isConnected()) {
return mContext.getString(
R.string.accessibility_hearingaid_left_and_right_side_device_summary, name);
}
diff --git a/src/com/android/settings/accessibility/AccessibilitySettings.java b/src/com/android/settings/accessibility/AccessibilitySettings.java
index b5df0e2..8441c2a 100644
--- a/src/com/android/settings/accessibility/AccessibilitySettings.java
+++ b/src/com/android/settings/accessibility/AccessibilitySettings.java
@@ -21,7 +21,6 @@
import android.app.settings.SettingsEnums;
import android.content.ComponentName;
import android.content.Context;
-import android.content.pm.ActivityInfo;
import android.content.pm.ServiceInfo;
import android.hardware.input.InputManager;
import android.os.Bundle;
@@ -30,6 +29,7 @@
import android.provider.Settings;
import android.text.TextUtils;
import android.util.ArrayMap;
+import android.util.Pair;
import android.view.InputDevice;
import android.view.accessibility.AccessibilityManager;
@@ -57,6 +57,8 @@
import java.util.Collection;
import java.util.List;
import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
/** Activity with the accessibility settings. */
@SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC)
@@ -454,17 +456,22 @@
final List<AccessibilityShortcutInfo> installedShortcutList =
a11yManager.getInstalledAccessibilityShortcutListAsUser(context,
UserHandle.myUserId());
+ final List<AccessibilityActivityPreference> activityList =
+ preferenceHelper.createAccessibilityActivityPreferenceList(installedShortcutList);
+ final Set<Pair<String, CharSequence>> packageLabelPairs =
+ activityList.stream()
+ .map(a11yActivityPref -> new Pair<>(
+ a11yActivityPref.getPackageName(), a11yActivityPref.getLabel())
+ ).collect(Collectors.toSet());
// Remove duplicate item here, new a ArrayList to copy unmodifiable list result
// (getInstalledAccessibilityServiceList).
final List<AccessibilityServiceInfo> installedServiceList = new ArrayList<>(
a11yManager.getInstalledAccessibilityServiceList());
- installedServiceList.removeIf(
- target -> containsTargetNameInList(installedShortcutList, target));
-
- final List<RestrictedPreference> activityList =
- preferenceHelper.createAccessibilityActivityPreferenceList(installedShortcutList);
-
+ if (!packageLabelPairs.isEmpty()) {
+ installedServiceList.removeIf(
+ target -> containsPackageAndLabelInList(packageLabelPairs, target));
+ }
final List<RestrictedPreference> serviceList =
preferenceHelper.createAccessibilityServicePreferenceList(installedServiceList);
@@ -475,22 +482,14 @@
return preferenceList;
}
- private boolean containsTargetNameInList(List<AccessibilityShortcutInfo> shortcutInfos,
+ private boolean containsPackageAndLabelInList(
+ Set<Pair<String, CharSequence>> packageLabelPairs,
AccessibilityServiceInfo targetServiceInfo) {
final ServiceInfo serviceInfo = targetServiceInfo.getResolveInfo().serviceInfo;
final String servicePackageName = serviceInfo.packageName;
final CharSequence serviceLabel = serviceInfo.loadLabel(getPackageManager());
- for (int i = 0, count = shortcutInfos.size(); i < count; ++i) {
- final ActivityInfo activityInfo = shortcutInfos.get(i).getActivityInfo();
- final String activityPackageName = activityInfo.packageName;
- final CharSequence activityLabel = activityInfo.loadLabel(getPackageManager());
- if (servicePackageName.equals(activityPackageName)
- && serviceLabel.equals(activityLabel)) {
- return true;
- }
- }
- return false;
+ return packageLabelPairs.contains(new Pair<>(servicePackageName, serviceLabel));
}
private void initializePreBundledServicesMapFromArray(String categoryKey, int key) {
diff --git a/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java b/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java
index 34646ba..2cabc76 100644
--- a/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java
+++ b/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java
@@ -101,13 +101,14 @@
}
/**
- * Creates the list of {@link RestrictedPreference} with the installedShortcuts arguments.
+ * Creates the list of {@link AccessibilityActivityPreference} with the installedShortcuts
+ * arguments.
*
* @param installedShortcuts The list of {@link AccessibilityShortcutInfo}s of the
* installed accessibility shortcuts
- * @return The list of {@link RestrictedPreference}
+ * @return The list of {@link AccessibilityActivityPreference}
*/
- public List<RestrictedPreference> createAccessibilityActivityPreferenceList(
+ public List<AccessibilityActivityPreference> createAccessibilityActivityPreferenceList(
List<AccessibilityShortcutInfo> installedShortcuts) {
final Set<ComponentName> enabledServices =
AccessibilityUtils.getEnabledServicesFromSettings(mContext);
@@ -115,7 +116,7 @@
UserHandle.myUserId());
final int installedShortcutsSize = installedShortcuts.size();
- final List<RestrictedPreference> preferenceList = new ArrayList<>(
+ final List<AccessibilityActivityPreference> preferenceList = new ArrayList<>(
installedShortcutsSize);
for (int i = 0; i < installedShortcutsSize; ++i) {
@@ -124,7 +125,7 @@
final ComponentName componentName = info.getComponentName();
final boolean serviceEnabled = enabledServices.contains(componentName);
- RestrictedPreference preference = new AccessibilityActivityPreference(
+ AccessibilityActivityPreference preference = new AccessibilityActivityPreference(
mContext, componentName.getPackageName(), activityInfo.applicationInfo.uid,
info);
setRestrictedPreferenceEnabled(preference, permittedServices, serviceEnabled);
diff --git a/src/com/android/settings/applications/credentials/OWNERS b/src/com/android/settings/applications/credentials/OWNERS
index 55b89b4..b4d1f20 100644
--- a/src/com/android/settings/applications/credentials/OWNERS
+++ b/src/com/android/settings/applications/credentials/OWNERS
@@ -1,5 +1,4 @@
# Default reviewers for this and subdirectories.
-beccahughes@google.com
reemabajwa@google.com
helenqin@google.com
sgjerry@google.com
@@ -7,4 +6,4 @@
akaphle@google.com
duqinmei@google.com
-# Emergency approvers in case the above are not available
\ No newline at end of file
+# Emergency approvers in case the above are not available
diff --git a/src/com/android/settings/applications/specialaccess/notificationaccess/ApprovalPreferenceController.java b/src/com/android/settings/applications/specialaccess/notificationaccess/ApprovalPreferenceController.java
index 70a31b8..8ddf9f9 100644
--- a/src/com/android/settings/applications/specialaccess/notificationaccess/ApprovalPreferenceController.java
+++ b/src/com/android/settings/applications/specialaccess/notificationaccess/ApprovalPreferenceController.java
@@ -139,16 +139,14 @@
public void disable(final ComponentName cn) {
logSpecialPermissionChange(true, cn.getPackageName());
mNm.setNotificationListenerAccessGranted(cn, false);
- AsyncTask.execute(() -> {
- if (!mNm.isNotificationPolicyAccessGrantedForPackage(
- cn.getPackageName())) {
- if (android.app.Flags.modesApi()) {
- mNm.removeAutomaticZenRules(cn.getPackageName(), /* fromUser= */ true);
- } else {
- mNm.removeAutomaticZenRules(cn.getPackageName());
- }
+ if (!mNm.isNotificationPolicyAccessGrantedForPackage(
+ cn.getPackageName())) {
+ if (android.app.Flags.modesApi()) {
+ mNm.removeAutomaticZenRules(cn.getPackageName(), /* fromUser= */ true);
+ } else {
+ mNm.removeAutomaticZenRules(cn.getPackageName());
}
- });
+ }
}
protected void enable(ComponentName cn) {
diff --git a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
index 4888388..d3f7519 100644
--- a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
@@ -38,6 +38,7 @@
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
+import android.widget.ScrollView;
import android.widget.TextView;
import androidx.annotation.NonNull;
@@ -160,6 +161,10 @@
inControlMessage.setMovementMethod(LinkMovementMethod.getInstance());
lessSecure.setText(getLessSecureMessage());
+ final ScrollView scrollView =
+ findViewById(com.google.android.setupdesign.R.id.sud_scroll_view);
+ scrollView.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_YES);
+
// Set up and show the "require eyes" info section if necessary.
if (getResources().getBoolean(R.bool.config_face_intro_show_require_eyes)) {
final LinearLayout infoRowRequireEyes = findViewById(R.id.info_row_require_eyes);
diff --git a/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollHelper.java b/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollHelper.java
index f292aae..8d1113e 100644
--- a/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollHelper.java
+++ b/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollHelper.java
@@ -184,7 +184,6 @@
*/
public void onAcquired(boolean isAcquiredGood) {
if (mListener != null) {
- Log.e("JRM", "OnaCquired " + isAcquiredGood + " lastStepIsGood" + animateIfLastStep());
mListener.onAcquired(isAcquiredGood && animateIfLastStep());
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/BiometricsEnvironment.kt b/src/com/android/settings/biometrics/fingerprint2/BiometricsEnvironment.kt
new file mode 100644
index 0000000..215692a
--- /dev/null
+++ b/src/com/android/settings/biometrics/fingerprint2/BiometricsEnvironment.kt
@@ -0,0 +1,144 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.biometrics.fingerprint2
+
+import android.hardware.fingerprint.FingerprintManager
+import android.view.MotionEvent
+import android.view.accessibility.AccessibilityManager
+import androidx.fragment.app.FragmentActivity
+import androidx.lifecycle.ViewModelStore
+import androidx.lifecycle.ViewModelStoreOwner
+import com.android.internal.widget.LockPatternUtils
+import com.android.settings.SettingsApplication
+import com.android.settings.biometrics.GatekeeperPasswordProvider
+import com.android.settings.biometrics.fingerprint2.data.repository.DebuggingRepository
+import com.android.settings.biometrics.fingerprint2.data.repository.DebuggingRepositoryImpl
+import com.android.settings.biometrics.fingerprint2.data.repository.FingerprintSensorRepository
+import com.android.settings.biometrics.fingerprint2.data.repository.FingerprintSensorRepositoryImpl
+import com.android.settings.biometrics.fingerprint2.debug.data.repository.UdfpsEnrollDebugRepositoryImpl
+import com.android.settings.biometrics.fingerprint2.debug.domain.interactor.DebugTouchEventInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.AccessibilityInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.AccessibilityInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.DebuggingInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.DebuggingInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.DisplayDensityInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.DisplayDensityInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.EnrollStageInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.EnrollStageInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintEnrollInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintEnrollInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintManagerInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintSensorInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintSensorInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FoldStateInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FoldStateInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.OrientationInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.OrientationInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.TouchEventInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.UdfpsEnrollInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.UdfpsEnrollInteractorImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.VibrationInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.VibrationInteractorImpl
+import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
+import com.android.settings.biometrics.fingerprint2.lib.model.Settings
+import java.util.concurrent.Executors
+import kotlinx.coroutines.MainScope
+import kotlinx.coroutines.asCoroutineDispatcher
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.flowOf
+
+/**
+ * This class should handle all repo & interactor creation needed by the ViewModels for the
+ * biometrics code.
+ *
+ * This code is instantiated within the [SettingsApplication], all repos should be private &
+ * immutable and all interactors should public and immutable
+ */
+class BiometricsEnvironment(context: SettingsApplication) : ViewModelStoreOwner {
+
+ private val executorService = Executors.newSingleThreadExecutor()
+ private val backgroundDispatcher = executorService.asCoroutineDispatcher()
+ private val applicationScope = MainScope()
+ private val gateKeeperPasswordProvider = GatekeeperPasswordProvider(LockPatternUtils(context))
+ private val fingerprintManager =
+ context.getSystemService(FragmentActivity.FINGERPRINT_SERVICE) as FingerprintManager?
+
+ private val fingerprintSensorRepository: FingerprintSensorRepository =
+ FingerprintSensorRepositoryImpl(fingerprintManager, backgroundDispatcher, applicationScope)
+ private val debuggingRepository: DebuggingRepository = DebuggingRepositoryImpl()
+ private val udfpsDebugRepo = UdfpsEnrollDebugRepositoryImpl()
+
+ /** For now, interactors are public to those with access to the [BiometricsEnvironment] class */
+ val fingerprintEnrollInteractor: FingerprintEnrollInteractor by lazy {
+ FingerprintEnrollInteractorImpl(context, fingerprintManager, Settings)
+ }
+
+ /** [FingerprintManagerInteractor] to be used to construct view models */
+ val fingerprintManagerInteractor: FingerprintManagerInteractor by lazy {
+ FingerprintManagerInteractorImpl(
+ context,
+ backgroundDispatcher,
+ fingerprintManager,
+ fingerprintSensorRepository,
+ gateKeeperPasswordProvider,
+ fingerprintEnrollInteractor,
+ )
+ }
+
+ val accessibilityInteractor: AccessibilityInteractor by lazy {
+ AccessibilityInteractorImpl(
+ context.getSystemService(AccessibilityManager::class.java)!!,
+ applicationScope,
+ )
+ }
+
+ val foldStateInteractor: FoldStateInteractor by lazy { FoldStateInteractorImpl(context) }
+
+ val orientationInteractor: OrientationInteractor by lazy { OrientationInteractorImpl(context) }
+
+ val vibrationInteractor: VibrationInteractor by lazy { VibrationInteractorImpl(context) }
+
+ val displayDensityInteractor: DisplayDensityInteractor by lazy {
+ DisplayDensityInteractorImpl(context, applicationScope)
+ }
+
+ val debuggingInteractor: DebuggingInteractor by lazy {
+ DebuggingInteractorImpl(debuggingRepository)
+ }
+
+ val enrollStageInteractor: EnrollStageInteractor by lazy { EnrollStageInteractorImpl() }
+
+ val udfpsEnrollInteractor: UdfpsEnrollInteractor by lazy {
+ UdfpsEnrollInteractorImpl(context, accessibilityInteractor)
+ }
+
+ val sensorInteractor: FingerprintSensorInteractor by lazy {
+ FingerprintSensorInteractorImpl(fingerprintSensorRepository)
+ }
+
+ val touchEventInteractor: TouchEventInteractor by lazy {
+ if (debuggingRepository.isDebuggingEnabled()) {
+ DebugTouchEventInteractorImpl(udfpsDebugRepo)
+ } else {
+ object : TouchEventInteractor {
+ override val touchEvent: Flow<MotionEvent> = flowOf()
+ }
+ }
+ }
+
+ override val viewModelStore: ViewModelStore = ViewModelStore()
+}
diff --git a/src/com/android/settings/biometrics/fingerprint2/data/repository/DebuggingRepository.kt b/src/com/android/settings/biometrics/fingerprint2/data/repository/DebuggingRepository.kt
index d007e1a..6083809 100644
--- a/src/com/android/settings/biometrics/fingerprint2/data/repository/DebuggingRepository.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/data/repository/DebuggingRepository.kt
@@ -23,6 +23,7 @@
/** A function that will return if a build is debuggable */
fun isDebuggingEnabled(): Boolean
+
/** A function that will return if udfps enrollment should be swapped with debug repos */
fun isUdfpsEnrollmentDebuggingEnabled(): Boolean
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/data/repository/FingerprintSensorRepository.kt b/src/com/android/settings/biometrics/fingerprint2/data/repository/FingerprintSensorRepository.kt
index b7616e4..516549e 100644
--- a/src/com/android/settings/biometrics/fingerprint2/data/repository/FingerprintSensorRepository.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/data/repository/FingerprintSensorRepository.kt
@@ -46,7 +46,7 @@
}
class FingerprintSensorRepositoryImpl(
- fingerprintManager: FingerprintManager,
+ fingerprintManager: FingerprintManager?,
backgroundDispatcher: CoroutineDispatcher,
activityScope: CoroutineScope,
) : FingerprintSensorRepository {
@@ -73,12 +73,9 @@
.stateIn(activityScope, started = SharingStarted.Eagerly, initialValue = DEFAULT_PROPS)
override val fingerprintSensor: Flow<FingerprintSensor> =
- fingerprintPropsInternal.transform {
- emit(it.toFingerprintSensor())
- }
+ fingerprintPropsInternal.transform { emit(it.toFingerprintSensor()) }
companion object {
- private const val TAG = "FingerprintSensorRepoImpl"
private val DEFAULT_PROPS =
FingerprintSensorPropertiesInternal(
diff --git a/src/com/android/settings/biometrics/fingerprint2/data/repository/SimulatedTouchEventsRepository.kt b/src/com/android/settings/biometrics/fingerprint2/data/repository/SimulatedTouchEventsRepository.kt
index a3bcb12..3c355e7 100644
--- a/src/com/android/settings/biometrics/fingerprint2/data/repository/SimulatedTouchEventsRepository.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/data/repository/SimulatedTouchEventsRepository.kt
@@ -17,6 +17,7 @@
package com.android.settings.biometrics.fingerprint2.data.repository
import android.graphics.Point
+import android.view.MotionEvent
import kotlinx.coroutines.flow.Flow
/**
@@ -24,8 +25,6 @@
* that talkback is correct.
*/
interface SimulatedTouchEventsRepository {
- /**
- * A flow simulating user touches.
- */
- val touchExplorationDebug: Flow<Point>
+ /** A flow simulating user touches. */
+ val touchExplorationDebug: Flow<MotionEvent>
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/data/repository/UdfpsEnrollDebugRepository.kt b/src/com/android/settings/biometrics/fingerprint2/debug/data/repository/UdfpsEnrollDebugRepository.kt
similarity index 66%
rename from src/com/android/settings/biometrics/fingerprint2/data/repository/UdfpsEnrollDebugRepository.kt
rename to src/com/android/settings/biometrics/fingerprint2/debug/data/repository/UdfpsEnrollDebugRepository.kt
index 9b74813..0c3152a 100644
--- a/src/com/android/settings/biometrics/fingerprint2/data/repository/UdfpsEnrollDebugRepository.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/debug/data/repository/UdfpsEnrollDebugRepository.kt
@@ -14,10 +14,14 @@
* limitations under the License.
*/
-package com.android.settings.biometrics.fingerprint2.data.repository
+package com.android.settings.biometrics.fingerprint2.debug.data.repository
-import android.graphics.Point
import android.graphics.Rect
+import android.hardware.fingerprint.FingerprintEnrollOptions
+import android.view.MotionEvent
+import android.view.MotionEvent.ACTION_HOVER_MOVE
+import com.android.settings.biometrics.fingerprint2.data.repository.FingerprintSensorRepository
+import com.android.settings.biometrics.fingerprint2.data.repository.SimulatedTouchEventsRepository
import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintEnrollInteractor
import com.android.settings.biometrics.fingerprint2.lib.model.EnrollReason
import com.android.settings.biometrics.fingerprint2.lib.model.FingerEnrollState
@@ -36,7 +40,11 @@
class UdfpsEnrollDebugRepositoryImpl :
FingerprintEnrollInteractor, FingerprintSensorRepository, SimulatedTouchEventsRepository {
- override suspend fun enroll(hardwareAuthToken: ByteArray?, enrollReason: EnrollReason) = flow {
+ override suspend fun enroll(
+ hardwareAuthToken: ByteArray?,
+ enrollReason: EnrollReason,
+ fingerprintEnrollOptions: FingerprintEnrollOptions,
+ ) = flow {
emit(FingerEnrollState.OverlayShown)
delay(200)
emit(FingerEnrollState.EnrollHelp(helpMsgId, "Hello world"))
@@ -77,7 +85,7 @@
}
/** Provides touch events to the UdfpsEnrollFragment */
- override val touchExplorationDebug: Flow<Point> = flow {
+ override val touchExplorationDebug: Flow<MotionEvent> = flow {
delay(2000)
emit(pointToLeftOfSensor(sensorRect))
delay(2000)
@@ -90,17 +98,45 @@
override val fingerprintSensor: Flow<FingerprintSensor> = flowOf(sensorProps)
- private fun pointToLeftOfSensor(sensorLocation: Rect) =
- Point(sensorLocation.right + 5, sensorLocation.centerY())
+ private fun pointToLeftOfSensor(sensorLocation: Rect): MotionEvent =
+ MotionEvent.obtain(
+ 100,
+ 100,
+ ACTION_HOVER_MOVE,
+ sensorLocation.right + 5.0f,
+ sensorLocation.centerY().toFloat(),
+ 0,
+ )
- private fun pointToRightOfSensor(sensorLocation: Rect) =
- Point(sensorLocation.left - 5, sensorLocation.centerY())
+ private fun pointToRightOfSensor(sensorLocation: Rect): MotionEvent =
+ MotionEvent.obtain(
+ 100,
+ 100,
+ ACTION_HOVER_MOVE,
+ sensorLocation.right - 5.0f,
+ sensorLocation.centerY().toFloat(),
+ 0,
+ )
- private fun pointBelowSensor(sensorLocation: Rect) =
- Point(sensorLocation.centerX(), sensorLocation.bottom + 5)
+ private fun pointBelowSensor(sensorLocation: Rect): MotionEvent =
+ MotionEvent.obtain(
+ 100,
+ 100,
+ ACTION_HOVER_MOVE,
+ sensorLocation.centerX().toFloat(),
+ sensorLocation.bottom + 5.0f,
+ 0,
+ )
- private fun pointAboveSensor(sensorLocation: Rect) =
- Point(sensorLocation.centerX(), sensorLocation.top - 5)
+ private fun pointAboveSensor(sensorLocation: Rect): MotionEvent =
+ MotionEvent.obtain(
+ 100,
+ 100,
+ ACTION_HOVER_MOVE,
+ sensorLocation.centerX().toFloat(),
+ sensorLocation.top - 5.0f,
+ 0,
+ )
companion object {
@@ -109,10 +145,10 @@
private val sensorRadius = 100
private val sensorRect =
Rect(
- this.sensorLocationInternal.first - sensorRadius,
- this.sensorLocationInternal.second - sensorRadius,
- this.sensorLocationInternal.first + sensorRadius,
- this.sensorLocationInternal.second + sensorRadius,
+ sensorLocationInternal.first - sensorRadius,
+ sensorLocationInternal.second - sensorRadius,
+ sensorLocationInternal.first + sensorRadius,
+ sensorLocationInternal.second + sensorRadius,
)
val sensorProps =
FingerprintSensor(
diff --git a/src/com/android/settings/biometrics/fingerprint2/debug/domain/interactor/DebugTouchEventInteractorImpl.kt b/src/com/android/settings/biometrics/fingerprint2/debug/domain/interactor/DebugTouchEventInteractorImpl.kt
new file mode 100644
index 0000000..fff6b66
--- /dev/null
+++ b/src/com/android/settings/biometrics/fingerprint2/debug/domain/interactor/DebugTouchEventInteractorImpl.kt
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.biometrics.fingerprint2.debug.domain.interactor
+
+import android.view.MotionEvent
+import com.android.settings.biometrics.fingerprint2.data.repository.SimulatedTouchEventsRepository
+import com.android.settings.biometrics.fingerprint2.domain.interactor.TouchEventInteractor
+import kotlinx.coroutines.flow.Flow
+
+class DebugTouchEventInteractorImpl(
+ udfpsSimulatedTouchEventsRepository: SimulatedTouchEventsRepository
+) : TouchEventInteractor {
+ override val touchEvent: Flow<MotionEvent> =
+ udfpsSimulatedTouchEventsRepository.touchExplorationDebug
+}
\ No newline at end of file
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/AccessibilityInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/AccessibilityInteractor.kt
index e769237..e1a08e6 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/AccessibilityInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/AccessibilityInteractor.kt
@@ -17,7 +17,7 @@
package com.android.settings.biometrics.fingerprint2.domain.interactor
import android.view.accessibility.AccessibilityManager
-import androidx.lifecycle.LifecycleCoroutineScope
+import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.SharingStarted
@@ -26,27 +26,27 @@
/** Represents all of the information on accessibility state. */
interface AccessibilityInteractor {
- /** A flow that contains whether or not accessibility is enabled */
- val isAccessibilityEnabled: Flow<Boolean>
+ /** A flow that contains whether or not accessibility is enabled */
+ val isAccessibilityEnabled: Flow<Boolean>
}
class AccessibilityInteractorImpl(
- accessibilityManager: AccessibilityManager,
- activityScope: LifecycleCoroutineScope
+ accessibilityManager: AccessibilityManager,
+ applicationScope: CoroutineScope,
) : AccessibilityInteractor {
/** A flow that contains whether or not accessibility is enabled */
override val isAccessibilityEnabled: Flow<Boolean> =
callbackFlow {
val listener =
- AccessibilityManager.AccessibilityStateChangeListener { enabled -> trySend(enabled) }
+ AccessibilityManager.AccessibilityStateChangeListener { enabled -> trySend(enabled) }
accessibilityManager.addAccessibilityStateChangeListener(listener)
// This clause will be called when no one is listening to the flow
awaitClose { accessibilityManager.removeAccessibilityStateChangeListener(listener) }
- }
+ }
.stateIn(
- activityScope, // This is going to tied to the activity scope
- SharingStarted.WhileSubscribed(), // When no longer subscribed, we removeTheListener
- false
+ applicationScope, // This is going to tied to the activity scope
+ SharingStarted.WhileSubscribed(), // When no longer subscribed, we removeTheListener
+ false,
)
-}
\ No newline at end of file
+}
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DebuggingInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DebuggingInteractor.kt
index 3edca96..d0a056d 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DebuggingInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DebuggingInteractor.kt
@@ -28,9 +28,7 @@
val udfpsEnrollmentDebuggingEnabled: Flow<Boolean>
}
-/**
- * This interactor essentially forwards the [DebuggingRepository]
- */
+/** This interactor essentially forwards the [DebuggingRepository] */
class DebuggingInteractorImpl(val debuggingRepository: DebuggingRepository) : DebuggingInteractor {
override val debuggingEnabled: Flow<Boolean> = flow {
emit(debuggingRepository.isDebuggingEnabled())
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DisplayDensityInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DisplayDensityInteractor.kt
index 67c0001..6dfb4c2 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DisplayDensityInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/DisplayDensityInteractor.kt
@@ -16,6 +16,8 @@
package com.android.settings.biometrics.fingerprint2.domain.interactor
+import android.content.Context
+import com.android.settingslib.display.DisplayDensityUtils
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
@@ -50,12 +52,11 @@
* Implementation of the [DisplayDensityInteractor]. This interactor is used to forward activity
* information to the rest of the application.
*/
-class DisplayDensityInteractorImpl(
- currentFontScale: Float,
- currentDisplayDensity: Int,
- defaultDisplayDensity: Int,
- scope: CoroutineScope,
-) : DisplayDensityInteractor {
+class DisplayDensityInteractorImpl(context: Context, scope: CoroutineScope) :
+ DisplayDensityInteractor {
+
+ val displayDensityUtils = DisplayDensityUtils(context)
+
override fun updateDisplayDensity(density: Int) {
_displayDensity.update { density }
}
@@ -64,13 +65,18 @@
_fontScale.update { fontScale }
}
- private val _fontScale = MutableStateFlow(currentFontScale)
- private val _displayDensity = MutableStateFlow(currentDisplayDensity)
+ private val _fontScale = MutableStateFlow(context.resources.configuration.fontScale)
+ private val _displayDensity =
+ MutableStateFlow(
+ displayDensityUtils.defaultDisplayDensityValues[
+ displayDensityUtils.currentIndexForDefaultDisplay]
+ )
override val fontScale: Flow<Float> = _fontScale.asStateFlow()
override val displayDensity: Flow<Int> = _displayDensity.asStateFlow()
override val defaultDisplayDensity: Flow<Int> =
- flowOf(defaultDisplayDensity).shareIn(scope, SharingStarted.Eagerly, 1)
+ flowOf(displayDensityUtils.defaultDensityForDefaultDisplay)
+ .shareIn(scope, SharingStarted.Eagerly, 1)
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintEnrollInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintEnrollInteractor.kt
index f967e04..a36832d 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintEnrollInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintEnrollInteractor.kt
@@ -33,7 +33,6 @@
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.callbackFlow
-import kotlinx.coroutines.flow.transform
import kotlinx.coroutines.flow.update
/** This repository is responsible for collecting all state related to the enroll API. */
@@ -45,13 +44,13 @@
suspend fun enroll(
hardwareAuthToken: ByteArray?,
enrollReason: EnrollReason,
+ fingerprintEnrollOptions: FingerprintEnrollOptions,
): Flow<FingerEnrollState>
}
class FingerprintEnrollInteractorImpl(
private val applicationContext: Context,
- private val fingerprintEnrollOptions: FingerprintEnrollOptions,
- private val fingerprintManager: FingerprintManager,
+ private val fingerprintManager: FingerprintManager?,
private val fingerprintFlow: FingerprintFlow,
) : FingerprintEnrollInteractor {
private val enrollRequestOutstanding = MutableStateFlow(false)
@@ -59,6 +58,7 @@
override suspend fun enroll(
hardwareAuthToken: ByteArray?,
enrollReason: EnrollReason,
+ fingerprintEnrollOptions: FingerprintEnrollOptions,
): Flow<FingerEnrollState> = callbackFlow {
// TODO (b/308456120) Improve this logic
if (enrollRequestOutstanding.value) {
@@ -135,7 +135,7 @@
val cancellationSignal = CancellationSignal()
- fingerprintManager.enroll(
+ fingerprintManager?.enroll(
hardwareAuthToken,
cancellationSignal,
applicationContext.userId,
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintManagerInteractorImpl.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintManagerInteractorImpl.kt
index ca3665c..f03c94e 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintManagerInteractorImpl.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintManagerInteractorImpl.kt
@@ -18,6 +18,7 @@
import android.content.Context
import android.content.Intent
+import android.hardware.fingerprint.FingerprintEnrollOptions
import android.hardware.fingerprint.FingerprintManager
import android.hardware.fingerprint.FingerprintManager.GenerateChallengeCallback
import android.hardware.fingerprint.FingerprintManager.RemovalCallback
@@ -45,7 +46,7 @@
class FingerprintManagerInteractorImpl(
applicationContext: Context,
private val backgroundDispatcher: CoroutineDispatcher,
- private val fingerprintManager: FingerprintManager,
+ private val fingerprintManager: FingerprintManager?,
fingerprintSensorRepository: FingerprintSensorRepository,
private val gatekeeperPasswordProvider: GatekeeperPasswordProvider,
private val fingerprintEnrollStateRepository: FingerprintEnrollInteractor,
@@ -57,7 +58,6 @@
)
private val applicationContext = applicationContext.applicationContext
-
override suspend fun generateChallenge(gateKeeperPasswordHandle: Long): Pair<Long, ByteArray> =
suspendCoroutine {
val callback = GenerateChallengeCallback { _, userId, challenge ->
@@ -70,21 +70,19 @@
val p = Pair(challenge, challengeToken)
it.resume(p)
}
- fingerprintManager.generateChallenge(applicationContext.userId, callback)
+ fingerprintManager?.generateChallenge(applicationContext.userId, callback)
}
- override val enrolledFingerprints: Flow<List<FingerprintData>> = flow {
+ override val enrolledFingerprints: Flow<List<FingerprintData>?> = flow {
emit(
- fingerprintManager
- .getEnrolledFingerprints(applicationContext.userId)
- .map { (FingerprintData(it.name.toString(), it.biometricId, it.deviceId)) }
- .toList()
+ fingerprintManager?.getEnrolledFingerprints(applicationContext.userId)
+ ?.map { (FingerprintData(it.name.toString(), it.biometricId, it.deviceId)) }?.toList()
)
}
override val canEnrollFingerprints: Flow<Boolean> = flow {
emit(
- fingerprintManager.getEnrolledFingerprints(applicationContext.userId).size < maxFingerprints
+ fingerprintManager?.getEnrolledFingerprints(applicationContext.userId)?.size ?: maxFingerprints < maxFingerprints
)
}
@@ -92,8 +90,16 @@
override val maxEnrollableFingerprints = flow { emit(maxFingerprints) }
- override suspend fun enroll(hardwareAuthToken: ByteArray?, enrollReason: EnrollReason): Flow<FingerEnrollState> =
- fingerprintEnrollStateRepository.enroll(hardwareAuthToken, enrollReason)
+ override suspend fun enroll(
+ hardwareAuthToken: ByteArray?,
+ enrollReason: EnrollReason,
+ fingerprintEnrollOptions: FingerprintEnrollOptions,
+ ): Flow<FingerEnrollState> =
+ fingerprintEnrollStateRepository.enroll(
+ hardwareAuthToken,
+ enrollReason,
+ fingerprintEnrollOptions,
+ )
override suspend fun removeFingerprint(fp: FingerprintData): Boolean = suspendCoroutine {
val callback =
@@ -113,7 +119,7 @@
it.resume(true)
}
}
- fingerprintManager.remove(
+ fingerprintManager?.remove(
android.hardware.fingerprint.Fingerprint(fp.name, fp.fingerId, fp.deviceId),
applicationContext.userId,
callback,
@@ -122,12 +128,12 @@
override suspend fun renameFingerprint(fp: FingerprintData, newName: String) {
withContext(backgroundDispatcher) {
- fingerprintManager.rename(fp.fingerId, applicationContext.userId, newName)
+ fingerprintManager?.rename(fp.fingerId, applicationContext.userId, newName)
}
}
- override suspend fun hasSideFps(): Boolean = suspendCancellableCoroutine {
- it.resume(fingerprintManager.isPowerbuttonFps)
+ override suspend fun hasSideFps(): Boolean? = suspendCancellableCoroutine {
+ it.resume(fingerprintManager?.isPowerbuttonFps)
}
override suspend fun authenticate(): FingerprintAuthAttemptModel =
@@ -156,7 +162,7 @@
val cancellationSignal = CancellationSignal()
c.invokeOnCancellation { cancellationSignal.cancel() }
- fingerprintManager.authenticate(
+ fingerprintManager?.authenticate(
null,
cancellationSignal,
authenticationCallback,
@@ -164,5 +170,4 @@
applicationContext.userId,
)
}
-
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintSensorInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintSensorInteractor.kt
new file mode 100644
index 0000000..073629c
--- /dev/null
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FingerprintSensorInteractor.kt
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.biometrics.fingerprint2.domain.interactor
+
+import com.android.settings.biometrics.fingerprint2.data.repository.FingerprintSensorRepository
+import com.android.systemui.biometrics.shared.model.FingerprintSensor
+import kotlinx.coroutines.flow.Flow
+
+/**
+ * Interactor that propagates the type of [FingerprintSensor] this device supports.
+ */
+interface FingerprintSensorInteractor {
+ /** Get the [FingerprintSensor] */
+ val fingerprintSensor: Flow<FingerprintSensor>
+}
+
+class FingerprintSensorInteractorImpl(repo: FingerprintSensorRepository) :
+ FingerprintSensorInteractor {
+ override val fingerprintSensor: Flow<FingerprintSensor> = repo.fingerprintSensor
+}
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FoldStateInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FoldStateInteractor.kt
index 0224aa2..51de882 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FoldStateInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/FoldStateInteractor.kt
@@ -25,34 +25,30 @@
import kotlinx.coroutines.flow.callbackFlow
interface FoldStateInteractor {
- /** A flow that contains the fold state info */
- val isFolded: Flow<Boolean>
+ /** A flow that contains the fold state info */
+ val isFolded: Flow<Boolean>
- /**
- * Indicates a configuration change has occurred, and the repo
- * should update the [isFolded] flow.
- */
- fun onConfigurationChange(newConfig: Configuration)
+ /**
+ * Indicates a configuration change has occurred, and the repo should update the [isFolded] flow.
+ */
+ fun onConfigurationChange(newConfig: Configuration)
}
-/**
- * Interactor which handles fold state
- */
+/** Interactor which handles fold state */
class FoldStateInteractorImpl(context: Context) : FoldStateInteractor {
- private val screenSizeFoldProvider = ScreenSizeFoldProvider(context)
- override val isFolded: Flow<Boolean> = callbackFlow {
- val foldStateListener = FoldProvider.FoldCallback { isFolded -> trySend(isFolded) }
- screenSizeFoldProvider.registerCallback(foldStateListener, context.mainExecutor)
- awaitClose { screenSizeFoldProvider.unregisterCallback(foldStateListener) }
- }
+ private val screenSizeFoldProvider = ScreenSizeFoldProvider(context)
+ override val isFolded: Flow<Boolean> = callbackFlow {
+ val foldStateListener = FoldProvider.FoldCallback { isFolded -> trySend(isFolded) }
+ screenSizeFoldProvider.registerCallback(foldStateListener, context.mainExecutor)
+ awaitClose { screenSizeFoldProvider.unregisterCallback(foldStateListener) }
+ }
- /**
- * This function is called by the root activity, indicating an orientation event has occurred.
- * When this happens, the [ScreenSizeFoldProvider] is notified and it will re-compute if the
- * device is folded or not, and notify the [FoldProvider.FoldCallback]
- */
- override fun onConfigurationChange(newConfig: Configuration) {
- screenSizeFoldProvider.onConfigurationChange(newConfig)
- }
-
+ /**
+ * This function is called by the root activity, indicating an orientation event has occurred.
+ * When this happens, the [ScreenSizeFoldProvider] is notified and it will re-compute if the
+ * device is folded or not, and notify the [FoldProvider.FoldCallback]
+ */
+ override fun onConfigurationChange(newConfig: Configuration) {
+ screenSizeFoldProvider.onConfigurationChange(newConfig)
+ }
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/OrientationInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/OrientationInteractor.kt
index 3ecf312..e55d6b8 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/OrientationInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/OrientationInteractor.kt
@@ -60,10 +60,7 @@
awaitClose { orientationEventListener.disable() }
}
- override val rotation: Flow<Int> =
- orientation.transform {
- emit(context.display!!.rotation)
- }
+ override val rotation: Flow<Int> = orientation.transform { emit(context.display.rotation) }
override val rotationFromDefault: Flow<Int> = rotation.map { getRotationFromDefault(it) }
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/PressToAuthInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/PressToAuthInteractor.kt
index ab7b5de..6fb7555 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/PressToAuthInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/PressToAuthInteractor.kt
@@ -28,77 +28,67 @@
/** Interface that indicates if press to auth is on or off. */
interface PressToAuthInteractor {
- /** Indicates true if the PressToAuth feature is enabled, false otherwise. */
- val isEnabled: Flow<Boolean>
+ /** Indicates true if the PressToAuth feature is enabled, false otherwise. */
+ val isEnabled: Flow<Boolean>
}
/** Indicates whether or not the press to auth feature is enabled. */
class PressToAuthInteractorImpl(
- private val context: Context,
- private val backgroundDispatcher: CoroutineDispatcher,
+ private val context: Context,
+ private val backgroundDispatcher: CoroutineDispatcher,
) : PressToAuthInteractor {
- /**
- * A flow that contains the status of the press to auth feature.
- */
- override val isEnabled: Flow<Boolean> =
-
- callbackFlow {
- val callback =
- object : ContentObserver(null) {
- override fun onChange(selfChange: Boolean) {
- Log.d(TAG, "SFPS_PERFORMANT_AUTH_ENABLED#onchange")
- trySend(
- getPressToAuth(),
- )
- }
- }
-
- context.contentResolver.registerContentObserver(
- Settings.Secure.getUriFor(Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED),
- false,
- callback,
- context.userId
- )
- trySend(getPressToAuth())
- awaitClose {
- context.contentResolver.unregisterContentObserver(callback)
+ /** A flow that contains the status of the press to auth feature. */
+ override val isEnabled: Flow<Boolean> =
+ callbackFlow {
+ val callback =
+ object : ContentObserver(null) {
+ override fun onChange(selfChange: Boolean) {
+ Log.d(TAG, "SFPS_PERFORMANT_AUTH_ENABLED#onchange")
+ trySend(getPressToAuth())
}
- }.flowOn(backgroundDispatcher)
+ }
+ context.contentResolver.registerContentObserver(
+ Settings.Secure.getUriFor(Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED),
+ false,
+ callback,
+ context.userId,
+ )
+ trySend(getPressToAuth())
+ awaitClose { context.contentResolver.unregisterContentObserver(callback) }
+ }
+ .flowOn(backgroundDispatcher)
- /**
- * Returns true if press to auth is enabled
- */
- private fun getPressToAuth(): Boolean {
- var toReturn: Int =
- Settings.Secure.getIntForUser(
- context.contentResolver,
- Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED,
- -1,
- context.userId,
- )
- if (toReturn == -1) {
- toReturn =
- if (
- context.resources.getBoolean(com.android.internal.R.bool.config_performantAuthDefault)
- ) {
- 1
- } else {
- 0
- }
- Settings.Secure.putIntForUser(
- context.contentResolver,
- Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED,
- toReturn,
- context.userId,
- )
+ /** Returns true if press to auth is enabled */
+ private fun getPressToAuth(): Boolean {
+ var toReturn: Int =
+ Settings.Secure.getIntForUser(
+ context.contentResolver,
+ Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED,
+ -1,
+ context.userId,
+ )
+ if (toReturn == -1) {
+ toReturn =
+ if (
+ context.resources.getBoolean(com.android.internal.R.bool.config_performantAuthDefault)
+ ) {
+ 1
+ } else {
+ 0
}
- return toReturn == 1
-
+ Settings.Secure.putIntForUser(
+ context.contentResolver,
+ Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED,
+ toReturn,
+ context.userId,
+ )
}
+ return toReturn == 1
+ }
- companion object {
- const val TAG = "PressToAuthInteractor"
- }
+ companion object {
+ const val TAG = "PressToAuthInteractor"
+ }
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/TouchEventInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/TouchEventInteractor.kt
new file mode 100644
index 0000000..4ef2afa
--- /dev/null
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/TouchEventInteractor.kt
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.biometrics.fingerprint2.domain.interactor
+
+import android.view.MotionEvent
+import kotlinx.coroutines.flow.Flow
+
+interface TouchEventInteractor {
+
+ /** A flow simulating user touches. */
+ val touchEvent: Flow<MotionEvent>
+}
+
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/UdfpsEnrollInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/UdfpsEnrollInteractor.kt
index 107d1f6..006060a 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/UdfpsEnrollInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/UdfpsEnrollInteractor.kt
@@ -16,8 +16,9 @@
package com.android.settings.biometrics.fingerprint2.domain.interactor
+import android.content.Context
import android.graphics.PointF
-import android.util.Log
+import android.util.TypedValue
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.combine
@@ -43,13 +44,18 @@
/** Keeps track of which guided enrollment point we should be using */
class UdfpsEnrollInteractorImpl(
- pixelsPerMillimeter: Float,
+ applicationContext: Context,
accessibilityInteractor: AccessibilityInteractor,
) : UdfpsEnrollInteractor {
private var isGuidedEnrollment = MutableStateFlow(false)
// Number of pixels per mm
- val px = pixelsPerMillimeter
+ val px =
+ TypedValue.applyDimension(
+ TypedValue.COMPLEX_UNIT_MM,
+ 1f,
+ applicationContext.resources.displayMetrics,
+ )
private val guidedEnrollmentPoints: MutableList<PointF> =
mutableListOf(
PointF(2.00f * px, 0.00f * px),
@@ -70,7 +76,6 @@
override fun onEnrollmentStep(stepsRemaining: Int, totalStep: Int) {
val index = (totalStep - stepsRemaining) % guidedEnrollmentPoints.size
- Log.e("JRM", "guided enroll step $index")
_guidedEnrollment.update { guidedEnrollmentPoints[index] }
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/VibrationInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/VibrationInteractor.kt
index 0f107cc..97a68f0 100644
--- a/src/com/android/settings/biometrics/fingerprint2/domain/interactor/VibrationInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/domain/interactor/VibrationInteractor.kt
@@ -36,6 +36,7 @@
/** This vibration typically occurs when a help message is shown during UDFPS enrollment */
data object UdfpsHelp : FingerprintVibrationEffects()
}
+
/** Interface for sending haptic feedback */
interface VibrationInteractor {
/** This will send a haptic vibration */
@@ -43,8 +44,9 @@
}
/** Implementation of the VibrationInteractor interface */
-class VibrationInteractorImpl(val vibrator: Vibrator, val applicationContext: Context) :
- VibrationInteractor {
+class VibrationInteractorImpl(val applicationContext: Context) : VibrationInteractor {
+ val vibrator = applicationContext.getSystemService(Vibrator::class.java)!!
+
override fun vibrate(effect: FingerprintVibrationEffects, caller: String) {
val callerString = "$caller::$effect"
val res =
diff --git a/src/com/android/settings/biometrics/fingerprint2/lib/domain/interactor/FingerprintManagerInteractor.kt b/src/com/android/settings/biometrics/fingerprint2/lib/domain/interactor/FingerprintManagerInteractor.kt
index d2f9f0a..5f4ceca 100644
--- a/src/com/android/settings/biometrics/fingerprint2/lib/domain/interactor/FingerprintManagerInteractor.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/lib/domain/interactor/FingerprintManagerInteractor.kt
@@ -16,7 +16,7 @@
package com.android.settings.biometrics.fingerprint2.lib.domain.interactor
-import android.hardware.fingerprint.FingerprintSensorPropertiesInternal
+import android.hardware.fingerprint.FingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.lib.model.EnrollReason
import com.android.settings.biometrics.fingerprint2.lib.model.FingerEnrollState
import com.android.settings.biometrics.fingerprint2.lib.model.FingerprintAuthAttemptModel
@@ -32,7 +32,7 @@
*/
interface FingerprintManagerInteractor {
/** Returns the list of current fingerprints. */
- val enrolledFingerprints: Flow<List<FingerprintData>>
+ val enrolledFingerprints: Flow<List<FingerprintData>?>
/** Returns the max enrollable fingerprints, note during SUW this might be 1 */
val maxEnrollableFingerprints: Flow<Int>
@@ -62,6 +62,7 @@
suspend fun enroll(
hardwareAuthToken: ByteArray?,
enrollReason: EnrollReason,
+ fingerprintEnrollOptions: FingerprintEnrollOptions,
): Flow<FingerEnrollState>
/**
@@ -74,5 +75,5 @@
suspend fun renameFingerprint(fp: FingerprintData, newName: String)
/** Indicates if the device has side fingerprint */
- suspend fun hasSideFps(): Boolean
+ suspend fun hasSideFps(): Boolean?
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/lib/model/EnrollReason.kt b/src/com/android/settings/biometrics/fingerprint2/lib/model/EnrollReason.kt
index 3cc6497..02df834 100644
--- a/src/com/android/settings/biometrics/fingerprint2/lib/model/EnrollReason.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/lib/model/EnrollReason.kt
@@ -24,5 +24,5 @@
*/
FindSensor,
/** The enroll happens on enrolling screen. */
- EnrollEnrolling
+ EnrollEnrolling,
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/activity/FingerprintEnrollmentV2Activity.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/activity/FingerprintEnrollmentV2Activity.kt
index d25fcd0..421548f 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/activity/FingerprintEnrollmentV2Activity.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/activity/FingerprintEnrollmentV2Activity.kt
@@ -22,16 +22,12 @@
import android.hardware.fingerprint.FingerprintEnrollOptions
import android.hardware.fingerprint.FingerprintManager
import android.os.Bundle
-import android.os.Vibrator
import android.util.Log
-import android.util.TypedValue
-import android.view.accessibility.AccessibilityManager
import androidx.activity.result.contract.ActivityResultContracts
+import androidx.activity.viewModels
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentActivity
-import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
-import com.android.internal.widget.LockPatternUtils
import com.android.settings.R
import com.android.settings.SetupWizardUtils
import com.android.settings.Utils.SETTINGS_PACKAGE_NAME
@@ -40,27 +36,9 @@
import com.android.settings.biometrics.BiometricEnrollBase.RESULT_FINISHED
import com.android.settings.biometrics.BiometricUtils
import com.android.settings.biometrics.GatekeeperPasswordProvider
-import com.android.settings.biometrics.fingerprint2.data.repository.DebuggingRepositoryImpl
-import com.android.settings.biometrics.fingerprint2.data.repository.FingerprintSensorRepositoryImpl
-import com.android.settings.biometrics.fingerprint2.data.repository.UdfpsEnrollDebugRepositoryImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.AccessibilityInteractorImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.DebuggingInteractorImpl
import com.android.settings.biometrics.fingerprint2.domain.interactor.DisplayDensityInteractor
-import com.android.settings.biometrics.fingerprint2.domain.interactor.DisplayDensityInteractorImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.EnrollStageInteractor
-import com.android.settings.biometrics.fingerprint2.domain.interactor.EnrollStageInteractorImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintEnrollInteractorImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintManagerInteractorImpl
import com.android.settings.biometrics.fingerprint2.domain.interactor.FoldStateInteractor
-import com.android.settings.biometrics.fingerprint2.domain.interactor.FoldStateInteractorImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.OrientationInteractor
-import com.android.settings.biometrics.fingerprint2.domain.interactor.OrientationInteractorImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.UdfpsEnrollInteractor
-import com.android.settings.biometrics.fingerprint2.domain.interactor.UdfpsEnrollInteractorImpl
-import com.android.settings.biometrics.fingerprint2.domain.interactor.VibrationInteractor
-import com.android.settings.biometrics.fingerprint2.domain.interactor.VibrationInteractorImpl
import com.android.settings.biometrics.fingerprint2.lib.model.Default
-import com.android.settings.biometrics.fingerprint2.lib.model.Settings
import com.android.settings.biometrics.fingerprint2.lib.model.SetupWizard
import com.android.settings.biometrics.fingerprint2.ui.enrollment.fragment.FingerprintEnrollConfirmationV2Fragment
import com.android.settings.biometrics.fingerprint2.ui.enrollment.fragment.FingerprintEnrollEnrollingV2Fragment
@@ -68,18 +46,12 @@
import com.android.settings.biometrics.fingerprint2.ui.enrollment.fragment.education.RfpsEnrollFindSensorFragment
import com.android.settings.biometrics.fingerprint2.ui.enrollment.fragment.education.SfpsEnrollFindSensorFragment
import com.android.settings.biometrics.fingerprint2.ui.enrollment.fragment.education.UdfpsEnrollFindSensorFragment
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.util.toFingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.rfps.ui.fragment.RFPSEnrollFragment
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.rfps.ui.viewmodel.RFPSViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.udfps.ui.fragment.UdfpsEnrollFragment
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.udfps.ui.viewmodel.UdfpsLastStepViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.udfps.ui.viewmodel.UdfpsViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.BackgroundViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintAction
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollConfirmationViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollEnrollingViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollFindSensorViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollIntroViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintFlowViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintGatekeeperViewModel
@@ -91,7 +63,6 @@
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.Introduction
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.TransitionStep
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintScrollViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.GatekeeperInfo
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.Transition
import com.android.settings.flags.Flags
@@ -113,23 +84,38 @@
* children fragments.
*/
class FingerprintEnrollmentV2Activity : FragmentActivity() {
- private lateinit var fingerprintEnrollEnrollingViewModel: FingerprintEnrollEnrollingViewModel
- private lateinit var navigationViewModel: FingerprintNavigationViewModel
- private lateinit var gatekeeperViewModel: FingerprintGatekeeperViewModel
- private lateinit var fingerprintEnrollViewModel: FingerprintEnrollViewModel
- private lateinit var vibrationInteractor: VibrationInteractor
+ private val navigationViewModel: FingerprintNavigationViewModel by viewModels {
+ FingerprintNavigationViewModel.Factory
+ }
+ private val fingerprintFlowViewModel: FingerprintFlowViewModel by viewModels {
+ FingerprintFlowViewModel.Factory
+ }
+
+ private val gatekeeperViewModel: FingerprintGatekeeperViewModel by viewModels {
+ FingerprintGatekeeperViewModel.Factory
+ }
+
+ /**
+ * View models below this line are not used by this class but must be initialized
+ * in the activity view model store to be used by other view models.
+ */
+ private val fingerprintEnrollViewModel: FingerprintEnrollViewModel by viewModels {
+ FingerprintEnrollViewModel.Factory
+ }
+
+ private val fingerprintEnrollEnrollingViewModel:
+ FingerprintEnrollEnrollingViewModel by viewModels {
+ FingerprintEnrollEnrollingViewModel.Factory
+ }
+
+ private val udfpsLastStepViewModel: UdfpsLastStepViewModel by viewModels {
+ UdfpsLastStepViewModel.Factory
+ }
+
+ private val backgroundViewModel: BackgroundViewModel by viewModels { BackgroundViewModel.Factory }
+
private lateinit var foldStateInteractor: FoldStateInteractor
- private lateinit var orientationInteractor: OrientationInteractor
private lateinit var displayDensityInteractor: DisplayDensityInteractor
- private lateinit var udfpsEnrollInteractor: UdfpsEnrollInteractor
- private lateinit var fingerprintScrollViewModel: FingerprintScrollViewModel
- private lateinit var backgroundViewModel: BackgroundViewModel
- private lateinit var fingerprintFlowViewModel: FingerprintFlowViewModel
- private lateinit var fingerprintEnrollConfirmationViewModel:
- FingerprintEnrollConfirmationViewModel
- private lateinit var udfpsLastStepViewModel: UdfpsLastStepViewModel
- private lateinit var udfpsViewModel: UdfpsViewModel
- private lateinit var enrollStageInteractor: EnrollStageInteractor
private val coroutineDispatcher = Dispatchers.Default
/** Result listener for ChooseLock activity flow. */
@@ -172,7 +158,7 @@
private fun onConfirmDevice(resultCode: Int, data: Intent?) {
val wasSuccessful = resultCode == RESULT_FINISHED || resultCode == Activity.RESULT_OK
- val gateKeeperPasswordHandle = data?.getExtra(EXTRA_KEY_GK_PW_HANDLE) as Long?
+ val gateKeeperPasswordHandle = data?.getExtra(EXTRA_KEY_GK_PW_HANDLE) as Long
lifecycleScope.launch {
val confirmDeviceResult =
@@ -204,6 +190,15 @@
finish()
}
+ // Ensure that these view models are actually created and in this order
+ navigationViewModel
+ fingerprintFlowViewModel
+ gatekeeperViewModel
+ fingerprintEnrollViewModel
+ backgroundViewModel
+ fingerprintEnrollEnrollingViewModel
+ udfpsLastStepViewModel
+
setTheme(SetupWizardUtils.getTheme(applicationContext, intent))
ThemeHelper.trySetDynamicColor(applicationContext)
@@ -219,31 +214,7 @@
Default
}
- backgroundViewModel =
- ViewModelProvider(this, BackgroundViewModel.BackgroundViewModelFactory())[
- BackgroundViewModel::class.java]
-
- fingerprintFlowViewModel =
- ViewModelProvider(this, FingerprintFlowViewModel.FingerprintFlowViewModelFactory(enrollType))[
- FingerprintFlowViewModel::class.java]
- val displayDensityUtils = DisplayDensityUtils(context)
- val currIndex = displayDensityUtils.currentIndexForDefaultDisplay
- val defaultDisplayDensity = displayDensityUtils.defaultDensityForDefaultDisplay
- displayDensityInteractor =
- DisplayDensityInteractorImpl(
- resources.configuration.fontScale,
- displayDensityUtils.defaultDisplayDensityValues[currIndex],
- defaultDisplayDensity,
- lifecycleScope,
- )
-
- val debuggingRepo = DebuggingRepositoryImpl()
- val debuggingInteractor = DebuggingInteractorImpl(debuggingRepo)
- val udfpsEnrollDebugRepositoryImpl = UdfpsEnrollDebugRepositoryImpl()
-
- val fingerprintSensorRepo =
- if (debuggingRepo.isUdfpsEnrollmentDebuggingEnabled()) udfpsEnrollDebugRepositoryImpl
- else FingerprintSensorRepositoryImpl(fingerprintManager, backgroundDispatcher, lifecycleScope)
+ fingerprintFlowViewModel.updateFlowType(enrollType)
if (intent.getIntExtra(BiometricUtils.EXTRA_ENROLL_REASON, -1) === -1) {
val isSuw: Boolean = WizardManagerHelper.isAnySetupWizard(intent)
@@ -254,170 +225,18 @@
)
}
- val fingerprintEnrollStateRepository =
- if (debuggingRepo.isUdfpsEnrollmentDebuggingEnabled()) udfpsEnrollDebugRepositoryImpl
- else
- FingerprintEnrollInteractorImpl(
- context.applicationContext,
- intent.toFingerprintEnrollOptions(),
- fingerprintManager,
- Settings,
- )
- val accessibilityInteractor =
- AccessibilityInteractorImpl(
- getSystemService(AccessibilityManager::class.java)!!,
- lifecycleScope,
- )
-
- val pixelsPerMillimeter =
- TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_MM, 1f, context.resources.displayMetrics)
- udfpsEnrollInteractor = UdfpsEnrollInteractorImpl(pixelsPerMillimeter, accessibilityInteractor)
-
- val fingerprintManagerInteractor =
- FingerprintManagerInteractorImpl(
- context,
- backgroundDispatcher,
- fingerprintManager,
- fingerprintSensorRepo,
- GatekeeperPasswordProvider(LockPatternUtils(context)),
- fingerprintEnrollStateRepository,
- )
-
var challenge = intent.getExtra(BiometricEnrollBase.EXTRA_KEY_CHALLENGE) as Long?
val token = intent.getByteArrayExtra(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN)
val gatekeeperInfo = FingerprintGatekeeperViewModel.toGateKeeperInfo(challenge, token)
val hasConfirmedDeviceCredential = gatekeeperInfo is GatekeeperInfo.GatekeeperPasswordInfo
- navigationViewModel =
- ViewModelProvider(
- this,
- FingerprintNavigationViewModel.FingerprintNavigationViewModelFactory(
- Init,
- hasConfirmedDeviceCredential,
- fingerprintFlowViewModel,
- fingerprintManagerInteractor,
- ),
- )[FingerprintNavigationViewModel::class.java]
- // Initialize FingerprintEnrollIntroViewModel
- ViewModelProvider(
- this,
- FingerprintEnrollIntroViewModel.FingerprintEnrollIntoViewModelFactory(
- navigationViewModel,
- fingerprintFlowViewModel,
- fingerprintManagerInteractor,
- ),
- )[FingerprintEnrollIntroViewModel::class.java]
-
- gatekeeperViewModel =
- ViewModelProvider(
- this,
- FingerprintGatekeeperViewModel.FingerprintGatekeeperViewModelFactory(
- gatekeeperInfo,
- fingerprintManagerInteractor,
- ),
- )[FingerprintGatekeeperViewModel::class.java]
-
- // Initialize FoldStateViewModel
- foldStateInteractor = FoldStateInteractorImpl(context)
- foldStateInteractor.onConfigurationChange(resources.configuration)
-
- orientationInteractor = OrientationInteractorImpl(context)
- vibrationInteractor =
- VibrationInteractorImpl(context.getSystemService(Vibrator::class.java)!!, context)
-
- // Initialize FingerprintViewModel
- fingerprintEnrollViewModel =
- ViewModelProvider(
- this,
- FingerprintEnrollViewModel.FingerprintEnrollViewModelFactory(
- fingerprintManagerInteractor,
- gatekeeperViewModel,
- navigationViewModel,
- ),
- )[FingerprintEnrollViewModel::class.java]
-
- // Initialize scroll view model
- fingerprintScrollViewModel =
- ViewModelProvider(this, FingerprintScrollViewModel.FingerprintScrollViewModelFactory())[
- FingerprintScrollViewModel::class.java]
-
- // Initialize FingerprintEnrollEnrollingViewModel
- fingerprintEnrollEnrollingViewModel =
- ViewModelProvider(
- this,
- FingerprintEnrollEnrollingViewModel.FingerprintEnrollEnrollingViewModelFactory(
- fingerprintEnrollViewModel,
- backgroundViewModel,
- ),
- )[FingerprintEnrollEnrollingViewModel::class.java]
-
- // Initialize FingerprintEnrollFindSensorViewModel
- ViewModelProvider(
- this,
- FingerprintEnrollFindSensorViewModel.FingerprintEnrollFindSensorViewModelFactory(
- navigationViewModel,
- fingerprintEnrollViewModel,
- gatekeeperViewModel,
- backgroundViewModel,
- accessibilityInteractor,
- foldStateInteractor,
- orientationInteractor,
- fingerprintFlowViewModel,
- fingerprintManagerInteractor,
- ),
- )[FingerprintEnrollFindSensorViewModel::class.java]
-
- // Initialize RFPS View Model
- ViewModelProvider(
- this,
- RFPSViewModel.RFPSViewModelFactory(
- fingerprintEnrollEnrollingViewModel,
- navigationViewModel,
- orientationInteractor,
- fingerprintManagerInteractor,
- ),
- )[RFPSViewModel::class.java]
-
- enrollStageInteractor = EnrollStageInteractorImpl()
-
- udfpsLastStepViewModel =
- UdfpsLastStepViewModel(fingerprintEnrollEnrollingViewModel, vibrationInteractor)
-
- udfpsViewModel =
- ViewModelProvider(
- this,
- UdfpsViewModel.UdfpsEnrollmentFactory(
- vibrationInteractor,
- displayDensityInteractor,
- navigationViewModel,
- debuggingInteractor,
- fingerprintEnrollEnrollingViewModel,
- udfpsEnrollDebugRepositoryImpl,
- enrollStageInteractor,
- orientationInteractor,
- backgroundViewModel,
- fingerprintSensorRepo,
- udfpsEnrollInteractor,
- fingerprintManagerInteractor,
- udfpsLastStepViewModel,
- accessibilityInteractor,
- ),
- )[UdfpsViewModel::class.java]
-
- fingerprintEnrollConfirmationViewModel =
- ViewModelProvider(
- this,
- FingerprintEnrollConfirmationViewModel.FingerprintEnrollConfirmationViewModelFactory(
- navigationViewModel,
- fingerprintManagerInteractor,
- ),
- )[FingerprintEnrollConfirmationViewModel::class.java]
+ navigationViewModel.updateFingerprintFlow(enrollType)
+ navigationViewModel.hasConfirmedDeviceCredential(hasConfirmedDeviceCredential)
lifecycleScope.launch {
navigationViewModel.currentStep.collect { step ->
if (step is Init) {
- Log.d(TAG, "FingerprintNav.init($step)")
navigationViewModel.update(FingerprintAction.ACTIVITY_CREATED, Init::class, "$TAG#init")
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollConfirmationV2Fragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollConfirmationV2Fragment.kt
index d8c1c93..00541f8 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollConfirmationV2Fragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollConfirmationV2Fragment.kt
@@ -20,8 +20,8 @@
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
-import androidx.annotation.VisibleForTesting
import androidx.fragment.app.Fragment
+import androidx.fragment.app.activityViewModels
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
@@ -39,31 +39,11 @@
* This page will display basic information about what a fingerprint can be used for and acts as the
* final step of enrollment.
*/
-class FingerprintEnrollConfirmationV2Fragment() :
+class FingerprintEnrollConfirmationV2Fragment(factory: ViewModelProvider.Factory? = null) :
Fragment(R.layout.fingerprint_enroll_finish_base) {
- companion object {
- const val TAG = "FingerprintEnrollConfirmationV2Fragment"
- }
-
- /** Used for testing purposes */
- private var factory: ViewModelProvider.Factory? = null
-
- @VisibleForTesting
- constructor(theFactory: ViewModelProvider.Factory) : this() {
- factory = theFactory
- }
-
- private val viewModelProvider: ViewModelProvider by lazy {
- if (factory != null) {
- ViewModelProvider(requireActivity(), factory!!)
- } else {
- ViewModelProvider(requireActivity())
- }
- }
-
- private val viewModel: FingerprintEnrollConfirmationViewModel by lazy {
- viewModelProvider[FingerprintEnrollConfirmationViewModel::class.java]
+ private val viewModel: FingerprintEnrollConfirmationViewModel by activityViewModels {
+ factory ?: FingerprintEnrollConfirmationViewModel.Factory
}
override fun onCreateView(
@@ -106,4 +86,8 @@
private fun onNextButtonClick(view: View?) {
viewModel.onNextButtonClicked()
}
+
+ companion object {
+ const val TAG = "FingerprintEnrollConfirmationV2Fragment"
+ }
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollIntroV2Fragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollIntroV2Fragment.kt
index 53d0ddf..6c87dfd 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollIntroV2Fragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollIntroV2Fragment.kt
@@ -30,8 +30,9 @@
import android.widget.ImageView
import android.widget.ScrollView
import android.widget.TextView
-import androidx.annotation.VisibleForTesting
import androidx.fragment.app.Fragment
+import androidx.fragment.app.activityViewModels
+import androidx.fragment.app.viewModels
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
import com.android.settings.R
@@ -74,37 +75,22 @@
* 2. How the data will be stored
* 3. How the user can access and remove their data
*/
-class FingerprintEnrollIntroV2Fragment() : Fragment(R.layout.fingerprint_v2_enroll_introduction) {
-
- /** Used for testing purposes */
- private var factory: ViewModelProvider.Factory? = null
-
- @VisibleForTesting
- constructor(theFactory: ViewModelProvider.Factory) : this() {
- factory = theFactory
- }
-
- private val viewModelProvider: ViewModelProvider by lazy {
- if (factory != null) {
- ViewModelProvider(requireActivity(), factory!!)
- } else {
- ViewModelProvider(requireActivity())
- }
- }
+class FingerprintEnrollIntroV2Fragment(testFactory: ViewModelProvider.Factory? = null) :
+ Fragment(R.layout.fingerprint_v2_enroll_introduction) {
private lateinit var footerBarMixin: FooterBarMixin
private lateinit var textModel: TextModel
- private val viewModel: FingerprintEnrollIntroViewModel by lazy {
- viewModelProvider[FingerprintEnrollIntroViewModel::class.java]
+ private val viewModel: FingerprintEnrollIntroViewModel by activityViewModels {
+ testFactory ?: FingerprintEnrollIntroViewModel.Factory
}
- private val fingerprintScrollViewModel: FingerprintScrollViewModel by lazy {
- viewModelProvider[FingerprintScrollViewModel::class.java]
+ private val fingerprintScrollViewModel: FingerprintScrollViewModel by viewModels {
+ testFactory ?: FingerprintScrollViewModel.Factory
}
- private val gateKeeperViewModel: FingerprintGatekeeperViewModel by lazy {
- viewModelProvider[FingerprintGatekeeperViewModel::class.java]
+ private val gateKeeperViewModel: FingerprintGatekeeperViewModel by activityViewModels {
+ testFactory ?: FingerprintGatekeeperViewModel.Factory
}
override fun onCreateView(
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/RfpsEnrollFindSensorFragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/RfpsEnrollFindSensorFragment.kt
index 5ef1770..f1c1e34 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/RfpsEnrollFindSensorFragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/RfpsEnrollFindSensorFragment.kt
@@ -23,11 +23,15 @@
import android.view.ViewGroup
import androidx.annotation.VisibleForTesting
import androidx.fragment.app.Fragment
+import androidx.fragment.app.activityViewModels
+import androidx.lifecycle.Lifecycle
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
+import androidx.lifecycle.repeatOnLifecycle
import com.android.settings.R
import com.android.settings.biometrics.fingerprint.FingerprintErrorDialog
import com.android.settings.biometrics.fingerprint.FingerprintFindSensorAnimation
+import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.util.toFingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollFindSensorViewModel
import com.google.android.setupcompat.template.FooterBarMixin
import com.google.android.setupcompat.template.FooterButton
@@ -51,18 +55,10 @@
factory = theFactory
}
- private val viewModelProvider: ViewModelProvider by lazy {
- if (factory != null) {
- ViewModelProvider(requireActivity(), factory!!)
- } else {
- ViewModelProvider(requireActivity())
- }
- }
-
private var animation: FingerprintFindSensorAnimation? = null
- private val viewModel: FingerprintEnrollFindSensorViewModel by lazy {
- viewModelProvider[FingerprintEnrollFindSensorViewModel::class.java]
+ private val viewModel: FingerprintEnrollFindSensorViewModel by activityViewModels {
+ factory ?: FingerprintEnrollFindSensorViewModel.Factory
}
override fun onCreateView(
@@ -78,6 +74,12 @@
// Set up footer bar
val footerBarMixin = view.getMixin(FooterBarMixin::class.java)
setupSecondaryButton(footerBarMixin)
+
+ viewLifecycleOwner.lifecycleScope.launch {
+ repeatOnLifecycle(Lifecycle.State.RESUMED) {
+ viewModel.enroll(requireActivity().intent.toFingerprintEnrollOptions())
+ }
+ }
lifecycleScope.launch {
viewModel.showPrimaryButton.collect { setupPrimaryButton(footerBarMixin) }
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/SfpsEnrollFindSensorFragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/SfpsEnrollFindSensorFragment.kt
index 584824d..22705b5 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/SfpsEnrollFindSensorFragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/SfpsEnrollFindSensorFragment.kt
@@ -24,11 +24,15 @@
import android.view.ViewGroup
import androidx.annotation.VisibleForTesting
import androidx.fragment.app.Fragment
+import androidx.fragment.app.activityViewModels
+import androidx.lifecycle.Lifecycle
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
+import androidx.lifecycle.repeatOnLifecycle
import com.airbnb.lottie.LottieAnimationView
import com.android.settings.R
import com.android.settings.biometrics.fingerprint.FingerprintErrorDialog
+import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.util.toFingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollFindSensorViewModel
import com.google.android.setupcompat.template.FooterBarMixin
import com.google.android.setupcompat.template.FooterButton
@@ -52,16 +56,8 @@
factory = theFactory
}
- private val viewModelProvider: ViewModelProvider by lazy {
- if (factory != null) {
- ViewModelProvider(requireActivity(), factory!!)
- } else {
- ViewModelProvider(requireActivity())
- }
- }
-
- private val viewModel: FingerprintEnrollFindSensorViewModel by lazy {
- viewModelProvider[FingerprintEnrollFindSensorViewModel::class.java]
+ private val viewModel: FingerprintEnrollFindSensorViewModel by activityViewModels {
+ factory ?: FingerprintEnrollFindSensorViewModel.Factory
}
override fun onCreateView(
@@ -78,6 +74,12 @@
val footerBarMixin = view.getMixin(FooterBarMixin::class.java)
setupSecondaryButton(footerBarMixin)
+ viewLifecycleOwner.lifecycleScope.launch {
+ repeatOnLifecycle(Lifecycle.State.RESUMED) {
+ viewModel.enroll(requireActivity().intent.toFingerprintEnrollOptions())
+ }
+ }
+
// Set up lottie
lifecycleScope.launch {
viewModel.sfpsLottieInfo.collect { (isFolded, rotation) ->
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/UdfpsEnrollFindSensorFragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/UdfpsEnrollFindSensorFragment.kt
index 923a309..17bfaa3 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/UdfpsEnrollFindSensorFragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/education/UdfpsEnrollFindSensorFragment.kt
@@ -24,11 +24,15 @@
import android.view.ViewGroup
import androidx.annotation.VisibleForTesting
import androidx.fragment.app.Fragment
+import androidx.fragment.app.activityViewModels
+import androidx.lifecycle.Lifecycle
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
+import androidx.lifecycle.repeatOnLifecycle
import com.airbnb.lottie.LottieAnimationView
import com.android.settings.R
import com.android.settings.biometrics.fingerprint.FingerprintErrorDialog
+import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.util.toFingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollFindSensorViewModel
import com.google.android.setupcompat.template.FooterBarMixin
import com.google.android.setupcompat.template.FooterButton
@@ -53,16 +57,8 @@
factory = theFactory
}
- private val viewModelProvider: ViewModelProvider by lazy {
- if (factory != null) {
- ViewModelProvider(requireActivity(), factory!!)
- } else {
- ViewModelProvider(requireActivity())
- }
- }
-
- private val viewModel: FingerprintEnrollFindSensorViewModel by lazy {
- viewModelProvider[FingerprintEnrollFindSensorViewModel::class.java]
+ private val viewModel: FingerprintEnrollFindSensorViewModel by activityViewModels {
+ factory ?: FingerprintEnrollFindSensorViewModel.Factory
}
override fun onCreateView(
@@ -79,6 +75,12 @@
val footerBarMixin = view.getMixin(FooterBarMixin::class.java)
setupSecondaryButton(footerBarMixin)
+ viewLifecycleOwner.lifecycleScope.launch {
+ repeatOnLifecycle(Lifecycle.State.RESUMED) {
+ viewModel.enroll(requireActivity().intent.toFingerprintEnrollOptions())
+ }
+ }
+
lifecycleScope.launch {
viewModel.showPrimaryButton.collect { setupPrimaryButton(footerBarMixin) }
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/fragment/RFPSEnrollFragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/fragment/RFPSEnrollFragment.kt
index 0ec0bdd..1da0eea 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/fragment/RFPSEnrollFragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/fragment/RFPSEnrollFragment.kt
@@ -28,12 +28,15 @@
import android.widget.TextView
import androidx.annotation.VisibleForTesting
import androidx.fragment.app.Fragment
+import androidx.fragment.app.activityViewModels
+import androidx.fragment.app.viewModels
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.repeatOnLifecycle
import com.android.settings.R
import com.android.settings.biometrics.fingerprint2.lib.model.FingerEnrollState
+import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.util.toFingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.widget.FingerprintErrorDialog
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.rfps.ui.viewmodel.RFPSIconTouchViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.rfps.ui.viewmodel.RFPSViewModel
@@ -62,29 +65,21 @@
factory = theFactory
}
- private val viewModelProvider: ViewModelProvider by lazy {
- if (factory != null) {
- ViewModelProvider(requireActivity(), factory!!)
- } else {
- ViewModelProvider(requireActivity())
- }
- }
-
private lateinit var linearOutSlowInInterpolator: Interpolator
private lateinit var fastOutLinearInInterpolator: Interpolator
private lateinit var textView: TextView
private lateinit var progressBar: RFPSProgressBar
- private val iconTouchViewModel: RFPSIconTouchViewModel by lazy {
- viewModelProvider[RFPSIconTouchViewModel::class.java]
+ private val iconTouchViewModel: RFPSIconTouchViewModel by viewModels {
+ RFPSIconTouchViewModel.Factory
}
- private val rfpsViewModel: RFPSViewModel by lazy { viewModelProvider[RFPSViewModel::class.java] }
-
- private val backgroundViewModel: BackgroundViewModel by lazy {
- viewModelProvider[BackgroundViewModel::class.java]
+ private val rfpsViewModel: RFPSViewModel by activityViewModels {
+ factory ?: RFPSViewModel.Factory
}
+ private val backgroundViewModel: BackgroundViewModel by activityViewModels()
+
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
@@ -131,6 +126,7 @@
viewLifecycleOwner.lifecycleScope.launch {
repeatOnLifecycle(Lifecycle.State.RESUMED) {
+ rfpsViewModel.enroll(requireActivity().intent.toFingerprintEnrollOptions())
// Icon animation update
viewLifecycleOwner.lifecycleScope.launch {
// TODO(b/324427704): Fix this delay
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSIconTouchViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSIconTouchViewModel.kt
index cbcb1d4..00af7ed 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSIconTouchViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSIconTouchViewModel.kt
@@ -19,6 +19,8 @@
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.SharingStarted
@@ -27,6 +29,7 @@
import kotlinx.coroutines.flow.update
private const val touchesToShowDialog = 3
+
/**
* This class is responsible for counting the number of touches on the fingerprint icon, and if this
* number reaches a threshold it will produce an action via [shouldShowDialog] to indicate the ui
@@ -52,10 +55,9 @@
_touches.update { _touches.value + 1 }
}
- class RFPSIconTouchViewModelFactory : ViewModelProvider.Factory {
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return RFPSIconTouchViewModel() as T
+ companion object {
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer { RFPSIconTouchViewModel() }
}
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSViewModel.kt
index 8abcf1a..c95020d 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/viewmodel/RFPSViewModel.kt
@@ -16,9 +16,14 @@
package com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.rfps.ui.viewmodel
+import android.hardware.fingerprint.FingerprintEnrollOptions
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.domain.interactor.OrientationInteractor
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
import com.android.settings.biometrics.fingerprint2.lib.model.FingerEnrollState
@@ -158,27 +163,27 @@
enrollFlow = fingerprintEnrollViewModel.enrollFlow
}
- class RFPSViewModelFactory(
- private val fingerprintEnrollEnrollingViewModel: FingerprintEnrollEnrollingViewModel,
- private val navigationViewModel: FingerprintNavigationViewModel,
- private val orientationInteractor: OrientationInteractor,
- private val fingerprintManager: FingerprintManagerInteractor,
- ) : ViewModelProvider.Factory {
-
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return RFPSViewModel(
- fingerprintEnrollEnrollingViewModel,
- navigationViewModel,
- orientationInteractor,
- fingerprintManager,
- )
- as T
- }
+ /** Starts enrollment. */
+ fun enroll(enrollOptions: FingerprintEnrollOptions) {
+ fingerprintEnrollViewModel.enroll(enrollOptions)
}
companion object {
private val navStep = Enrollment::class
private const val TAG = "RFPSViewModel"
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment!!
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+ RFPSViewModel(
+ provider[FingerprintEnrollEnrollingViewModel::class],
+ provider[FingerprintNavigationViewModel::class],
+ biometricEnvironment.orientationInteractor,
+ biometricEnvironment.fingerprintManagerInteractor,
+ )
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/widget/RFPSProgressBar.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/widget/RFPSProgressBar.kt
index dd7d9f5..97900b7 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/widget/RFPSProgressBar.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/rfps/ui/widget/RFPSProgressBar.kt
@@ -82,6 +82,7 @@
shouldAnimateInternal = shouldAnimate
}
+
/** This function should only be called when actual progress has been made. */
fun updateProgress(percentComplete: Float) {
val progress = maxProgress - (percentComplete.coerceIn(0.0f, 100.0f) * maxProgress).toInt()
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/fragment/UdfpsEnrollFragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/fragment/UdfpsEnrollFragment.kt
index 4588a07..3015321 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/fragment/UdfpsEnrollFragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/fragment/UdfpsEnrollFragment.kt
@@ -18,8 +18,6 @@
import android.os.Bundle
import android.util.Log
-import android.view.MotionEvent
-import android.view.MotionEvent.ACTION_HOVER_MOVE
import android.view.View
import android.view.ViewGroup
import android.view.WindowManager
@@ -27,6 +25,7 @@
import android.widget.FrameLayout
import androidx.annotation.VisibleForTesting
import androidx.fragment.app.Fragment
+import androidx.fragment.app.activityViewModels
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
@@ -36,6 +35,7 @@
import com.android.settings.R
import com.android.settings.biometrics.fingerprint2.data.model.EnrollStageModel
import com.android.settings.biometrics.fingerprint2.lib.model.FingerEnrollState
+import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.util.toFingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.widget.FingerprintErrorDialog
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.udfps.ui.model.DescriptionText
import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.udfps.ui.model.HeaderText
@@ -50,17 +50,10 @@
/** Used for testing purposes */
private var factory: ViewModelProvider.Factory? = null
- private val viewModel: UdfpsViewModel by lazy { viewModelProvider[UdfpsViewModel::class.java] }
private lateinit var udfpsEnrollView: UdfpsEnrollViewV2
private lateinit var lottie: LottieAnimationView
- private val viewModelProvider: ViewModelProvider by lazy {
- if (factory != null) {
- ViewModelProvider(requireActivity(), factory!!)
- } else {
- ViewModelProvider(requireActivity())
- }
- }
+ private val viewModel: UdfpsViewModel by activityViewModels { factory ?: UdfpsViewModel.Factory }
@VisibleForTesting
constructor(theFactory: ViewModelProvider.Factory) : this() {
@@ -90,6 +83,7 @@
viewLifecycleOwner.lifecycleScope.launch {
repeatOnLifecycle(Lifecycle.State.RESUMED) {
+ viewModel.enroll(requireActivity().intent.toFingerprintEnrollOptions())
launch {
viewModel.sensorLocation.collect { sensor ->
udfpsEnrollView.setSensorRect(sensor.sensorBounds, sensor.sensorType)
@@ -204,12 +198,16 @@
}
viewLifecycleOwner.lifecycleScope.launch {
- viewModel.touchExplorationDebug.collect {
- udfpsEnrollView.sendDebugTouchExplorationEvent(
- MotionEvent.obtain(100, 100, ACTION_HOVER_MOVE, it.x.toFloat(), it.y.toFloat(), 0)
- )
+ view.setOnTouchListener { _, motionEvent ->
+ viewModel.onTouchEvent(motionEvent)
+ false
}
}
+
+ viewLifecycleOwner.lifecycleScope.launch {
+ viewModel.touchEvent.collect { udfpsEnrollView.onTouchEvent(it) }
+ }
+
viewModel.readyForEnrollment()
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsLastStepViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsLastStepViewModel.kt
index 6a45ec4..8f9e45e 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsLastStepViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsLastStepViewModel.kt
@@ -16,9 +16,13 @@
package com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.udfps.ui.viewmodel
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintVibrationEffects
import com.android.settings.biometrics.fingerprint2.domain.interactor.VibrationInteractor
import com.android.settings.biometrics.fingerprint2.lib.model.FingerEnrollState
@@ -89,14 +93,18 @@
}
.filterNotNull()
- class UdfpsLastStepViewModelFactory(
- private val fingerprintEnrollEnrollingViewModel: FingerprintEnrollEnrollingViewModel,
- private val vibrationInteractor: VibrationInteractor,
- ) : ViewModelProvider.Factory {
-
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return UdfpsLastStepViewModel(fingerprintEnrollEnrollingViewModel, vibrationInteractor) as T
+ companion object {
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+ UdfpsLastStepViewModel(
+ provider[FingerprintEnrollEnrollingViewModel::class],
+ biometricEnvironment!!.vibrationInteractor,
+ )
+ }
}
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsViewModel.kt
index 508084e..3396cdc 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/viewmodel/UdfpsViewModel.kt
@@ -16,21 +16,26 @@
package com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.udfps.ui.viewmodel
-import android.graphics.Point
import android.graphics.PointF
+import android.hardware.fingerprint.FingerprintEnrollOptions
+import android.view.MotionEvent
import android.view.Surface
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.data.model.EnrollStageModel
-import com.android.settings.biometrics.fingerprint2.data.repository.FingerprintSensorRepository
-import com.android.settings.biometrics.fingerprint2.data.repository.SimulatedTouchEventsRepository
import com.android.settings.biometrics.fingerprint2.domain.interactor.AccessibilityInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.DebuggingInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.DisplayDensityInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.EnrollStageInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintSensorInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintVibrationEffects
import com.android.settings.biometrics.fingerprint2.domain.interactor.OrientationInteractor
+import com.android.settings.biometrics.fingerprint2.domain.interactor.TouchEventInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.UdfpsEnrollInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.VibrationInteractor
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
@@ -45,6 +50,7 @@
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.SharingStarted
+import kotlinx.coroutines.flow.asStateFlow
import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.combineTransform
import kotlinx.coroutines.flow.distinctUntilChanged
@@ -60,20 +66,20 @@
/** ViewModel used to drive UDFPS Enrollment through [UdfpsEnrollFragment] */
class UdfpsViewModel(
+ val navigationViewModel: FingerprintNavigationViewModel,
+ val fingerprintEnrollEnrollingViewModel: FingerprintEnrollEnrollingViewModel,
+ backgroundViewModel: BackgroundViewModel,
+ val udfpsLastStepViewModel: UdfpsLastStepViewModel,
val vibrationInteractor: VibrationInteractor,
displayDensityInteractor: DisplayDensityInteractor,
- val navigationViewModel: FingerprintNavigationViewModel,
debuggingInteractor: DebuggingInteractor,
- val fingerprintEnrollEnrollingViewModel: FingerprintEnrollEnrollingViewModel,
- simulatedTouchEventsDebugRepository: SimulatedTouchEventsRepository,
enrollStageInteractor: EnrollStageInteractor,
orientationInteractor: OrientationInteractor,
- backgroundViewModel: BackgroundViewModel,
- sensorRepository: FingerprintSensorRepository,
udfpsEnrollInteractor: UdfpsEnrollInteractor,
fingerprintManager: FingerprintManagerInteractor,
- val udfpsLastStepViewModel: UdfpsLastStepViewModel,
accessibilityInteractor: AccessibilityInteractor,
+ sensorRepository: FingerprintSensorInteractor,
+ touchEventInteractor: TouchEventInteractor,
) : ViewModel() {
private val isSetupWizard = flowOf(false)
@@ -191,15 +197,9 @@
.transform { emit(it == Surface.ROTATION_90) }
.distinctUntilChanged()
- /** This sends touch exploration events only used for debugging purposes. */
- val touchExplorationDebug: Flow<Point> =
- debuggingInteractor.debuggingEnabled.combineTransform(
- simulatedTouchEventsDebugRepository.touchExplorationDebug
- ) { enabled, point ->
- if (enabled) {
- emit(point)
- }
- }
+ private val _touchEvent: MutableStateFlow<MotionEvent?> = MutableStateFlow(null)
+ val touchEvent =
+ _touchEvent.asStateFlow().filterNotNull()
/** Determines the current [EnrollStageModel] enrollment is in */
private val enrollStage: Flow<EnrollStageModel> =
@@ -266,6 +266,12 @@
viewModelScope.launch {
backgroundViewModel.background.filter { it }.collect { didGoToBackground() }
}
+
+ viewModelScope.launch {
+ touchEventInteractor.touchEvent.collect {
+ _touchEvent.update { it }
+ }
+ }
}
/** Indicates if we should show the lottie. */
@@ -393,47 +399,43 @@
)
}
- class UdfpsEnrollmentFactory(
- private val vibrationInteractor: VibrationInteractor,
- private val displayDensityInteractor: DisplayDensityInteractor,
- private val navigationViewModel: FingerprintNavigationViewModel,
- private val debuggingInteractor: DebuggingInteractor,
- private val fingerprintEnrollEnrollingViewModel: FingerprintEnrollEnrollingViewModel,
- private val simulatedTouchEventsRepository: SimulatedTouchEventsRepository,
- private val enrollStageInteractor: EnrollStageInteractor,
- private val orientationInteractor: OrientationInteractor,
- private val backgroundViewModel: BackgroundViewModel,
- private val sensorRepository: FingerprintSensorRepository,
- private val udfpsEnrollInteractor: UdfpsEnrollInteractor,
- private val fingerprintManager: FingerprintManagerInteractor,
- private val udfpsLastStepViewModel: UdfpsLastStepViewModel,
- private val accessibilityInteractor: AccessibilityInteractor,
- ) : ViewModelProvider.Factory {
+ /** Starts enrollment. */
+ fun enroll(enrollOptions: FingerprintEnrollOptions) {
+ fingerprintEnrollEnrollingViewModel.enroll(enrollOptions)
+ }
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return UdfpsViewModel(
- vibrationInteractor,
- displayDensityInteractor,
- navigationViewModel,
- debuggingInteractor,
- fingerprintEnrollEnrollingViewModel,
- simulatedTouchEventsRepository,
- enrollStageInteractor,
- orientationInteractor,
- backgroundViewModel,
- sensorRepository,
- udfpsEnrollInteractor,
- fingerprintManager,
- udfpsLastStepViewModel,
- accessibilityInteractor,
- )
- as T
- }
+ /** Indicates a touch event has occurred. */
+ fun onTouchEvent(event: MotionEvent) {
+ _touchEvent.update { event }
}
companion object {
private val navStep = FingerprintNavigationStep.Enrollment::class
private const val TAG = "UDFPSViewModel"
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment!!
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+
+ UdfpsViewModel(
+ provider[FingerprintNavigationViewModel::class],
+ provider[FingerprintEnrollEnrollingViewModel::class],
+ provider[BackgroundViewModel::class],
+ provider[UdfpsLastStepViewModel::class],
+ biometricEnvironment.vibrationInteractor,
+ biometricEnvironment.displayDensityInteractor,
+ biometricEnvironment.debuggingInteractor,
+ biometricEnvironment.enrollStageInteractor,
+ biometricEnvironment.orientationInteractor,
+ biometricEnvironment.udfpsEnrollInteractor,
+ biometricEnvironment.fingerprintManagerInteractor,
+ biometricEnvironment.accessibilityInteractor,
+ biometricEnvironment.sensorInteractor,
+ biometricEnvironment.touchEventInteractor,
+ )
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollProgressBarDrawableV2.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollProgressBarDrawableV2.kt
index c3adc87..05d25cd 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollProgressBarDrawableV2.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollProgressBarDrawableV2.kt
@@ -210,6 +210,7 @@
override fun getOpacity(): Int {
return PixelFormat.UNKNOWN
}
+
/**
* Draws the progress with locations [sensorLocationX] [sensorLocationY], note these must be with
* respect to the parent framelayout.
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollViewV2.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollViewV2.kt
index d9593c1..286d750 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollViewV2.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/modules/enrolling/udfps/ui/widget/UdfpsEnrollViewV2.kt
@@ -148,18 +148,10 @@
}
}
- /**
- * Sends a touch exploration event to the [onHoverListener] this should only be used for
- * debugging.
- */
- fun sendDebugTouchExplorationEvent(motionEvent: MotionEvent) {
- touchExplorationAnnouncer.onTouch(motionEvent)
- }
-
/** Sets the addHoverListener, this should happen when talkback is enabled. */
private fun addHoverListener() {
onHoverListener = OnHoverListener { _: View, event: MotionEvent ->
- sendDebugTouchExplorationEvent(event)
+ touchExplorationAnnouncer.onTouch(event)
false
}
this.setOnHoverListener(onHoverListener)
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/BackgroundViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/BackgroundViewModel.kt
index 2b53a53..75a22fc 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/BackgroundViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/BackgroundViewModel.kt
@@ -18,6 +18,8 @@
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow
import kotlinx.coroutines.flow.update
@@ -39,10 +41,9 @@
_background.update { false }
}
- class BackgroundViewModelFactory : ViewModelProvider.Factory {
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return BackgroundViewModel() as T
+ companion object {
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer { BackgroundViewModel() }
}
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModel.kt
index d9b31d7..5ce2ed7 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModel.kt
@@ -16,14 +16,17 @@
package com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel
+import android.util.Log
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
import kotlinx.coroutines.flow.Flow
-/**
- * Models the UI state for [FingerprintEnrollConfirmationV2Fragment]
- */
+/** Models the UI state for [FingerprintEnrollConfirmationV2Fragment] */
class FingerprintEnrollConfirmationViewModel(
private val navigationViewModel: FingerprintNavigationViewModel,
fingerprintInteractor: FingerprintManagerInteractor,
@@ -50,18 +53,20 @@
navigationViewModel.update(FingerprintAction.ADD_ANOTHER, navStep, "onAddAnotherButtonClicked")
}
- class FingerprintEnrollConfirmationViewModelFactory(
- private val navigationViewModel: FingerprintNavigationViewModel,
- private val fingerprintInteractor: FingerprintManagerInteractor,
- ) : ViewModelProvider.Factory {
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintEnrollConfirmationViewModel(navigationViewModel, fingerprintInteractor) as T
- }
- }
-
companion object {
private const val TAG = "FingerprintEnrollConfirmationViewModel"
private val navStep = FingerprintNavigationStep.Confirmation::class
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+ FingerprintEnrollConfirmationViewModel(
+ provider[FingerprintNavigationViewModel::class],
+ biometricEnvironment!!.fingerprintManagerInteractor,
+ )
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModel.kt
index bbe3cfd..a2accb7 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModel.kt
@@ -16,14 +16,15 @@
package com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel
-import android.util.Log
+import android.hardware.fingerprint.FingerprintEnrollOptions
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
-import com.android.systemui.biometrics.shared.model.FingerprintSensor
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.combine
-import kotlinx.coroutines.flow.filterNotNull
import kotlinx.coroutines.flow.transformLatest
import kotlinx.coroutines.flow.update
@@ -69,23 +70,24 @@
val enrollFlow =
enrollFlowShouldBeRunning.transformLatest {
if (it) {
- fingerprintEnrollViewModel.enrollFlow.collect { event ->
- emit(event) }
+ fingerprintEnrollViewModel.enrollFlow.collect { event -> emit(event) }
}
}
- class FingerprintEnrollEnrollingViewModelFactory(
- private val fingerprintEnrollViewModel: FingerprintEnrollViewModel,
- private val backgroundViewModel: BackgroundViewModel,
- ) : ViewModelProvider.Factory {
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintEnrollEnrollingViewModel(fingerprintEnrollViewModel, backgroundViewModel)
- as T
- }
+ /** Indicates enrollment to start */
+ fun enroll(enrollOptions: FingerprintEnrollOptions) {
+ fingerprintEnrollViewModel.enroll(enrollOptions)
}
companion object {
- private val TAG = "FingerprintEnrollEnrollingViewModel"
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+ FingerprintEnrollEnrollingViewModel(
+ provider[FingerprintEnrollViewModel::class],
+ provider[BackgroundViewModel::class],
+ )
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollFindSensorViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollFindSensorViewModel.kt
index ddbf1cb..3568dbd 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollFindSensorViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollFindSensorViewModel.kt
@@ -16,9 +16,14 @@
package com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel
+import android.hardware.fingerprint.FingerprintEnrollOptions
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.domain.interactor.AccessibilityInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.FoldStateInteractor
import com.android.settings.biometrics.fingerprint2.domain.interactor.OrientationInteractor
@@ -43,10 +48,10 @@
private val fingerprintEnrollViewModel: FingerprintEnrollViewModel,
private val gatekeeperViewModel: FingerprintGatekeeperViewModel,
backgroundViewModel: BackgroundViewModel,
+ fingerprintFlowViewModel: FingerprintFlowViewModel,
accessibilityInteractor: AccessibilityInteractor,
foldStateInteractor: FoldStateInteractor,
orientationInteractor: OrientationInteractor,
- fingerprintFlowViewModel: FingerprintFlowViewModel,
fingerprintManagerInteractor: FingerprintManagerInteractor,
) : ViewModel() {
@@ -64,6 +69,7 @@
val showPrimaryButton: Flow<Boolean> = _isUdfps.filter { it }
private val _showSfpsLottie = _isSfps.filter { it }
+
/** Represents the stream of showing sfps lottie and the information Pair(isFolded, rotation). */
val sfpsLottieInfo: Flow<Pair<Boolean, Int>> =
combineTransform(
@@ -75,6 +81,7 @@
}
private val _showUdfpsLottie = _isUdfps.filter { it }
+
/** Represents the stream of showing udfps lottie and whether accessibility is enabled. */
val udfpsLottieInfo: Flow<Boolean> =
_showUdfpsLottie.combine(accessibilityInteractor.isAccessibilityEnabled) {
@@ -87,11 +94,13 @@
val showRfpsAnimation: Flow<Boolean> = _isRearSfps.filter { it }
private val _showErrorDialog: MutableStateFlow<Pair<Int, Boolean>?> = MutableStateFlow(null)
+
/** Represents the stream of showing error dialog. */
val showErrorDialog = _showErrorDialog.filterNotNull()
private var _didTryEducation = false
private var _education: MutableStateFlow<Boolean> = MutableStateFlow(false)
+
/** Indicates if the education flow should be running. */
private val educationFlowShouldBeRunning: Flow<Boolean> =
_education.combine(backgroundViewModel.background) { shouldRunEducation, isInBackground ->
@@ -167,6 +176,11 @@
_education.update { false }
}
+ /** Indicates enrollment to start */
+ fun enroll(enrollOptions: FingerprintEnrollOptions) {
+ fingerprintEnrollViewModel.enroll(enrollOptions)
+ }
+
/** Proceed to EnrollEnrolling page. */
fun proceedToEnrolling() {
stopEducation()
@@ -182,36 +196,29 @@
)
}
- class FingerprintEnrollFindSensorViewModelFactory(
- private val navigationViewModel: FingerprintNavigationViewModel,
- private val fingerprintEnrollViewModel: FingerprintEnrollViewModel,
- private val gatekeeperViewModel: FingerprintGatekeeperViewModel,
- private val backgroundViewModel: BackgroundViewModel,
- private val accessibilityInteractor: AccessibilityInteractor,
- private val foldStateInteractor: FoldStateInteractor,
- private val orientationInteractor: OrientationInteractor,
- private val fingerprintFlowViewModel: FingerprintFlowViewModel,
- private val fingerprintManagerInteractor: FingerprintManagerInteractor,
- ) : ViewModelProvider.Factory {
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintEnrollFindSensorViewModel(
- navigationViewModel,
- fingerprintEnrollViewModel,
- gatekeeperViewModel,
- backgroundViewModel,
- accessibilityInteractor,
- foldStateInteractor,
- orientationInteractor,
- fingerprintFlowViewModel,
- fingerprintManagerInteractor,
- )
- as T
- }
- }
-
companion object {
private const val TAG = "FingerprintEnrollFindSensorViewModel"
private val navStep = Education::class
+
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment!!
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+
+ FingerprintEnrollFindSensorViewModel(
+ provider[FingerprintNavigationViewModel::class],
+ provider[FingerprintEnrollViewModel::class],
+ provider[FingerprintGatekeeperViewModel::class],
+ provider[BackgroundViewModel::class],
+ provider[FingerprintFlowViewModel::class],
+ biometricEnvironment.accessibilityInteractor,
+ biometricEnvironment.foldStateInteractor,
+ biometricEnvironment.orientationInteractor,
+ biometricEnvironment.fingerprintManagerInteractor,
+ )
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollIntroViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollIntroViewModel.kt
index 3bf003c..6ec2048 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollIntroViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollIntroViewModel.kt
@@ -16,8 +16,12 @@
package com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
import com.android.settings.biometrics.fingerprint2.lib.model.FingerprintFlow
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.Introduction
@@ -27,8 +31,8 @@
/** A view model for fingerprint enroll introduction. */
class FingerprintEnrollIntroViewModel(
val navigationViewModel: FingerprintNavigationViewModel,
- private val fingerprintFlowViewModel: FingerprintFlowViewModel,
- private val fingerprintManagerInteractor: FingerprintManagerInteractor,
+ fingerprintFlowViewModel: FingerprintFlowViewModel,
+ fingerprintManagerInteractor: FingerprintManagerInteractor,
) : ViewModel() {
/** Represents a stream of [FingerprintSensor] */
@@ -51,25 +55,21 @@
)
}
- class FingerprintEnrollIntoViewModelFactory(
- val navigationViewModel: FingerprintNavigationViewModel,
- val fingerprintFlowViewModel: FingerprintFlowViewModel,
- val fingerprintManagerInteractor: FingerprintManagerInteractor,
- ) : ViewModelProvider.Factory {
-
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintEnrollIntroViewModel(
- navigationViewModel,
- fingerprintFlowViewModel,
- fingerprintManagerInteractor,
- )
- as T
- }
- }
-
companion object {
val navStep = Introduction::class
private const val TAG = "FingerprintEnrollIntroViewModel"
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+ FingerprintEnrollIntroViewModel(
+ provider[FingerprintNavigationViewModel::class],
+ provider[FingerprintFlowViewModel::class],
+ biometricEnvironment!!.fingerprintManagerInteractor,
+ )
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollViewModel.kt
index c27808d..2669b8b 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollViewModel.kt
@@ -15,9 +15,15 @@
*/
package com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel
+import android.hardware.fingerprint.FingerprintEnrollOptions
+import androidx.lifecycle.VIEW_MODEL_STORE_OWNER_KEY
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
+import androidx.lifecycle.ViewModelProvider.AndroidViewModelFactory.Companion.APPLICATION_KEY
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
import com.android.settings.biometrics.fingerprint2.lib.model.EnrollReason
import com.android.settings.biometrics.fingerprint2.lib.model.FingerEnrollState
@@ -25,12 +31,14 @@
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.Enrollment
import com.android.systemui.biometrics.shared.model.FingerprintSensorType
import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.SharingStarted
import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.filterNotNull
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.shareIn
import kotlinx.coroutines.flow.transformLatest
+import kotlinx.coroutines.flow.update
/** Represents all of the fingerprint information needed for a fingerprint enrollment process. */
class FingerprintEnrollViewModel(
@@ -55,6 +63,8 @@
}
}
+ private val enrollOptions: MutableStateFlow<FingerprintEnrollOptions?> = MutableStateFlow(null)
+
/** Represents the stream of [FingerprintSensorType] */
val sensorType: Flow<FingerprintSensorType?> =
fingerprintManagerInteractor.sensorPropertiesInternal.filterNotNull().map { it.sensorType }
@@ -66,16 +76,23 @@
* This flow should be the only flow which calls enroll().
*/
val _enrollFlow: Flow<FingerEnrollState> =
- combine(gatekeeperViewModel.gatekeeperInfo, _enrollReason) { hardwareAuthToken, enrollReason ->
- Pair(hardwareAuthToken, enrollReason)
+ combine(gatekeeperViewModel.gatekeeperInfo, _enrollReason, enrollOptions) {
+ hardwareAuthToken,
+ enrollReason,
+ enrollOptions ->
+ Triple(hardwareAuthToken, enrollReason, enrollOptions)
}
.transformLatest {
/** [transformLatest] is used as we want to make sure to cancel previous API call. */
- (hardwareAuthToken, enrollReason) ->
- if (hardwareAuthToken is GatekeeperInfo.GatekeeperPasswordInfo && enrollReason != null) {
- fingerprintManagerInteractor.enroll(hardwareAuthToken.token, enrollReason).collect {
- emit(it)
- }
+ (hardwareAuthToken, enrollReason, enrollOptions) ->
+ if (
+ hardwareAuthToken is GatekeeperInfo.GatekeeperPasswordInfo &&
+ enrollReason != null &&
+ enrollOptions != null
+ ) {
+ fingerprintManagerInteractor
+ .enroll(hardwareAuthToken.token, enrollReason, enrollOptions)
+ .collect { emit(it) }
}
}
.shareIn(viewModelScope, SharingStarted.WhileSubscribed(), 0)
@@ -108,14 +125,23 @@
}
}
- class FingerprintEnrollViewModelFactory(
- val interactor: FingerprintManagerInteractor,
- val gatekeeperViewModel: FingerprintGatekeeperViewModel,
- val navigationViewModel: FingerprintNavigationViewModel,
- ) : ViewModelProvider.Factory {
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintEnrollViewModel(interactor, gatekeeperViewModel, navigationViewModel) as T
+ /** Starts enrollment. */
+ fun enroll(options: FingerprintEnrollOptions) {
+ enrollOptions.update { options }
+ }
+
+ companion object {
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication = this[APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment
+ val provider = ViewModelProvider(this[VIEW_MODEL_STORE_OWNER_KEY]!!)
+ FingerprintEnrollViewModel(
+ biometricEnvironment!!.fingerprintManagerInteractor,
+ provider[FingerprintGatekeeperViewModel::class],
+ provider[FingerprintNavigationViewModel::class],
+ )
+ }
}
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintFlowViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintFlowViewModel.kt
index f076524..394c272 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintFlowViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintFlowViewModel.kt
@@ -19,21 +19,28 @@
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
import com.android.settings.biometrics.fingerprint2.lib.model.FingerprintFlow
import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.SharingStarted
-import kotlinx.coroutines.flow.flowOf
import kotlinx.coroutines.flow.shareIn
+import kotlinx.coroutines.flow.update
-class FingerprintFlowViewModel(private val fingerprintFlowType: FingerprintFlow) : ViewModel() {
- val fingerprintFlow: Flow<FingerprintFlow> =
- flowOf(fingerprintFlowType).shareIn(viewModelScope, SharingStarted.Eagerly, 1)
+class FingerprintFlowViewModel() : ViewModel() {
+ val _mutableFingerprintFlow: MutableStateFlow<FingerprintFlow?> = MutableStateFlow(null)
+ val fingerprintFlow: Flow<FingerprintFlow?> =
+ _mutableFingerprintFlow.shareIn(viewModelScope, SharingStarted.Eagerly, 1)
- class FingerprintFlowViewModelFactory(val flowType: FingerprintFlow) : ViewModelProvider.Factory {
+ /** Used to set the fingerprint flow type */
+ fun updateFlowType(fingerprintFlowType: FingerprintFlow) {
+ _mutableFingerprintFlow.update { fingerprintFlowType }
+ }
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintFlowViewModel(flowType) as T
+ companion object {
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer { FingerprintFlowViewModel() }
}
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintGatekeeperViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintGatekeeperViewModel.kt
index 322be6a..b5be165 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintGatekeeperViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintGatekeeperViewModel.kt
@@ -21,6 +21,9 @@
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
@@ -47,12 +50,10 @@
* in as a parameter to this class.
*/
class FingerprintGatekeeperViewModel(
- theGatekeeperInfo: GatekeeperInfo?,
- private val fingerprintManagerInteractor: FingerprintManagerInteractor,
+ private val fingerprintManagerInteractor: FingerprintManagerInteractor
) : ViewModel() {
- private var _gatekeeperInfo: MutableStateFlow<GatekeeperInfo?> =
- MutableStateFlow(theGatekeeperInfo)
+ private var _gatekeeperInfo: MutableStateFlow<GatekeeperInfo?> = MutableStateFlow(null)
/** The gatekeeper info for fingerprint enrollment. */
val gatekeeperInfo: Flow<GatekeeperInfo?> = _gatekeeperInfo.asStateFlow()
@@ -61,26 +62,27 @@
val hasValidGatekeeperInfo: Flow<Boolean> =
gatekeeperInfo.map { it is GatekeeperInfo.GatekeeperPasswordInfo }
- private var _credentialConfirmed: MutableStateFlow<Boolean?> = MutableStateFlow(null)
- val credentialConfirmed: Flow<Boolean?> = _credentialConfirmed.asStateFlow()
-
private var countDownTimer: CountDownTimer? = null
/** Timeout of 15 minutes for a generated challenge */
private val TIMEOUT: Long = 15 * 60 * 1000
/** Called after a confirm device credential attempt has been made. */
- fun onConfirmDevice(wasSuccessful: Boolean, theGatekeeperPasswordHandle: Long?) {
+ fun onConfirmDevice(
+ wasSuccessful: Boolean,
+ theGatekeeperPasswordHandle: Long?,
+ shouldStartTimer: Boolean = true,
+ ) {
if (!wasSuccessful) {
Log.d(TAG, "confirmDevice failed")
_gatekeeperInfo.update { GatekeeperInfo.Invalid }
- _credentialConfirmed.update { false }
} else {
viewModelScope.launch {
val res = fingerprintManagerInteractor.generateChallenge(theGatekeeperPasswordHandle!!)
_gatekeeperInfo.update { GatekeeperInfo.GatekeeperPasswordInfo(res.second, res.first) }
- _credentialConfirmed.update { true }
- startTimeout()
+ if (shouldStartTimer) {
+ startTimeout()
+ }
}
}
}
@@ -97,19 +99,9 @@
}
}
- class FingerprintGatekeeperViewModelFactory(
- private val gatekeeperInfo: GatekeeperInfo?,
- private val fingerprintManagerInteractor: FingerprintManagerInteractor,
- ) : ViewModelProvider.Factory {
-
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintGatekeeperViewModel(gatekeeperInfo, fingerprintManagerInteractor) as T
- }
- }
-
companion object {
private const val TAG = "FingerprintGatekeeperViewModel"
+
/**
* A function that checks if the challenge and token are valid, in which case a
* [GatekeeperInfo.GatekeeperPasswordInfo] is provided, else [GatekeeperInfo.Invalid]
@@ -121,5 +113,14 @@
}
return GatekeeperInfo.GatekeeperPasswordInfo(token, challenge)
}
+
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment
+ FingerprintGatekeeperViewModel(biometricEnvironment!!.fingerprintManagerInteractor)
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintNavigationViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintNavigationViewModel.kt
index 131f5bb..caf7d2a 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintNavigationViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintNavigationViewModel.kt
@@ -20,7 +20,11 @@
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
+import com.android.settings.SettingsApplication
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
+import com.android.settings.biometrics.fingerprint2.lib.model.FingerprintFlow
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.Finish
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.TransitionStep
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.UiStep
@@ -28,39 +32,40 @@
import kotlin.reflect.KClass
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
+import kotlinx.coroutines.flow.SharingStarted
+import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.flow.asStateFlow
+import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.combineTransform
import kotlinx.coroutines.flow.filterNotNull
+import kotlinx.coroutines.flow.stateIn
import kotlinx.coroutines.flow.update
-import kotlinx.coroutines.launch
/**
* This class is essentially a wrapper around [FingerprintNavigationStep] that will be used by
* fragments/viewmodels that want to consume these events. It should provide no additional
* functionality beyond what is available in [FingerprintNavigationStep].
*/
-class FingerprintNavigationViewModel(
- step: UiStep,
- hasConfirmedDeviceCredential: Boolean,
- flowViewModel: FingerprintFlowViewModel,
- fingerprintManagerInteractor: FingerprintManagerInteractor,
-) : ViewModel() {
+class FingerprintNavigationViewModel(fingerprintManagerInteractor: FingerprintManagerInteractor) :
+ ViewModel() {
- private var _navStateInternal: MutableStateFlow<NavigationState?> = MutableStateFlow(null)
-
- init {
- viewModelScope.launch {
- flowViewModel.fingerprintFlow
- .combineTransform(fingerprintManagerInteractor.sensorPropertiesInternal) { flow, props ->
- if (props?.sensorId != -1) {
- emit(NavigationState(flow, hasConfirmedDeviceCredential, props))
- }
+ private val _flowInternal: MutableStateFlow<FingerprintFlow?> = MutableStateFlow(null)
+ private val _hasConfirmedDeviceCredential: MutableStateFlow<Boolean> = MutableStateFlow(false)
+ private val _navStateInternal: StateFlow<NavigationState?> =
+ combine(
+ _flowInternal,
+ _hasConfirmedDeviceCredential,
+ fingerprintManagerInteractor.sensorPropertiesInternal,
+ ) { flow, hasConfirmed, sensorType ->
+ if (flow == null || sensorType == null) {
+ return@combine null
}
- .collect { navState -> _navStateInternal.update { navState } }
- }
- }
+ return@combine NavigationState(flow, hasConfirmed, sensorType)
+ }
+ .stateIn(viewModelScope, SharingStarted.Eagerly, null)
- private var _currentStep = MutableStateFlow<FingerprintNavigationStep?>(step)
+ private var _currentStep =
+ MutableStateFlow<FingerprintNavigationStep?>(FingerprintNavigationStep.Init)
private var _navigateTo: MutableStateFlow<UiStep?> = MutableStateFlow(null)
val navigateTo: Flow<UiStep?> = _navigateTo.asStateFlow()
@@ -85,6 +90,16 @@
/** This indicates what screen should currently be presenting to the user. */
val currentScreen: Flow<UiStep?> = _currentScreen.asStateFlow()
+ /** Updates the type of flow the navigation should begin */
+ fun updateFingerprintFlow(flow: FingerprintFlow) {
+ _flowInternal.update { flow }
+ }
+
+ /** Indicates if we have confirmed device credential */
+ fun hasConfirmedDeviceCredential(hasConfirmedDeviceCredential: Boolean) {
+ _hasConfirmedDeviceCredential.update { hasConfirmedDeviceCredential }
+ }
+
/** See [updateInternal] for more details */
fun update(action: FingerprintAction, caller: KClass<*>, debugStr: String) {
Log.d(TAG, "$caller.update($action) $debugStr")
@@ -122,26 +137,15 @@
}
}
- class FingerprintNavigationViewModelFactory(
- private val step: UiStep,
- private val hasConfirmedDeviceCredential: Boolean,
- private val flowViewModel: FingerprintFlowViewModel,
- private val fingerprintManagerInteractor: FingerprintManagerInteractor,
- ) : ViewModelProvider.Factory {
-
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintNavigationViewModel(
- step,
- hasConfirmedDeviceCredential,
- flowViewModel,
- fingerprintManagerInteractor,
- )
- as T
- }
- }
-
companion object {
private const val TAG = "FingerprintNavigationViewModel"
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer {
+ val settingsApplication =
+ this[ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY] as SettingsApplication
+ val biometricEnvironment = settingsApplication.biometricEnvironment
+ FingerprintNavigationViewModel(biometricEnvironment!!.fingerprintManagerInteractor)
+ }
+ }
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintScrollViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintScrollViewModel.kt
index bc9703d..ddef0df 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintScrollViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintScrollViewModel.kt
@@ -18,6 +18,8 @@
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
+import androidx.lifecycle.viewmodel.initializer
+import androidx.lifecycle.viewmodel.viewModelFactory
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow
@@ -36,11 +38,9 @@
_hasReadConsentScreen.update { true }
}
- class FingerprintScrollViewModelFactory : ViewModelProvider.Factory {
-
- @Suppress("UNCHECKED_CAST")
- override fun <T : ViewModel> create(modelClass: Class<T>): T {
- return FingerprintScrollViewModel() as T
+ companion object {
+ val Factory: ViewModelProvider.Factory = viewModelFactory {
+ initializer { FingerprintScrollViewModel() }
}
}
}
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/TransitionViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/TransitionViewModel.kt
index 8fb7291..d1a9326 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/TransitionViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/TransitionViewModel.kt
@@ -18,24 +18,15 @@
/** Indicates the type of transitions that can occur between fragments */
sealed class Transition {
- /**
- * Indicates the new fragment should slide in from the left side
- */
+ /** Indicates the new fragment should slide in from the left side */
data object EnterFromLeft : Transition()
- /**
- * Indicates the new fragment should slide in from the right side
- */
+ /** Indicates the new fragment should slide in from the right side */
data object EnterFromRight : Transition()
- /**
- * Indicates the old fragment should slide out to the left side
- */
+ /** Indicates the old fragment should slide out to the left side */
data object ExitToLeft : Transition()
- /**
- * Indicates the old fragment should slide out to the right side
- */
+ /** Indicates the old fragment should slide out to the right side */
data object ExitToRight : Transition()
}
-
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/settings/binder/FingerprintSettingsViewBinder.kt b/src/com/android/settings/biometrics/fingerprint2/ui/settings/binder/FingerprintSettingsViewBinder.kt
index 540e5ee..c71062f 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/settings/binder/FingerprintSettingsViewBinder.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/settings/binder/FingerprintSettingsViewBinder.kt
@@ -54,29 +54,40 @@
challenge: Long?,
challengeToken: ByteArray?,
)
+
/** Helper to launch an add fingerprint request */
fun launchAddFingerprint(userId: Int, challengeToken: ByteArray?)
+
/**
* Helper function that will try and launch confirm lock, if that fails we will prompt user to
* choose a PIN/PATTERN/PASS.
*/
fun launchConfirmOrChooseLock(userId: Int)
+
/** Used to indicate that FingerprintSettings is finished. */
fun finish()
+
/** Indicates what result should be set for the returning callee */
fun setResultExternal(resultCode: Int)
+
/** Indicates the settings UI should be shown */
fun showSettings(enrolledFingerprints: List<FingerprintData>)
+
/** Updates the add fingerprints preference */
fun updateAddFingerprintsPreference(canEnroll: Boolean, maxFingerprints: Int)
+
/** Updates the sfps fingerprints preference */
fun updateSfpsPreference(isSfpsPrefVisible: Boolean)
+
/** Indicates that a user has been locked out */
fun userLockout(authAttemptViewModel: FingerprintAuthAttemptModel.Error)
+
/** Indicates a fingerprint preference should be highlighted */
suspend fun highlightPref(fingerId: Int)
+
/** Indicates a user should be prompted to delete a fingerprint */
suspend fun askUserToDeleteDialog(fingerprintViewModel: FingerprintData): Boolean
+
/** Indicates a user should be asked to renae ma dialog */
suspend fun askUserToRenameDialog(
fingerprintViewModel: FingerprintData
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsV2Fragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsV2Fragment.kt
index 7900ed7..4c3773b 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsV2Fragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsV2Fragment.kt
@@ -45,14 +45,13 @@
import com.android.settings.biometrics.GatekeeperPasswordProvider
import com.android.settings.biometrics.fingerprint.FingerprintEnrollEnrolling
import com.android.settings.biometrics.fingerprint.FingerprintEnrollIntroductionInternal
-import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintEnrollInteractorImpl
import com.android.settings.biometrics.fingerprint2.data.repository.FingerprintSensorRepositoryImpl
+import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintEnrollInteractorImpl
import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintManagerInteractorImpl
import com.android.settings.biometrics.fingerprint2.domain.interactor.PressToAuthInteractorImpl
import com.android.settings.biometrics.fingerprint2.lib.model.FingerprintAuthAttemptModel
import com.android.settings.biometrics.fingerprint2.lib.model.FingerprintData
import com.android.settings.biometrics.fingerprint2.lib.model.Settings
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.modules.enrolling.common.util.toFingerprintEnrollOptions
import com.android.settings.biometrics.fingerprint2.ui.settings.binder.FingerprintSettingsViewBinder
import com.android.settings.biometrics.fingerprint2.ui.settings.viewmodel.FingerprintSettingsNavigationViewModel
import com.android.settings.biometrics.fingerprint2.ui.settings.viewmodel.FingerprintSettingsViewModel
@@ -227,7 +226,6 @@
val fingerprintEnrollStateRepository =
FingerprintEnrollInteractorImpl(
requireContext().applicationContext,
- intent.toFingerprintEnrollOptions(),
fingerprintManager,
Settings,
)
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsNavigationViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsNavigationViewModel.kt
index 00b91a8..8a694ae 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsNavigationViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsNavigationViewModel.kt
@@ -52,7 +52,7 @@
_nextStep.update { LaunchConfirmDeviceCredential(userId) }
} else {
viewModelScope.launch {
- if (fingerprintManagerInteractor.enrolledFingerprints.last().isEmpty()) {
+ if (fingerprintManagerInteractor.enrolledFingerprints.last()?.isEmpty() == true) {
_nextStep.update { EnrollFirstFingerprint(userId, null, challenge, token) }
} else {
showSettingsHelper()
@@ -149,7 +149,7 @@
private suspend fun launchEnrollNextStep(gateKeeperPasswordHandle: Long?) {
fingerprintManagerInteractor.enrolledFingerprints.collect {
- if (it.isEmpty()) {
+ if (it?.isEmpty() == true) {
_nextStep.update { EnrollFirstFingerprint(userId, gateKeeperPasswordHandle, null, null) }
} else {
viewModelScope.launch(backgroundDispatcher) {
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsViewModel.kt b/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsViewModel.kt
index 80bbb43..cf8c527 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsViewModel.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsViewModel.kt
@@ -74,7 +74,7 @@
/** Represents the stream of visibility of sfps preference. */
val isSfpsPrefVisible: Flow<Boolean> =
_enrolledFingerprints.filterOnlyWhenSettingsIsShown().transform {
- emit(fingerprintManagerInteractor.hasSideFps() && !it.isNullOrEmpty())
+ emit(fingerprintManagerInteractor.hasSideFps() == true && !it.isNullOrEmpty())
}
private val _isShowingDialog: MutableStateFlow<PreferenceViewModel?> = MutableStateFlow(null)
diff --git a/src/com/android/settings/bluetooth/BluetoothAutoOnPreferenceController.java b/src/com/android/settings/bluetooth/BluetoothAutoOnPreferenceController.java
index 3aca85e..e3b758d 100644
--- a/src/com/android/settings/bluetooth/BluetoothAutoOnPreferenceController.java
+++ b/src/com/android/settings/bluetooth/BluetoothAutoOnPreferenceController.java
@@ -93,7 +93,7 @@
var unused = ThreadUtils.postOnBackgroundThread(this::updateValue);
}
return isSupported ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
- } catch (Exception e) {
+ } catch (Exception | NoSuchMethodError e) {
// Server could throw TimeoutException, InterruptedException or ExecutionException
return UNSUPPORTED_ON_DEVICE;
}
diff --git a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
index 5be761e..56a3005 100644
--- a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
+++ b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
@@ -19,6 +19,7 @@
import android.content.pm.PackageManager;
import android.hardware.input.InputManager;
import android.util.FeatureFlagUtils;
+import android.util.Log;
import android.view.InputDevice;
import androidx.annotation.VisibleForTesting;
@@ -26,19 +27,29 @@
import androidx.preference.PreferenceGroup;
import androidx.preference.PreferenceScreen;
+import com.android.settings.R;
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
import com.android.settings.bluetooth.ConnectedBluetoothDeviceUpdater;
+import com.android.settings.bluetooth.Utils;
import com.android.settings.connecteddevice.dock.DockUpdater;
import com.android.settings.connecteddevice.stylus.StylusDeviceUpdater;
import com.android.settings.connecteddevice.usb.ConnectedUsbDeviceUpdater;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.flags.Flags;
import com.android.settings.overlay.DockUpdaterFeatureProvider;
import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.bluetooth.BluetoothDeviceFilter;
+import com.android.settingslib.bluetooth.BluetoothUtils;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
+import com.android.settingslib.search.SearchIndexableRaw;
+
+import java.util.List;
/**
* Controller to maintain the {@link androidx.preference.PreferenceGroup} for all
@@ -49,6 +60,7 @@
DevicePreferenceCallback {
private static final String KEY = "connected_device_list";
+ private static final String TAG = "ConnectedDeviceGroupController";
@VisibleForTesting
PreferenceGroup mPreferenceGroup;
@@ -58,11 +70,13 @@
private StylusDeviceUpdater mStylusDeviceUpdater;
private final PackageManager mPackageManager;
private final InputManager mInputManager;
+ private final LocalBluetoothManager mLocalBluetoothManager;
public ConnectedDeviceGroupController(Context context) {
super(context, KEY);
mPackageManager = context.getPackageManager();
mInputManager = context.getSystemService(InputManager.class);
+ mLocalBluetoothManager = Utils.getLocalBluetoothManager(context);
}
@Override
@@ -221,4 +235,31 @@
}
return false;
}
+
+ @Override
+ public void updateDynamicRawDataToIndex(List<SearchIndexableRaw> rawData) {
+ if (!Flags.enableBondedBluetoothDeviceSearchable()) {
+ return;
+ }
+ if (mLocalBluetoothManager == null) {
+ Log.d(TAG, "Bluetooth is not supported");
+ return;
+ }
+ for (CachedBluetoothDevice cachedDevice :
+ mLocalBluetoothManager.getCachedDeviceManager().getCachedDevicesCopy()) {
+ if (!BluetoothDeviceFilter.BONDED_DEVICE_FILTER.matches(cachedDevice.getDevice())) {
+ continue;
+ }
+ if (BluetoothUtils.isExclusivelyManagedBluetoothDevice(mContext,
+ cachedDevice.getDevice())) {
+ continue;
+ }
+ SearchIndexableRaw data = new SearchIndexableRaw(mContext);
+ // Include the identity address as well to ensure the key is unique.
+ data.key = cachedDevice.getName() + cachedDevice.getIdentityAddress();
+ data.title = cachedDevice.getName();
+ data.summaryOn = mContext.getString(R.string.connected_devices_dashboard_title);
+ rawData.add(data);
+ }
+ }
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceController.java
index e848f88..6ba7183 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceController.java
@@ -18,6 +18,7 @@
import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.SETTINGS_KEY_FALLBACK_DEVICE_GROUP_ID;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothCsipSetCoordinator;
import android.bluetooth.BluetoothDevice;
@@ -36,19 +37,22 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
+import androidx.fragment.app.Fragment;
import androidx.lifecycle.LifecycleOwner;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
-import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.BluetoothCallback;
import com.android.settingslib.bluetooth.BluetoothEventManager;
import com.android.settingslib.bluetooth.BluetoothUtils;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.ThreadUtils;
import com.google.common.collect.ImmutableList;
@@ -67,18 +71,28 @@
private static final String TAG = "CallsAndAlarmsPreferenceController";
private static final String PREF_KEY = "calls_and_alarms";
+ @VisibleForTesting
+ enum ChangeCallAudioType {
+ UNKNOWN,
+ CONNECTED_EARLIER,
+ CONNECTED_LATER
+ }
+
@Nullable private final LocalBluetoothManager mBtManager;
- @Nullable private final LocalBluetoothProfileManager mProfileManager;
@Nullable private final BluetoothEventManager mEventManager;
@Nullable private final ContentResolver mContentResolver;
@Nullable private final LocalBluetoothLeBroadcastAssistant mAssistant;
+ @Nullable private final CachedBluetoothDeviceManager mCacheManager;
private final Executor mExecutor;
private final ContentObserver mSettingsObserver;
- @Nullable private DashboardFragment mFragment;
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
+ @Nullable private Fragment mFragment;
Map<Integer, List<CachedBluetoothDevice>> mGroupedConnectedDevices = new HashMap<>();
private List<AudioSharingDeviceItem> mDeviceItemsInSharingSession = new ArrayList<>();
- private AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
- private BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
+ private final AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
+
+ @VisibleForTesting
+ final BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
new BluetoothLeBroadcastAssistant.Callback() {
@Override
public void onSearchStarted(int reason) {}
@@ -136,15 +150,18 @@
public AudioSharingCallAudioPreferenceController(Context context) {
super(context, PREF_KEY);
mBtManager = Utils.getLocalBtManager(mContext);
- mProfileManager = mBtManager == null ? null : mBtManager.getProfileManager();
+ LocalBluetoothProfileManager profileManager =
+ mBtManager == null ? null : mBtManager.getProfileManager();
mEventManager = mBtManager == null ? null : mBtManager.getEventManager();
mAssistant =
- mProfileManager == null
+ profileManager == null
? null
- : mProfileManager.getLeAudioBroadcastAssistantProfile();
+ : profileManager.getLeAudioBroadcastAssistantProfile();
+ mCacheManager = mBtManager == null ? null : mBtManager.getCachedDeviceManager();
mExecutor = Executors.newSingleThreadExecutor();
mContentResolver = context.getContentResolver();
mSettingsObserver = new FallbackDeviceGroupIdSettingsObserver();
+ mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
private class FallbackDeviceGroupIdSettingsObserver extends ContentObserver {
@@ -155,7 +172,9 @@
@Override
public void onChange(boolean selfChange) {
Log.d(TAG, "onChange, fallback device group id has been changed");
- var unused = ThreadUtils.postOnBackgroundThread(() -> updateSummary());
+ var unused =
+ ThreadUtils.postOnBackgroundThread(
+ AudioSharingCallAudioPreferenceController.this::updateSummary);
}
}
@@ -177,15 +196,23 @@
return true;
}
updateDeviceItemsInSharingSession();
- if (mDeviceItemsInSharingSession.size() >= 1) {
+ if (!mDeviceItemsInSharingSession.isEmpty()) {
AudioSharingCallAudioDialogFragment.show(
mFragment,
mDeviceItemsInSharingSession,
(AudioSharingDeviceItem item) -> {
+ int currentGroupId =
+ AudioSharingUtils.getFallbackActiveGroupId(
+ mContext);
+ if (item.getGroupId() == currentGroupId) {
+ Log.d(
+ TAG,
+ "Skip set fallback active device: unchanged");
+ return;
+ }
List<CachedBluetoothDevice> devices =
mGroupedConnectedDevices.getOrDefault(
item.getGroupId(), ImmutableList.of());
- @Nullable
CachedBluetoothDevice lead =
AudioSharingUtils.getLeadDevice(devices);
if (lead != null) {
@@ -195,11 +222,12 @@
+ lead.getDevice()
.getAnonymizedAddress());
lead.setActive();
+ logCallAudioDeviceChange(currentGroupId, lead);
} else {
- Log.w(
+ Log.d(
TAG,
- "Fail to set fallback active device: no lead"
- + " device");
+ "Fail to set fallback active device: no"
+ + " lead device");
}
});
}
@@ -237,9 +265,9 @@
/**
* Initialize the controller.
*
- * @param fragment The fragment to host the {@link CallsAndAlarmsDialogFragment} dialog.
+ * @param fragment The fragment to host the {@link AudioSharingCallAudioDialogFragment} dialog.
*/
- public void init(DashboardFragment fragment) {
+ public void init(Fragment fragment) {
this.mFragment = fragment;
}
@@ -250,7 +278,7 @@
/** Test only: set callback registration status in tests. */
@VisibleForTesting
- public void setCallbacksRegistered(boolean registered) {
+ void setCallbacksRegistered(boolean registered) {
mCallbacksRegistered.set(registered);
}
@@ -325,7 +353,7 @@
if (item.getGroupId() == fallbackActiveGroupId) {
Log.d(
TAG,
- "updatePreference: set summary tp fallback group "
+ "updatePreference: set summary to fallback group "
+ fallbackActiveGroupId);
AudioSharingUtils.postOnMainThread(
mContext,
@@ -357,4 +385,48 @@
AudioSharingUtils.buildOrderedConnectedLeadAudioSharingDeviceItem(
mBtManager, mGroupedConnectedDevices, /* filterByInSharing= */ true);
}
+
+ @VisibleForTesting
+ void logCallAudioDeviceChange(int currentGroupId, CachedBluetoothDevice target) {
+ var unused =
+ ThreadUtils.postOnBackgroundThread(
+ () -> {
+ ChangeCallAudioType type = ChangeCallAudioType.UNKNOWN;
+ if (mCacheManager != null) {
+ int targetDeviceGroupId = AudioSharingUtils.getGroupId(target);
+ List<BluetoothDevice> mostRecentDevices =
+ BluetoothAdapter.getDefaultAdapter()
+ .getMostRecentlyConnectedDevices();
+ int targetDeviceIdx = -1;
+ int currentDeviceIdx = -1;
+ for (int idx = 0; idx < mostRecentDevices.size(); idx++) {
+ BluetoothDevice device = mostRecentDevices.get(idx);
+ CachedBluetoothDevice cachedDevice =
+ mCacheManager.findDevice(device);
+ int groupId =
+ cachedDevice != null
+ ? AudioSharingUtils.getGroupId(cachedDevice)
+ : BluetoothCsipSetCoordinator.GROUP_ID_INVALID;
+ if (groupId != BluetoothCsipSetCoordinator.GROUP_ID_INVALID) {
+ if (groupId == targetDeviceGroupId) {
+ targetDeviceIdx = idx;
+ } else if (groupId == currentGroupId) {
+ currentDeviceIdx = idx;
+ }
+ }
+ if (targetDeviceIdx != -1 && currentDeviceIdx != -1) break;
+ }
+ if (targetDeviceIdx != -1 && currentDeviceIdx != -1) {
+ type =
+ targetDeviceIdx < currentDeviceIdx
+ ? ChangeCallAudioType.CONNECTED_LATER
+ : ChangeCallAudioType.CONNECTED_EARLIER;
+ }
+ }
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_CHANGE_CALL_AUDIO,
+ type.ordinal());
+ });
+ }
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java
index d2f23ed..42a9038 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java
@@ -57,9 +57,10 @@
@Nullable private TwoStatePreference mPreference;
private final Executor mExecutor;
private final MetricsFeatureProvider mMetricsFeatureProvider;
- private AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
+ private final AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
- private final BluetoothLeBroadcast.Callback mBroadcastCallback =
+ @VisibleForTesting
+ final BluetoothLeBroadcast.Callback mBroadcastCallback =
new BluetoothLeBroadcast.Callback() {
@Override
public void onBroadcastStarted(int reason, int broadcastId) {
@@ -218,7 +219,7 @@
/** Test only: set callbacks registration state for test setup. */
@VisibleForTesting
- public void setCallbacksRegistered(boolean registered) {
+ void setCallbacksRegistered(boolean registered) {
mCallbacksRegistered.set(registered);
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragment.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragment.java
index c3248c7..ad41e8a 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragment.java
@@ -20,6 +20,8 @@
import android.content.Context;
import android.os.Bundle;
+import androidx.annotation.VisibleForTesting;
+
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsCategoryController;
@@ -31,7 +33,6 @@
private static final String TAG = "AudioSharingDashboardFrag";
SettingsMainSwitchBar mMainSwitchBar;
- private AudioSharingSwitchBarController mSwitchBarController;
private AudioSharingDeviceVolumeGroupController mAudioSharingDeviceVolumeGroupController;
private AudioSharingCallAudioPreferenceController mAudioSharingCallAudioPreferenceController;
private AudioSharingPlaySoundPreferenceController mAudioSharingPlaySoundPreferenceController;
@@ -83,9 +84,10 @@
final SettingsActivity activity = (SettingsActivity) getActivity();
mMainSwitchBar = activity.getSwitchBar();
mMainSwitchBar.setTitle(getText(R.string.audio_sharing_switch_title));
- mSwitchBarController = new AudioSharingSwitchBarController(activity, mMainSwitchBar, this);
- mSwitchBarController.init(this);
- getSettingsLifecycle().addObserver(mSwitchBarController);
+ AudioSharingSwitchBarController switchBarController =
+ new AudioSharingSwitchBarController(activity, mMainSwitchBar, this);
+ switchBarController.init(this);
+ getSettingsLifecycle().addObserver(switchBarController);
mMainSwitchBar.show();
}
@@ -99,6 +101,19 @@
onProfilesConnectedForAttachedPreferences();
}
+ /** Test only: set mock controllers for the {@link AudioSharingDashboardFragment} */
+ @VisibleForTesting
+ void setControllers(
+ AudioSharingDeviceVolumeGroupController volumeGroupController,
+ AudioSharingCallAudioPreferenceController callAudioController,
+ AudioSharingPlaySoundPreferenceController playSoundController,
+ AudioStreamsCategoryController streamsCategoryController) {
+ mAudioSharingDeviceVolumeGroupController = volumeGroupController;
+ mAudioSharingCallAudioPreferenceController = callAudioController;
+ mAudioSharingPlaySoundPreferenceController = playSoundController;
+ mAudioStreamsCategoryController = streamsCategoryController;
+ }
+
private void updateVisibilityForAttachedPreferences() {
mAudioSharingDeviceVolumeGroupController.updateVisibility();
mAudioSharingCallAudioPreferenceController.updateVisibility();
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java
index 51a8e11..cc883fe 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java
@@ -18,6 +18,7 @@
import static com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast.EXTRA_BLUETOOTH_DEVICE;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcastAssistant;
@@ -44,6 +45,7 @@
import com.android.settings.connecteddevice.DevicePreferenceCallback;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.A2dpProfile;
import com.android.settingslib.bluetooth.BluetoothCallback;
import com.android.settingslib.bluetooth.BluetoothEventManager;
@@ -56,6 +58,7 @@
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import java.util.Locale;
import java.util.concurrent.Executor;
@@ -80,6 +83,7 @@
@Nullable private final LocalBluetoothProfileManager mProfileManager;
@Nullable private final LocalBluetoothLeBroadcastAssistant mAssistant;
private final Executor mExecutor;
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
@Nullable private PreferenceGroup mPreferenceGroup;
@Nullable private Preference mAudioSharingSettingsPreference;
@Nullable private BluetoothDeviceUpdater mBluetoothDeviceUpdater;
@@ -87,7 +91,8 @@
@Nullable private AudioSharingDialogHandler mDialogHandler;
private AtomicBoolean mIntentHandled = new AtomicBoolean(false);
- private BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
+ @VisibleForTesting
+ BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
new BluetoothLeBroadcastAssistant.Callback() {
@Override
public void onSearchStarted(int reason) {}
@@ -113,6 +118,10 @@
@NonNull BluetoothDevice sink,
@NonNull BluetoothLeBroadcastMetadata source,
int reason) {
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_JOIN_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
AudioSharingUtils.toastMessage(
mContext,
String.format(
@@ -142,6 +151,10 @@
@Override
public void onSourceRemoveFailed(
@NonNull BluetoothDevice sink, int sourceId, int reason) {
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_LEAVE_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
AudioSharingUtils.toastMessage(
mContext,
String.format(
@@ -182,6 +195,7 @@
? null
: mProfileManager.getLeAudioBroadcastAssistantProfile();
mExecutor = Executors.newSingleThreadExecutor();
+ mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -368,23 +382,23 @@
}
@VisibleForTesting
- public void setBluetoothDeviceUpdater(@Nullable BluetoothDeviceUpdater bluetoothDeviceUpdater) {
+ void setBluetoothDeviceUpdater(@Nullable BluetoothDeviceUpdater bluetoothDeviceUpdater) {
mBluetoothDeviceUpdater = bluetoothDeviceUpdater;
}
@VisibleForTesting
- public void setDialogHandler(@Nullable AudioSharingDialogHandler dialogHandler) {
+ void setDialogHandler(@Nullable AudioSharingDialogHandler dialogHandler) {
mDialogHandler = dialogHandler;
}
@VisibleForTesting
- public void setHostFragment(@Nullable DashboardFragment fragment) {
+ void setHostFragment(@Nullable DashboardFragment fragment) {
mFragment = fragment;
}
/** Test only: set intent handle state for test. */
@VisibleForTesting
- public void setIntentHandled(boolean handled) {
+ void setIntentHandled(boolean handled) {
mIntentHandled.set(handled);
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupController.java
index 4a067ac..ee2ba7b 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupController.java
@@ -79,13 +79,10 @@
private Map<Integer, Integer> mValueMap = new HashMap<Integer, Integer>();
private AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
- private BluetoothVolumeControl.Callback mVolumeControlCallback =
+ @VisibleForTesting
+ BluetoothVolumeControl.Callback mVolumeControlCallback =
new BluetoothVolumeControl.Callback() {
@Override
- public void onVolumeOffsetChanged(
- @NonNull BluetoothDevice device, int volumeOffset) {}
-
- @Override
public void onDeviceVolumeChanged(
@NonNull BluetoothDevice device,
@IntRange(from = -255, to = 255) int volume) {
@@ -117,7 +114,8 @@
}
};
- private BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
+ @VisibleForTesting
+ BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
new BluetoothLeBroadcastAssistant.Callback() {
@Override
public void onSearchStarted(int reason) {}
@@ -323,26 +321,26 @@
}
@VisibleForTesting
- public void setDeviceUpdater(@Nullable AudioSharingDeviceVolumeControlUpdater updater) {
+ void setDeviceUpdater(@Nullable AudioSharingDeviceVolumeControlUpdater updater) {
mBluetoothDeviceUpdater = updater;
}
/** Test only: set callback registration status in tests. */
@VisibleForTesting
- public void setCallbacksRegistered(boolean registered) {
+ void setCallbacksRegistered(boolean registered) {
mCallbacksRegistered.set(registered);
}
/** Test only: set volume map in tests. */
@VisibleForTesting
- public void setVolumeMap(@Nullable Map<Integer, Integer> map) {
+ void setVolumeMap(@Nullable Map<Integer, Integer> map) {
mValueMap.clear();
mValueMap.putAll(map);
}
/** Test only: set value for private preferenceGroup in tests. */
@VisibleForTesting
- public void setPreferenceGroup(@Nullable PreferenceGroup group) {
+ void setPreferenceGroup(@Nullable PreferenceGroup group) {
mPreferenceGroup = group;
mPreference = group;
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFactory.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFactory.java
index 165beae..2ee286d 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFactory.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFactory.java
@@ -345,4 +345,6 @@
return dialog;
}
}
+
+ private AudioSharingDialogFactory() {}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragment.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragment.java
index 6f7de8c..e787be3 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragment.java
@@ -20,9 +20,11 @@
import android.app.settings.SettingsEnums;
import android.os.Bundle;
import android.util.Log;
+import android.util.Pair;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
@@ -48,13 +50,17 @@
* @param item The device item clicked.
*/
void onItemClick(AudioSharingDeviceItem item);
+
+ /** Called when users click the cancel button in the dialog. */
+ void onCancelClick();
}
@Nullable private static DialogEventListener sListener;
+ private static Pair<Integer, Object>[] sEventData = new Pair[0];
@Override
public int getMetricsCategory() {
- return SettingsEnums.DIALOG_START_AUDIO_SHARING;
+ return SettingsEnums.DIALOG_AUDIO_SHARING_ADD_DEVICE;
}
/**
@@ -63,14 +69,17 @@
* @param host The Fragment this dialog will be hosted.
* @param deviceItems The connected device items eligible for audio sharing.
* @param listener The callback to handle the user action on this dialog.
+ * @param eventData The eventData to log with for dialog onClick events.
*/
public static void show(
@NonNull Fragment host,
@NonNull List<AudioSharingDeviceItem> deviceItems,
- @NonNull DialogEventListener listener) {
+ @NonNull DialogEventListener listener,
+ @NonNull Pair<Integer, Object>[] eventData) {
if (!AudioSharingUtils.isFeatureEnabled()) return;
final FragmentManager manager = host.getChildFragmentManager();
sListener = listener;
+ sEventData = eventData;
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
if (dialog != null) {
Log.d(TAG, "Dialog is showing, return.");
@@ -84,7 +93,20 @@
dialogFrag.show(manager, TAG);
}
+ /** Return the tag of {@link AudioSharingDialogFragment} dialog. */
+ public static @NonNull String tag() {
+ return TAG;
+ }
+
+ /** Test only: get the event data passed to the dialog. */
+ @VisibleForTesting
+ @NonNull
+ Pair<Integer, Object>[] getEventData() {
+ return sEventData;
+ }
+
@Override
+ @NonNull
public Dialog onCreateDialog(Bundle savedInstanceState) {
Bundle arguments = requireArguments();
List<AudioSharingDeviceItem> deviceItems =
@@ -93,12 +115,17 @@
AudioSharingDialogFactory.newBuilder(getActivity())
.setTitleIcon(com.android.settingslib.R.drawable.ic_bt_le_audio_sharing)
.setIsCustomBodyEnabled(true);
+ if (deviceItems == null) {
+ Log.d(TAG, "Create dialog error: null deviceItems");
+ return builder.build();
+ }
if (deviceItems.isEmpty()) {
builder.setTitle(R.string.audio_sharing_share_dialog_title)
.setCustomImage(R.drawable.audio_sharing_guidance)
.setCustomMessage(R.string.audio_sharing_dialog_connect_device_content)
.setNegativeButton(
- R.string.audio_sharing_close_button_label, (dig, which) -> dismiss());
+ R.string.audio_sharing_close_button_label,
+ (dig, which) -> onCancelClick());
} else if (deviceItems.size() == 1) {
AudioSharingDeviceItem deviceItem = Iterables.getOnlyElement(deviceItems);
builder.setTitle(
@@ -111,11 +138,16 @@
v -> {
if (sListener != null) {
sListener.onItemClick(deviceItem);
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED,
+ sEventData);
}
dismiss();
})
.setCustomNegativeButton(
- R.string.audio_sharing_no_thanks_button_label, v -> dismiss());
+ R.string.audio_sharing_no_thanks_button_label, v -> onCancelClick());
} else {
builder.setTitle(R.string.audio_sharing_share_with_more_dialog_title)
.setCustomMessage(R.string.audio_sharing_dialog_share_more_content)
@@ -130,8 +162,20 @@
dismiss();
},
AudioSharingDeviceAdapter.ActionType.SHARE))
- .setCustomNegativeButton(com.android.settings.R.string.cancel, v -> dismiss());
+ .setCustomNegativeButton(
+ com.android.settings.R.string.cancel, v -> onCancelClick());
}
return builder.build();
}
+
+ private void onCancelClick() {
+ if (sListener != null) {
+ sListener.onCancelClick();
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED,
+ sEventData);
+ }
+ dismiss();
+ }
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandler.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandler.java
index c329e82..15e3de9 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandler.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandler.java
@@ -24,24 +24,32 @@
import android.bluetooth.BluetoothLeBroadcastReceiveState;
import android.content.Context;
import android.util.Log;
+import android.util.Pair;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import androidx.fragment.app.DialogFragment;
import androidx.fragment.app.Fragment;
import com.android.settings.bluetooth.Utils;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.BluetoothUtils;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+import com.android.settingslib.utils.ThreadUtils;
+
+import com.google.common.collect.ImmutableList;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.concurrent.Executor;
public class AudioSharingDialogHandler {
@@ -51,9 +59,13 @@
@Nullable private final LocalBluetoothManager mLocalBtManager;
@Nullable private final LocalBluetoothLeBroadcast mBroadcast;
@Nullable private final LocalBluetoothLeBroadcastAssistant mAssistant;
- private List<BluetoothDevice> mTargetSinks = new ArrayList<>();
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
+ // The target sinks to join broadcast onPlaybackStarted
+ @Nullable private List<BluetoothDevice> mTargetSinks;
+ private boolean mIsStoppingBroadcast = false;
- private final BluetoothLeBroadcast.Callback mBroadcastCallback =
+ @VisibleForTesting
+ final BluetoothLeBroadcast.Callback mBroadcastCallback =
new BluetoothLeBroadcast.Callback() {
@Override
public void onBroadcastStarted(int reason, int broadcastId) {
@@ -68,8 +80,15 @@
@Override
public void onBroadcastStartFailed(int reason) {
Log.d(TAG, "onBroadcastStartFailed(), reason = " + reason);
- AudioSharingUtils.toastMessage(
- mContext, "Fail to start broadcast, reason " + reason);
+ if (mTargetSinks != null) {
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_START_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
+ AudioSharingUtils.toastMessage(
+ mContext, "Fail to start broadcast, reason " + reason);
+ mTargetSinks = null;
+ }
}
@Override
@@ -91,13 +110,21 @@
+ reason
+ ", broadcastId = "
+ broadcastId);
+ mIsStoppingBroadcast = false;
}
@Override
public void onBroadcastStopFailed(int reason) {
Log.d(TAG, "onBroadcastStopFailed(), reason = " + reason);
- AudioSharingUtils.toastMessage(
- mContext, "Fail to stop broadcast, reason " + reason);
+ if (mIsStoppingBroadcast) {
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_STOP_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
+ AudioSharingUtils.toastMessage(
+ mContext, "Fail to stop broadcast, reason " + reason);
+ mIsStoppingBroadcast = false;
+ }
}
@Override
@@ -114,19 +141,17 @@
+ reason
+ ", broadcastId = "
+ broadcastId);
- if (!mTargetSinks.isEmpty()) {
+ if (mTargetSinks != null) {
AudioSharingUtils.addSourceToTargetSinks(mTargetSinks, mLocalBtManager);
new SubSettingLauncher(mContext)
.setDestination(AudioSharingDashboardFragment.class.getName())
.setSourceMetricsCategory(
- (mHostFragment != null
- && mHostFragment
- instanceof DashboardFragment)
+ (mHostFragment instanceof DashboardFragment)
? ((DashboardFragment) mHostFragment)
.getMetricsCategory()
: SettingsEnums.PAGE_UNKNOWN)
.launch();
- mTargetSinks = new ArrayList<>();
+ mTargetSinks = null;
}
}
@@ -146,6 +171,7 @@
mLocalBtManager != null
? mLocalBtManager.getProfileManager().getLeAudioBroadcastAssistantProfile()
: null;
+ mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
/** Register callbacks for dialog handler */
@@ -191,6 +217,19 @@
List<AudioSharingDeviceItem> deviceItemsInSharingSession =
AudioSharingUtils.buildOrderedConnectedLeadAudioSharingDeviceItem(
mLocalBtManager, groupedDevices, /* filterByInSharing= */ true);
+ AudioSharingStopDialogFragment.DialogEventListener listener =
+ () -> {
+ cachedDevice.setActive();
+ mIsStoppingBroadcast = true;
+ AudioSharingUtils.stopBroadcasting(mLocalBtManager);
+ };
+ Pair<Integer, Object>[] eventData =
+ AudioSharingUtils.buildAudioSharingDialogEventData(
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY,
+ SettingsEnums.DIALOG_STOP_AUDIO_SHARING,
+ userTriggered,
+ deviceItemsInSharingSession.size(),
+ /* candidateDeviceCount= */ 0);
postOnMainThread(
() -> {
closeOpeningDialogsOtherThan(AudioSharingStopDialogFragment.tag());
@@ -198,10 +237,8 @@
mHostFragment,
deviceItemsInSharingSession,
cachedDevice,
- () -> {
- cachedDevice.setActive();
- AudioSharingUtils.stopBroadcasting(mLocalBtManager);
- });
+ listener,
+ eventData);
});
} else {
if (userTriggered) {
@@ -252,6 +289,20 @@
// Show audio sharing switch dialog when the third eligible (LE audio) remote device
// connected during a sharing session.
if (deviceItemsInSharingSession.size() >= 2) {
+ AudioSharingDisconnectDialogFragment.DialogEventListener listener =
+ (AudioSharingDeviceItem item) -> {
+ // Remove all sources from the device user clicked
+ removeSourceForGroup(item.getGroupId(), groupedDevices);
+ // Add current broadcast to the latest connected device
+ addSourceForGroup(groupId, groupedDevices);
+ };
+ Pair<Integer, Object>[] eventData =
+ AudioSharingUtils.buildAudioSharingDialogEventData(
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY,
+ SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE,
+ userTriggered,
+ deviceItemsInSharingSession.size(),
+ /* candidateDeviceCount= */ 1);
postOnMainThread(
() -> {
closeOpeningDialogsOtherThan(
@@ -260,16 +311,29 @@
mHostFragment,
deviceItemsInSharingSession,
cachedDevice,
- (AudioSharingDeviceItem item) -> {
- // Remove all sources from the device user clicked
- removeSourceForGroup(item.getGroupId(), groupedDevices);
- // Add current broadcast to the latest connected device
- addSourceForGroup(groupId, groupedDevices);
- });
+ listener,
+ eventData);
});
} else {
// Show audio sharing join dialog when the first or second eligible (LE audio)
// remote device connected during a sharing session.
+ AudioSharingJoinDialogFragment.DialogEventListener listener =
+ new AudioSharingJoinDialogFragment.DialogEventListener() {
+ @Override
+ public void onShareClick() {
+ addSourceForGroup(groupId, groupedDevices);
+ }
+
+ @Override
+ public void onCancelClick() {}
+ };
+ Pair<Integer, Object>[] eventData =
+ AudioSharingUtils.buildAudioSharingDialogEventData(
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY,
+ SettingsEnums.DIALOG_AUDIO_SHARING_ADD_DEVICE,
+ userTriggered,
+ deviceItemsInSharingSession.size(),
+ /* candidateDeviceCount= */ 1);
postOnMainThread(
() -> {
closeOpeningDialogsOtherThan(AudioSharingJoinDialogFragment.tag());
@@ -277,15 +341,8 @@
mHostFragment,
deviceItemsInSharingSession,
cachedDevice,
- new AudioSharingJoinDialogFragment.DialogEventListener() {
- @Override
- public void onShareClick() {
- addSourceForGroup(groupId, groupedDevices);
- }
-
- @Override
- public void onCancelClick() {}
- });
+ listener,
+ eventData);
});
}
} else {
@@ -302,39 +359,43 @@
// Show audio sharing join dialog when the second eligible (LE audio) remote
// device connect and no sharing session.
if (deviceItems.size() == 1) {
+ AudioSharingJoinDialogFragment.DialogEventListener listener =
+ new AudioSharingJoinDialogFragment.DialogEventListener() {
+ @Override
+ public void onShareClick() {
+ mTargetSinks = new ArrayList<>();
+ for (List<CachedBluetoothDevice> devices :
+ groupedDevices.values()) {
+ for (CachedBluetoothDevice device : devices) {
+ mTargetSinks.add(device.getDevice());
+ }
+ }
+ Log.d(TAG, "Start broadcast with sinks = " + mTargetSinks.size());
+ if (mBroadcast != null) {
+ mBroadcast.startPrivateBroadcast();
+ }
+ }
+
+ @Override
+ public void onCancelClick() {
+ if (userTriggered) {
+ cachedDevice.setActive();
+ }
+ }
+ };
+
+ Pair<Integer, Object>[] eventData =
+ AudioSharingUtils.buildAudioSharingDialogEventData(
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY,
+ SettingsEnums.DIALOG_START_AUDIO_SHARING,
+ userTriggered,
+ /* deviceCountInSharing= */ 0,
+ /* candidateDeviceCount= */ 2);
postOnMainThread(
() -> {
closeOpeningDialogsOtherThan(AudioSharingJoinDialogFragment.tag());
AudioSharingJoinDialogFragment.show(
- mHostFragment,
- deviceItems,
- cachedDevice,
- new AudioSharingJoinDialogFragment.DialogEventListener() {
- @Override
- public void onShareClick() {
- mTargetSinks = new ArrayList<>();
- for (List<CachedBluetoothDevice> devices :
- groupedDevices.values()) {
- for (CachedBluetoothDevice device : devices) {
- mTargetSinks.add(device.getDevice());
- }
- }
- Log.d(
- TAG,
- "Start broadcast with sinks: "
- + mTargetSinks.size());
- if (mBroadcast != null) {
- mBroadcast.startPrivateBroadcast();
- }
- }
-
- @Override
- public void onCancelClick() {
- if (userTriggered) {
- cachedDevice.setActive();
- }
- }
- });
+ mHostFragment, deviceItems, cachedDevice, listener, eventData);
});
} else if (userTriggered) {
cachedDevice.setActive();
@@ -346,9 +407,12 @@
if (mHostFragment == null) return;
List<Fragment> fragments = mHostFragment.getChildFragmentManager().getFragments();
for (Fragment fragment : fragments) {
- if (fragment instanceof DialogFragment && !fragment.getTag().equals(tag)) {
+ if (fragment instanceof DialogFragment
+ && fragment.getTag() != null
+ && !fragment.getTag().equals(tag)) {
Log.d(TAG, "Remove staled opening dialog " + fragment.getTag());
((DialogFragment) fragment).dismiss();
+ logDialogDismissEvent(fragment);
}
}
}
@@ -365,6 +429,7 @@
&& AudioSharingUtils.getGroupId(device) == groupId) {
Log.d(TAG, "Remove staled opening dialog for group " + groupId);
((DialogFragment) fragment).dismiss();
+ logDialogDismissEvent(fragment);
}
}
}
@@ -382,6 +447,7 @@
"Remove staled opening dialog for device "
+ cachedDevice.getDevice().getAnonymizedAddress());
((DialogFragment) fragment).dismiss();
+ logDialogDismissEvent(fragment);
}
}
}
@@ -409,9 +475,9 @@
Log.d(TAG, "Fail to remove source for group " + groupId);
return;
}
- groupedDevices.get(groupId).stream()
+ groupedDevices.getOrDefault(groupId, ImmutableList.of()).stream()
.map(CachedBluetoothDevice::getDevice)
- .filter(device -> device != null)
+ .filter(Objects::nonNull)
.forEach(
device -> {
for (BluetoothLeBroadcastReceiveState source :
@@ -431,9 +497,9 @@
Log.d(TAG, "Fail to add source due to invalid group id, group = " + groupId);
return;
}
- groupedDevices.get(groupId).stream()
+ groupedDevices.getOrDefault(groupId, ImmutableList.of()).stream()
.map(CachedBluetoothDevice::getDevice)
- .filter(device -> device != null)
+ .filter(Objects::nonNull)
.forEach(
device ->
mAssistant.addSource(
@@ -449,4 +515,29 @@
private boolean isBroadcasting() {
return mBroadcast != null && mBroadcast.isEnabled(null);
}
+
+ private void logDialogDismissEvent(Fragment fragment) {
+ var unused =
+ ThreadUtils.postOnBackgroundThread(
+ () -> {
+ int pageId = SettingsEnums.PAGE_UNKNOWN;
+ if (fragment instanceof AudioSharingJoinDialogFragment) {
+ pageId =
+ ((AudioSharingJoinDialogFragment) fragment)
+ .getMetricsCategory();
+ } else if (fragment instanceof AudioSharingStopDialogFragment) {
+ pageId =
+ ((AudioSharingStopDialogFragment) fragment)
+ .getMetricsCategory();
+ } else if (fragment instanceof AudioSharingDisconnectDialogFragment) {
+ pageId =
+ ((AudioSharingDisconnectDialogFragment) fragment)
+ .getMetricsCategory();
+ }
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS,
+ pageId);
+ });
+ }
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragment.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragment.java
index e859693..dcd8a3b 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragment.java
@@ -20,16 +20,20 @@
import android.app.settings.SettingsEnums;
import android.os.Bundle;
import android.util.Log;
+import android.util.Pair;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import com.android.settings.R;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.utils.ThreadUtils;
import java.util.List;
import java.util.Locale;
@@ -55,6 +59,7 @@
@Nullable private static DialogEventListener sListener;
@Nullable private static CachedBluetoothDevice sNewDevice;
+ private static Pair<Integer, Object>[] sEventData = new Pair[0];
@Override
public int getMetricsCategory() {
@@ -70,12 +75,14 @@
* @param deviceItems The existing connected device items in audio sharing session.
* @param newDevice The latest connected device triggered this dialog.
* @param listener The callback to handle the user action on this dialog.
+ * @param eventData The eventData to log with for dialog onClick events.
*/
public static void show(
@NonNull Fragment host,
@NonNull List<AudioSharingDeviceItem> deviceItems,
@NonNull CachedBluetoothDevice newDevice,
- @NonNull DialogEventListener listener) {
+ @NonNull DialogEventListener listener,
+ @NonNull Pair<Integer, Object>[] eventData) {
if (!AudioSharingUtils.isFeatureEnabled()) return;
FragmentManager manager = host.getChildFragmentManager();
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
@@ -91,6 +98,7 @@
newGroupId));
sListener = listener;
sNewDevice = newDevice;
+ sEventData = eventData;
return;
} else {
Log.d(
@@ -101,10 +109,22 @@
+ "dismiss current dialog.",
newGroupId));
dialog.dismiss();
+ var unused =
+ ThreadUtils.postOnBackgroundThread(
+ () ->
+ FeatureFactory.getFeatureFactory()
+ .getMetricsFeatureProvider()
+ .action(
+ dialog.getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS,
+ SettingsEnums
+ .DIALOG_AUDIO_SHARING_SWITCH_DEVICE));
}
}
sListener = listener;
sNewDevice = newDevice;
+ sEventData = eventData;
Log.d(TAG, "Show up the dialog.");
final Bundle bundle = new Bundle();
bundle.putParcelableList(BUNDLE_KEY_DEVICE_TO_DISCONNECT_ITEMS, deviceItems);
@@ -125,28 +145,62 @@
return sNewDevice;
}
+ /** Test only: get the {@link DialogEventListener} passed to the dialog. */
+ @VisibleForTesting
+ @Nullable
+ DialogEventListener getListener() {
+ return sListener;
+ }
+
+ /** Test only: get the event data passed to the dialog. */
+ @VisibleForTesting
+ @NonNull
+ Pair<Integer, Object>[] getEventData() {
+ return sEventData;
+ }
+
@Override
+ @NonNull
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
Bundle arguments = requireArguments();
List<AudioSharingDeviceItem> deviceItems =
arguments.getParcelable(BUNDLE_KEY_DEVICE_TO_DISCONNECT_ITEMS, List.class);
- return AudioSharingDialogFactory.newBuilder(getActivity())
- .setTitle(R.string.audio_sharing_disconnect_dialog_title)
- .setTitleIcon(com.android.settingslib.R.drawable.ic_bt_le_audio_sharing)
- .setIsCustomBodyEnabled(true)
- .setCustomMessage(R.string.audio_sharing_dialog_disconnect_content)
- .setCustomDeviceActions(
- new AudioSharingDeviceAdapter(
- getContext(),
- deviceItems,
- (AudioSharingDeviceItem item) -> {
- if (sListener != null) {
- sListener.onItemClick(item);
- }
+ AudioSharingDialogFactory.DialogBuilder builder =
+ AudioSharingDialogFactory.newBuilder(getActivity())
+ .setTitle(R.string.audio_sharing_disconnect_dialog_title)
+ .setTitleIcon(com.android.settingslib.R.drawable.ic_bt_le_audio_sharing)
+ .setIsCustomBodyEnabled(true)
+ .setCustomMessage(R.string.audio_sharing_dialog_disconnect_content)
+ .setCustomNegativeButton(
+ com.android.settings.R.string.cancel,
+ v -> {
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED,
+ sEventData);
dismiss();
- },
- AudioSharingDeviceAdapter.ActionType.REMOVE))
- .setCustomNegativeButton(com.android.settings.R.string.cancel, v -> dismiss())
- .build();
+ });
+ if (deviceItems == null) {
+ Log.d(TAG, "Create dialog error: null deviceItems");
+ return builder.build();
+ }
+ builder.setCustomDeviceActions(
+ new AudioSharingDeviceAdapter(
+ getContext(),
+ deviceItems,
+ (AudioSharingDeviceItem item) -> {
+ if (sListener != null) {
+ sListener.onItemClick(item);
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED,
+ sEventData);
+ }
+ dismiss();
+ },
+ AudioSharingDeviceAdapter.ActionType.REMOVE));
+ return builder.build();
}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragment.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragment.java
index 4982179..ec669bf 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragment.java
@@ -20,9 +20,11 @@
import android.app.settings.SettingsEnums;
import android.os.Bundle;
import android.util.Log;
+import android.util.Pair;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
@@ -52,6 +54,7 @@
@Nullable private static DialogEventListener sListener;
@Nullable private static CachedBluetoothDevice sNewDevice;
+ private static Pair<Integer, Object>[] sEventData = new Pair[0];
@Override
public int getMetricsCategory() {
@@ -69,16 +72,19 @@
* @param deviceItems The existing connected device items eligible for audio sharing.
* @param newDevice The latest connected device triggered this dialog.
* @param listener The callback to handle the user action on this dialog.
+ * @param eventData The eventData to log with for dialog onClick events.
*/
public static void show(
@NonNull Fragment host,
@NonNull List<AudioSharingDeviceItem> deviceItems,
@NonNull CachedBluetoothDevice newDevice,
- @NonNull DialogEventListener listener) {
+ @NonNull DialogEventListener listener,
+ @NonNull Pair<Integer, Object>[] eventData) {
if (!AudioSharingUtils.isFeatureEnabled()) return;
final FragmentManager manager = host.getChildFragmentManager();
sListener = listener;
sNewDevice = newDevice;
+ sEventData = eventData;
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
if (dialog != null) {
Log.d(TAG, "Dialog is showing, update the content.");
@@ -104,7 +110,22 @@
return sNewDevice;
}
+ /** Test only: get the {@link DialogEventListener} passed to the dialog. */
+ @VisibleForTesting
+ @Nullable
+ DialogEventListener getListener() {
+ return sListener;
+ }
+
+ /** Test only: get the event data passed to the dialog. */
+ @VisibleForTesting
+ @NonNull
+ Pair<Integer, Object>[] getEventData() {
+ return sEventData;
+ }
+
@Override
+ @NonNull
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
Bundle arguments = requireArguments();
List<AudioSharingDeviceItem> deviceItems =
@@ -121,6 +142,11 @@
v -> {
if (sListener != null) {
sListener.onShareClick();
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED,
+ sEventData);
}
dismiss();
})
@@ -129,11 +155,20 @@
v -> {
if (sListener != null) {
sListener.onCancelClick();
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED,
+ sEventData);
}
dismiss();
})
.build();
- updateDialog(deviceItems, newDeviceName, dialog);
+ if (deviceItems == null) {
+ Log.d(TAG, "Fail to create dialog: null deviceItems");
+ } else {
+ updateDialog(deviceItems, newDeviceName, dialog);
+ }
dialog.show();
AudioSharingDialogHelper.updateMessageStyle(dialog);
return dialog;
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingNamePreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingNamePreferenceController.java
index b0994d1..24b8f20 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingNamePreferenceController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingNamePreferenceController.java
@@ -18,6 +18,7 @@
import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.isBroadcasting;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothLeBroadcast;
import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.content.Context;
@@ -32,11 +33,13 @@
import com.android.settings.bluetooth.Utils;
import com.android.settings.core.BasePreferenceController;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.ValidatedEditTextPreference;
import com.android.settingslib.bluetooth.BluetoothUtils;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.ThreadUtils;
import java.util.concurrent.Executor;
@@ -116,6 +119,8 @@
@Nullable private AudioSharingNamePreference mPreference;
private final Executor mExecutor;
private final AudioSharingNameTextValidator mAudioSharingNameTextValidator;
+
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
private AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
public AudioSharingNamePreferenceController(Context context, String preferenceKey) {
@@ -126,6 +131,7 @@
(mProfileManager != null) ? mProfileManager.getLeAudioBroadcastProfile() : null;
mAudioSharingNameTextValidator = new AudioSharingNameTextValidator();
mExecutor = Executors.newSingleThreadExecutor();
+ mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -214,14 +220,19 @@
ThreadUtils.postOnBackgroundThread(
() -> {
if (mBroadcast != null) {
+ boolean isBroadcasting = isBroadcasting(mBtManager);
mBroadcast.setBroadcastName((String) newValue);
// We currently don't have a UI field for program info so we keep it
// consistent with broadcast name.
mBroadcast.setProgramInfo((String) newValue);
- if (isBroadcasting(mBtManager)) {
+ if (isBroadcasting) {
mBroadcast.updateBroadcast();
}
updateBroadcastName();
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_STREAM_NAME_UPDATED,
+ isBroadcasting ? 1 : 0);
}
});
return true;
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPasswordPreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPasswordPreferenceController.java
index 7c58c43..258cf3b 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPasswordPreferenceController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPasswordPreferenceController.java
@@ -18,6 +18,7 @@
import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.isBroadcasting;
+import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.SharedPreferences;
import android.util.Log;
@@ -29,9 +30,11 @@
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
import com.android.settings.core.BasePreferenceController;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.ValidatedEditTextPreference;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.ThreadUtils;
import java.nio.charset.StandardCharsets;
@@ -48,6 +51,7 @@
@Nullable private final LocalBluetoothLeBroadcast mBroadcast;
@Nullable private AudioSharingPasswordPreference mPreference;
private final AudioSharingPasswordValidator mAudioSharingPasswordValidator;
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
public AudioSharingPasswordPreferenceController(Context context, String preferenceKey) {
super(context, preferenceKey);
@@ -57,6 +61,7 @@
? mBtManager.getProfileManager().getLeAudioBroadcastProfile()
: null;
mAudioSharingPasswordValidator = new AudioSharingPasswordValidator();
+ mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -94,18 +99,38 @@
}
mPreference.setEditable(!isBroadcasting(mBtManager));
var password = mBroadcast.getBroadcastCode();
- mPreference.setChecked(password == null || password.length == 0);
+ mPreference.setChecked(isPublicBroadcast(password));
}
@Override
public void onPreferenceDataChanged(@NonNull String password, boolean isPublicBroadcast) {
- if (mBroadcast == null || isBroadcasting(mBtManager)) {
- Log.w(TAG, "onPreferenceDataChanged() changing password when broadcasting or null!");
- return;
- }
- persistDefaultPassword(mContext, password);
- mBroadcast.setBroadcastCode(isPublicBroadcast ? new byte[0] : password.getBytes());
- updatePreference();
+ var unused =
+ ThreadUtils.postOnBackgroundThread(
+ () -> {
+ if (mBroadcast == null || isBroadcasting(mBtManager)) {
+ Log.w(
+ TAG,
+ "onPreferenceDataChanged() changing password when"
+ + " broadcasting or null!");
+ return;
+ }
+ boolean isCurrentPublicBroadcast =
+ isPublicBroadcast(mBroadcast.getBroadcastCode());
+ String currentDefaultPassword = getDefaultPassword(mContext);
+ if (password.equals(currentDefaultPassword)
+ && isCurrentPublicBroadcast == isPublicBroadcast) {
+ Log.d(TAG, "onPreferenceDataChanged() nothing changed");
+ return;
+ }
+ persistDefaultPassword(mContext, password);
+ mBroadcast.setBroadcastCode(
+ isPublicBroadcast ? new byte[0] : password.getBytes());
+ updatePreference();
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_STREAM_PASSWORD_UPDATED,
+ isPublicBroadcast ? 1 : 0);
+ });
}
private void updatePreference() {
@@ -116,7 +141,7 @@
ThreadUtils.postOnBackgroundThread(
() -> {
byte[] password = mBroadcast.getBroadcastCode();
- boolean noPassword = (password == null || password.length == 0);
+ boolean noPassword = isPublicBroadcast(password);
String passwordToDisplay =
noPassword
? getDefaultPassword(mContext)
@@ -140,25 +165,20 @@
}
private static void persistDefaultPassword(Context context, String defaultPassword) {
- var unused =
- ThreadUtils.postOnBackgroundThread(
- () -> {
- if (getDefaultPassword(context).equals(defaultPassword)) {
- return;
- }
+ if (getDefaultPassword(context).equals(defaultPassword)) {
+ return;
+ }
- SharedPreferences sharedPref =
- context.getSharedPreferences(
- SHARED_PREF_NAME, Context.MODE_PRIVATE);
- if (sharedPref == null) {
- Log.w(TAG, "persistDefaultPassword(): sharedPref is empty!");
- return;
- }
+ SharedPreferences sharedPref =
+ context.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE);
+ if (sharedPref == null) {
+ Log.w(TAG, "persistDefaultPassword(): sharedPref is empty!");
+ return;
+ }
- SharedPreferences.Editor editor = sharedPref.edit();
- editor.putString(SHARED_PREF_KEY, defaultPassword);
- editor.apply();
- });
+ SharedPreferences.Editor editor = sharedPref.edit();
+ editor.putString(SHARED_PREF_KEY, defaultPassword);
+ editor.apply();
}
private static String getDefaultPassword(Context context) {
@@ -175,4 +195,8 @@
}
return value;
}
+
+ private static boolean isPublicBroadcast(@Nullable byte[] password) {
+ return password == null || password.length == 0;
+ }
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPlaySoundPreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPlaySoundPreferenceController.java
index 46c7f9c..11b195c 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPlaySoundPreferenceController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPlaySoundPreferenceController.java
@@ -105,7 +105,7 @@
}
@VisibleForTesting
- protected void setRingtone(Ringtone ringtone) {
+ void setRingtone(Ringtone ringtone) {
mRingtone = ringtone;
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceController.java
index 54eb722..0244889 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceController.java
@@ -23,6 +23,7 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import androidx.lifecycle.DefaultLifecycleObserver;
import androidx.lifecycle.LifecycleOwner;
import androidx.preference.Preference;
@@ -50,7 +51,8 @@
@Nullable private Preference mPreference;
private final Executor mExecutor;
- private final BluetoothLeBroadcast.Callback mBroadcastCallback =
+ @VisibleForTesting
+ final BluetoothLeBroadcast.Callback mBroadcastCallback =
new BluetoothLeBroadcast.Callback() {
@Override
public void onBroadcastStarted(int reason, int broadcastId) {
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragment.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragment.java
index affd54a..b8da290 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragment.java
@@ -20,16 +20,20 @@
import android.app.settings.SettingsEnums;
import android.os.Bundle;
import android.util.Log;
+import android.util.Pair;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import com.android.settings.R;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.utils.ThreadUtils;
import com.google.common.collect.Iterables;
@@ -52,6 +56,7 @@
@Nullable private static DialogEventListener sListener;
@Nullable private static CachedBluetoothDevice sCachedDevice;
+ private static Pair<Integer, Object>[] sEventData = new Pair[0];
@Override
public int getMetricsCategory() {
@@ -67,12 +72,14 @@
* @param deviceItems The existing connected device items in audio sharing session.
* @param newDevice The latest connected device triggered this dialog.
* @param listener The callback to handle the user action on this dialog.
+ * @param eventData The eventData to log with for dialog onClick events.
*/
public static void show(
@NonNull Fragment host,
@NonNull List<AudioSharingDeviceItem> deviceItems,
@NonNull CachedBluetoothDevice newDevice,
- @NonNull DialogEventListener listener) {
+ @NonNull DialogEventListener listener,
+ @NonNull Pair<Integer, Object>[] eventData) {
if (!AudioSharingUtils.isFeatureEnabled()) return;
final FragmentManager manager = host.getChildFragmentManager();
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
@@ -88,6 +95,7 @@
newGroupId));
sListener = listener;
sCachedDevice = newDevice;
+ sEventData = eventData;
return;
} else {
Log.d(
@@ -98,10 +106,21 @@
+ "dismiss current dialog.",
newGroupId));
dialog.dismiss();
+ var unused =
+ ThreadUtils.postOnBackgroundThread(
+ () ->
+ FeatureFactory.getFeatureFactory()
+ .getMetricsFeatureProvider()
+ .action(
+ dialog.getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS,
+ SettingsEnums.DIALOG_STOP_AUDIO_SHARING));
}
}
sListener = listener;
sCachedDevice = newDevice;
+ sEventData = eventData;
Log.d(TAG, "Show up the dialog.");
final Bundle bundle = new Bundle();
bundle.putParcelableList(BUNDLE_KEY_DEVICE_TO_DISCONNECT_ITEMS, deviceItems);
@@ -121,23 +140,42 @@
return sCachedDevice;
}
+ /** Test only: get the {@link DialogEventListener} passed to the dialog. */
+ @VisibleForTesting
+ @Nullable
+ DialogEventListener getListener() {
+ return sListener;
+ }
+
+ /** Test only: get the event data passed to the dialog. */
+ @VisibleForTesting
+ @NonNull
+ Pair<Integer, Object>[] getEventData() {
+ return sEventData;
+ }
+
@Override
+ @NonNull
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
Bundle arguments = requireArguments();
List<AudioSharingDeviceItem> deviceItems =
arguments.getParcelable(BUNDLE_KEY_DEVICE_TO_DISCONNECT_ITEMS, List.class);
String newDeviceName = arguments.getString(BUNDLE_KEY_NEW_DEVICE_NAME);
- String customMessage =
- deviceItems.size() == 1
- ? getString(
- R.string.audio_sharing_stop_dialog_content,
- Iterables.getOnlyElement(deviceItems).getName())
- : (deviceItems.size() == 2
- ? getString(
- R.string.audio_sharing_stop_dialog_with_two_content,
- deviceItems.get(0).getName(),
- deviceItems.get(1).getName())
- : getString(R.string.audio_sharing_stop_dialog_with_more_content));
+ String customMessage = "";
+ if (deviceItems != null) {
+ customMessage =
+ deviceItems.size() == 1
+ ? getString(
+ R.string.audio_sharing_stop_dialog_content,
+ Iterables.getOnlyElement(deviceItems).getName())
+ : (deviceItems.size() == 2
+ ? getString(
+ R.string.audio_sharing_stop_dialog_with_two_content,
+ deviceItems.get(0).getName(),
+ deviceItems.get(1).getName())
+ : getString(
+ R.string.audio_sharing_stop_dialog_with_more_content));
+ }
AlertDialog dialog =
AudioSharingDialogFactory.newBuilder(getActivity())
.setTitle(
@@ -150,10 +188,21 @@
(dlg, which) -> {
if (sListener != null) {
sListener.onStopSharingClick();
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED,
+ sEventData);
}
})
.setNegativeButton(
- com.android.settings.R.string.cancel, (dlg, which) -> dismiss())
+ com.android.settings.R.string.cancel,
+ (dlg, which) ->
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED,
+ sEventData))
.build();
dialog.show();
AudioSharingDialogHelper.updateMessageStyle(dialog);
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java
index 475be85..9705566 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java
@@ -16,6 +16,7 @@
package com.android.settings.connecteddevice.audiosharing;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcast;
@@ -29,24 +30,27 @@
import android.content.IntentFilter;
import android.util.FeatureFlagUtils;
import android.util.Log;
+import android.util.Pair;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
+import androidx.fragment.app.Fragment;
import androidx.lifecycle.DefaultLifecycleObserver;
import androidx.lifecycle.LifecycleOwner;
import com.android.settings.bluetooth.Utils;
import com.android.settings.core.BasePreferenceController;
-import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.SettingsMainSwitchBar;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.ThreadUtils;
import com.google.common.collect.ImmutableList;
@@ -56,6 +60,7 @@
import java.util.List;
import java.util.Locale;
import java.util.Map;
+import java.util.Objects;
import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -91,14 +96,15 @@
@Nullable private final LocalBluetoothProfileManager mProfileManager;
@Nullable private final LocalBluetoothLeBroadcast mBroadcast;
@Nullable private final LocalBluetoothLeBroadcastAssistant mAssistant;
- @Nullable private DashboardFragment mFragment;
+ @Nullable private Fragment mFragment;
private final Executor mExecutor;
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
private final OnAudioSharingStateChangedListener mListener;
private Map<Integer, List<CachedBluetoothDevice>> mGroupedConnectedDevices = new HashMap<>();
private List<BluetoothDevice> mTargetActiveSinks = new ArrayList<>();
private List<AudioSharingDeviceItem> mDeviceItemsForSharing = new ArrayList<>();
@VisibleForTesting IntentFilter mIntentFilter;
- private AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
+ private final AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
@VisibleForTesting
BroadcastReceiver mReceiver =
@@ -110,7 +116,8 @@
}
};
- private final BluetoothLeBroadcast.Callback mBroadcastCallback =
+ @VisibleForTesting
+ final BluetoothLeBroadcast.Callback mBroadcastCallback =
new BluetoothLeBroadcast.Callback() {
@Override
public void onBroadcastStarted(int reason, int broadcastId) {
@@ -127,8 +134,11 @@
@Override
public void onBroadcastStartFailed(int reason) {
Log.d(TAG, "onBroadcastStartFailed(), reason = " + reason);
- // TODO: handle broadcast start fail
updateSwitch();
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_START_FAILED,
+ SettingsEnums.AUDIO_SHARING_SETTINGS);
}
@Override
@@ -157,8 +167,11 @@
@Override
public void onBroadcastStopFailed(int reason) {
Log.d(TAG, "onBroadcastStopFailed(), reason = " + reason);
- // TODO: handle broadcast stop fail
updateSwitch();
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_STOP_FAILED,
+ SettingsEnums.AUDIO_SHARING_SETTINGS);
}
@Override
@@ -182,7 +195,8 @@
public void onPlaybackStopped(int reason, int broadcastId) {}
};
- private BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
+ @VisibleForTesting
+ final BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
new BluetoothLeBroadcastAssistant.Callback() {
@Override
public void onSearchStarted(int reason) {}
@@ -200,16 +214,8 @@
public void onSourceFound(@NonNull BluetoothLeBroadcastMetadata source) {}
@Override
- public void onSourceAdded(@NonNull BluetoothDevice sink, int sourceId, int reason) {
- Log.d(
- TAG,
- "onSourceAdded(), sink = "
- + sink
- + ", sourceId = "
- + sourceId
- + ", reason = "
- + reason);
- }
+ public void onSourceAdded(
+ @NonNull BluetoothDevice sink, int sourceId, int reason) {}
@Override
public void onSourceAddFailed(
@@ -224,6 +230,10 @@
+ source
+ ", reason = "
+ reason);
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_JOIN_FAILED,
+ SettingsEnums.AUDIO_SHARING_SETTINGS);
AudioSharingUtils.toastMessage(
mContext,
String.format(
@@ -251,9 +261,9 @@
@Override
public void onReceiveStateChanged(
- BluetoothDevice sink,
+ @NonNull BluetoothDevice sink,
int sourceId,
- BluetoothLeBroadcastReceiveState state) {}
+ @NonNull BluetoothLeBroadcastReceiveState state) {}
};
AudioSharingSwitchBarController(
@@ -273,6 +283,7 @@
? null
: mProfileManager.getLeAudioBroadcastAssistantProfile();
mExecutor = Executors.newSingleThreadExecutor();
+ mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -310,15 +321,17 @@
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// Filter out unnecessary callbacks when switch is disabled.
if (!buttonView.isEnabled()) return;
+ if (mBroadcast == null || mAssistant == null) {
+ mSwitchBar.setChecked(false);
+ Log.d(TAG, "Skip onCheckedChanged, profile not support.");
+ return;
+ }
+ mSwitchBar.setEnabled(false);
+ boolean isBroadcasting = AudioSharingUtils.isBroadcasting(mBtManager);
if (isChecked) {
- mSwitchBar.setEnabled(false);
- boolean isBroadcasting = AudioSharingUtils.isBroadcasting(mBtManager);
- if (mAssistant == null || mBroadcast == null || isBroadcasting) {
- Log.d(TAG, "Skip startAudioSharing, already broadcasting or not support.");
+ if (isBroadcasting) {
+ Log.d(TAG, "Skip startAudioSharing, already broadcasting.");
mSwitchBar.setEnabled(true);
- if (!isBroadcasting) {
- mSwitchBar.setChecked(false);
- }
return;
}
// FeatureFlagUtils.SETTINGS_NEED_CONNECTED_BLE_DEVICE_FOR_BROADCAST is always true in
@@ -344,6 +357,11 @@
}
startAudioSharing();
} else {
+ if (!isBroadcasting) {
+ Log.d(TAG, "Skip stopAudioSharing, already not broadcasting.");
+ mSwitchBar.setEnabled(true);
+ return;
+ }
stopAudioSharing();
}
}
@@ -378,13 +396,13 @@
*
* @param fragment The fragment to host the {@link AudioSharingSwitchBarController} dialog.
*/
- public void init(DashboardFragment fragment) {
+ public void init(@NonNull Fragment fragment) {
this.mFragment = fragment;
}
/** Test only: set callback registration status in tests. */
@VisibleForTesting
- public void setCallbacksRegistered(boolean registered) {
+ void setCallbacksRegistered(boolean registered) {
mCallbacksRegistered.set(registered);
}
@@ -446,18 +464,18 @@
}
if (mBroadcast != null) {
mBroadcast.startPrivateBroadcast();
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_MAIN_SWITCH_ON,
+ deviceItems.size());
}
}
private void stopAudioSharing() {
- mSwitchBar.setEnabled(false);
- if (!AudioSharingUtils.isBroadcasting(mBtManager)) {
- Log.d(TAG, "Skip stopAudioSharing, already not broadcasting or broadcast not support.");
- mSwitchBar.setEnabled(true);
- return;
- }
if (mBroadcast != null) {
mBroadcast.stopBroadcast(mBroadcast.getLatestBroadcastId());
+ mMetricsFeatureProvider.action(
+ mContext, SettingsEnums.ACTION_AUDIO_SHARING_MAIN_SWITCH_OFF);
}
}
@@ -494,34 +512,58 @@
}
private void handleOnBroadcastReady() {
- AudioSharingUtils.addSourceToTargetSinks(mTargetActiveSinks, mBtManager);
- mTargetActiveSinks.clear();
+ Pair<Integer, Object>[] eventData =
+ AudioSharingUtils.buildAudioSharingDialogEventData(
+ SettingsEnums.AUDIO_SHARING_SETTINGS,
+ SettingsEnums.DIALOG_AUDIO_SHARING_ADD_DEVICE,
+ /* userTriggered= */ false,
+ /* deviceCountInSharing= */ mTargetActiveSinks.isEmpty() ? 0 : 1,
+ /* candidateDeviceCount= */ mDeviceItemsForSharing.size());
+ if (!mTargetActiveSinks.isEmpty()) {
+ Log.d(TAG, "handleOnBroadcastReady: automatically add source to active sinks.");
+ AudioSharingUtils.addSourceToTargetSinks(mTargetActiveSinks, mBtManager);
+ mMetricsFeatureProvider.action(mContext, SettingsEnums.ACTION_AUTO_JOIN_AUDIO_SHARING);
+ mTargetActiveSinks.clear();
+ }
if (mFragment == null) {
- Log.w(TAG, "Dialog fail to show due to null fragment.");
+ Log.d(TAG, "handleOnBroadcastReady: dialog fail to show due to null fragment.");
mGroupedConnectedDevices.clear();
mDeviceItemsForSharing.clear();
return;
}
+ showDialog(eventData);
+ }
+
+ private void showDialog(Pair<Integer, Object>[] eventData) {
+ AudioSharingDialogFragment.DialogEventListener listener =
+ new AudioSharingDialogFragment.DialogEventListener() {
+ @Override
+ public void onItemClick(@NonNull AudioSharingDeviceItem item) {
+ AudioSharingUtils.addSourceToTargetSinks(
+ mGroupedConnectedDevices
+ .getOrDefault(item.getGroupId(), ImmutableList.of())
+ .stream()
+ .map(CachedBluetoothDevice::getDevice)
+ .filter(Objects::nonNull)
+ .collect(Collectors.toList()),
+ mBtManager);
+ mGroupedConnectedDevices.clear();
+ mDeviceItemsForSharing.clear();
+ }
+
+ @Override
+ public void onCancelClick() {
+ mGroupedConnectedDevices.clear();
+ mDeviceItemsForSharing.clear();
+ }
+ };
AudioSharingUtils.postOnMainThread(
mContext,
() -> {
// Check nullability to pass NullAway check
if (mFragment != null) {
AudioSharingDialogFragment.show(
- mFragment,
- mDeviceItemsForSharing,
- item -> {
- AudioSharingUtils.addSourceToTargetSinks(
- mGroupedConnectedDevices
- .getOrDefault(
- item.getGroupId(), ImmutableList.of())
- .stream()
- .map(CachedBluetoothDevice::getDevice)
- .collect(Collectors.toList()),
- mBtManager);
- mGroupedConnectedDevices.clear();
- mDeviceItemsForSharing.clear();
- });
+ mFragment, mDeviceItemsForSharing, listener, eventData);
}
});
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingUtils.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingUtils.java
index f63717e..29f605c 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingUtils.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingUtils.java
@@ -16,6 +16,12 @@
package com.android.settings.connecteddevice.audiosharing;
+import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT;
+import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING;
+import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID;
+import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID;
+import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED;
+
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothCsipSetCoordinator;
import android.bluetooth.BluetoothDevice;
@@ -25,6 +31,7 @@
import android.content.Context;
import android.provider.Settings;
import android.util.Log;
+import android.util.Pair;
import android.widget.Toast;
import androidx.annotation.NonNull;
@@ -54,6 +61,14 @@
private static final String TAG = "AudioSharingUtils";
private static final boolean DEBUG = BluetoothUtils.D;
+ public enum MetricKey {
+ METRIC_KEY_SOURCE_PAGE_ID,
+ METRIC_KEY_PAGE_ID,
+ METRIC_KEY_USER_TRIGGERED,
+ METRIC_KEY_DEVICE_COUNT_IN_SHARING,
+ METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ }
+
/**
* Fetch {@link CachedBluetoothDevice}s connected to the broadcast assistant. The devices are
* grouped by CSIP group id.
@@ -121,7 +136,7 @@
boolean filterByInSharing) {
List<CachedBluetoothDevice> orderedDevices = new ArrayList<>();
for (List<CachedBluetoothDevice> devices : groupedConnectedDevices.values()) {
- @Nullable CachedBluetoothDevice leadDevice = getLeadDevice(devices);
+ CachedBluetoothDevice leadDevice = getLeadDevice(devices);
if (leadDevice == null) {
Log.d(TAG, "Skip due to no lead device");
continue;
@@ -206,7 +221,7 @@
return buildOrderedConnectedLeadDevices(
localBtManager, groupedConnectedDevices, filterByInSharing)
.stream()
- .map(device -> buildAudioSharingDeviceItem(device))
+ .map(AudioSharingUtils::buildAudioSharingDeviceItem)
.collect(Collectors.toList());
}
@@ -315,8 +330,9 @@
manager.getProfileManager().getLeAudioBroadcastProfile();
if (broadcast == null) {
Log.d(TAG, "Skip stop broadcasting due to broadcast profile is null");
+ } else {
+ broadcast.stopBroadcast(broadcast.getLatestBroadcastId());
}
- broadcast.stopBroadcast(broadcast.getLatestBroadcastId());
}
/**
@@ -378,9 +394,32 @@
return false;
}
VolumeControlProfile vc = profileManager.getVolumeControlProfile();
- if (vc == null || !vc.isProfileReady()) {
- return false;
- }
- return true;
+ return vc != null && vc.isProfileReady();
+ }
+
+ /**
+ * Build audio sharing dialog log event data
+ *
+ * @param sourcePageId The source page id on which the dialog is shown. *
+ * @param pageId The page id of the dialog.
+ * @param userTriggered Indicates whether the dialog is triggered by user click.
+ * @param deviceCountInSharing The count of the devices joining the audio sharing.
+ * @param candidateDeviceCount The count of the eligible devices to join the audio sharing.
+ * @return The event data to be attached to the audio sharing action logs.
+ */
+ @NonNull
+ public static Pair<Integer, Object>[] buildAudioSharingDialogEventData(
+ int sourcePageId,
+ int pageId,
+ boolean userTriggered,
+ int deviceCountInSharing,
+ int candidateDeviceCount) {
+ return new Pair[] {
+ Pair.create(METRIC_KEY_SOURCE_PAGE_ID.ordinal(), sourcePageId),
+ Pair.create(METRIC_KEY_PAGE_ID.ordinal(), pageId),
+ Pair.create(METRIC_KEY_USER_TRIGGERED.ordinal(), userTriggered ? 1 : 0),
+ Pair.create(METRIC_KEY_DEVICE_COUNT_IN_SHARING.ordinal(), deviceCountInSharing),
+ Pair.create(METRIC_KEY_CANDIDATE_DEVICE_COUNT.ordinal(), candidateDeviceCount)
+ };
}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceBadCodeState.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceBadCodeState.java
index 1993377..56b1b2e 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceBadCodeState.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceBadCodeState.java
@@ -16,6 +16,8 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
+import android.app.settings.SettingsEnums;
+
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
@@ -38,6 +40,17 @@
}
@Override
+ void performAction(
+ AudioStreamPreference preference,
+ AudioStreamsProgressCategoryController controller,
+ AudioStreamsHelper helper) {
+ mMetricsFeatureProvider.action(
+ preference.getContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN_FAILED_BAD_CODE,
+ preference.getSourceOriginForLogging().ordinal());
+ }
+
+ @Override
int getSummary() {
return AUDIO_STREAM_ADD_SOURCE_BAD_CODE_STATE_SUMMARY;
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceFailedState.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceFailedState.java
index 5d151ee..df41c14 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceFailedState.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceFailedState.java
@@ -16,6 +16,8 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
+import android.app.settings.SettingsEnums;
+
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
@@ -38,6 +40,17 @@
}
@Override
+ void performAction(
+ AudioStreamPreference preference,
+ AudioStreamsProgressCategoryController controller,
+ AudioStreamsHelper helper) {
+ mMetricsFeatureProvider.action(
+ preference.getContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN_FAILED_OTHER,
+ preference.getSourceOriginForLogging().ordinal());
+ }
+
+ @Override
int getSummary() {
return AUDIO_STREAM_ADD_SOURCE_FAILED_STATE_SUMMARY;
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseState.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseState.java
index d314d3f..24a28dd 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseState.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseState.java
@@ -17,10 +17,12 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
import android.app.AlertDialog;
+import android.app.settings.SettingsEnums;
import android.content.Context;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
+import androidx.fragment.app.Fragment;
import com.android.settings.R;
import com.android.settingslib.utils.ThreadUtils;
@@ -52,6 +54,10 @@
var metadata = preference.getAudioStreamMetadata();
if (metadata != null) {
helper.addSource(metadata);
+ mMetricsFeatureProvider.action(
+ preference.getContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN,
+ preference.getSourceOriginForLogging().ordinal());
// Cache the metadata that used for add source, if source is added successfully, we
// will save it persistently.
mAudioStreamsRepository.cacheMetadata(metadata);
@@ -66,15 +72,17 @@
&& preference.getAudioStreamState() == getStateEnum()) {
controller.handleSourceFailedToConnect(
preference.getAudioStreamBroadcastId());
+ mMetricsFeatureProvider.action(
+ preference.getContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN_FAILED_TIMEOUT,
+ preference.getSourceOriginForLogging().ordinal());
ThreadUtils.postOnMainThread(
() -> {
if (controller.getFragment() != null) {
- AudioStreamsDialogFragment.show(
+ showBroadcastUnavailableNoRetryDialog(
controller.getFragment(),
- getBroadcastUnavailableNoRetryDialog(
- preference.getContext(),
- AudioStreamsHelper.getBroadcastName(
- metadata)));
+ preference.getContext(),
+ AudioStreamsHelper.getBroadcastName(metadata));
}
});
}
@@ -94,13 +102,21 @@
return AudioStreamsProgressCategoryController.AudioStreamState.ADD_SOURCE_WAIT_FOR_RESPONSE;
}
- private AudioStreamsDialogFragment.DialogBuilder getBroadcastUnavailableNoRetryDialog(
- Context context, String broadcastName) {
- return new AudioStreamsDialogFragment.DialogBuilder(context)
- .setTitle(context.getString(R.string.audio_streams_dialog_stream_is_not_available))
- .setSubTitle1(broadcastName)
- .setSubTitle2(context.getString(R.string.audio_streams_is_not_playing))
- .setRightButtonText(context.getString(R.string.audio_streams_dialog_close))
- .setRightButtonOnClickListener(AlertDialog::dismiss);
+ private void showBroadcastUnavailableNoRetryDialog(
+ Fragment fragment, Context context, String broadcastName) {
+ var broadcastUnavailableNoRetryDialog =
+ new AudioStreamsDialogFragment.DialogBuilder(context)
+ .setTitle(
+ context.getString(
+ R.string.audio_streams_dialog_stream_is_not_available))
+ .setSubTitle1(broadcastName)
+ .setSubTitle2(context.getString(R.string.audio_streams_is_not_playing))
+ .setRightButtonText(context.getString(R.string.audio_streams_dialog_close))
+ .setRightButtonOnClickListener(AlertDialog::dismiss);
+
+ AudioStreamsDialogFragment.show(
+ fragment,
+ broadcastUnavailableNoRetryDialog,
+ SettingsEnums.DIALOG_AUDIO_STREAM_MAIN_JOIN_FAILED_TIMEOUT);
}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamButtonController.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamButtonController.java
index ea5abdf..2661072 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamButtonController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamButtonController.java
@@ -16,6 +16,7 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcastAssistant;
import android.bluetooth.BluetoothLeBroadcastMetadata;
@@ -33,7 +34,9 @@
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
import com.android.settings.core.BasePreferenceController;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.ThreadUtils;
import com.android.settingslib.widget.ActionButtonsPreference;
@@ -44,6 +47,7 @@
implements DefaultLifecycleObserver {
private static final String TAG = "AudioStreamButtonController";
private static final String KEY = "audio_stream_button";
+ private static final int SOURCE_ORIGIN_REPOSITORY = SourceOriginForLogging.REPOSITORY.ordinal();
private final BluetoothLeBroadcastAssistant.Callback mBroadcastAssistantCallback =
new AudioStreamsBroadcastAssistantCallback() {
@Override
@@ -56,6 +60,8 @@
public void onSourceRemoveFailed(BluetoothDevice sink, int sourceId, int reason) {
super.onSourceRemoveFailed(sink, sourceId, reason);
updateButton();
+ mMetricsFeatureProvider.action(
+ mContext, SettingsEnums.ACTION_AUDIO_STREAM_LEAVE_FAILED);
}
@Override
@@ -66,6 +72,10 @@
super.onReceiveStateChanged(sink, sourceId, state);
if (AudioStreamsHelper.isConnected(state)) {
updateButton();
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN_SUCCEED,
+ SOURCE_ORIGIN_REPOSITORY);
}
}
@@ -74,6 +84,10 @@
BluetoothDevice sink, BluetoothLeBroadcastMetadata source, int reason) {
super.onSourceAddFailed(sink, source, reason);
updateButton();
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN_FAILED_OTHER,
+ SOURCE_ORIGIN_REPOSITORY);
}
@Override
@@ -88,6 +102,7 @@
private final Executor mExecutor;
private final AudioStreamsHelper mAudioStreamsHelper;
private final @Nullable LocalBluetoothLeBroadcastAssistant mLeBroadcastAssistant;
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
private @Nullable ActionButtonsPreference mPreference;
private int mBroadcastId = -1;
@@ -96,6 +111,7 @@
mExecutor = Executors.newSingleThreadExecutor();
mAudioStreamsHelper = new AudioStreamsHelper(Utils.getLocalBtManager(context));
mLeBroadcastAssistant = mAudioStreamsHelper.getLeBroadcastAssistant();
+ mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -124,59 +140,77 @@
}
private void updateButton() {
- if (mPreference != null) {
- if (mAudioStreamsHelper.getAllConnectedSources().stream()
- .map(BluetoothLeBroadcastReceiveState::getBroadcastId)
- .anyMatch(connectedBroadcastId -> connectedBroadcastId == mBroadcastId)) {
- ThreadUtils.postOnMainThread(
- () -> {
- if (mPreference != null) {
- mPreference.setButton1Enabled(true);
- mPreference
- .setButton1Text(R.string.audio_streams_disconnect)
- .setButton1Icon(
- com.android.settings.R.drawable.ic_settings_close)
- .setButton1OnClickListener(
- unused -> {
+ if (mPreference == null) {
+ Log.w(TAG, "updateButton(): preference is null!");
+ return;
+ }
+ boolean isConnected =
+ mAudioStreamsHelper.getAllConnectedSources().stream()
+ .map(BluetoothLeBroadcastReceiveState::getBroadcastId)
+ .anyMatch(connectedBroadcastId -> connectedBroadcastId == mBroadcastId);
+
+ View.OnClickListener onClickListener;
+
+ if (isConnected) {
+ onClickListener =
+ unused ->
+ ThreadUtils.postOnBackgroundThread(
+ () -> {
+ mAudioStreamsHelper.removeSource(mBroadcastId);
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums
+ .ACTION_AUDIO_STREAM_LEAVE_BUTTON_CLICK);
+ ThreadUtils.postOnMainThread(
+ () -> {
if (mPreference != null) {
mPreference.setButton1Enabled(false);
}
- mAudioStreamsHelper.removeSource(mBroadcastId);
});
- }
- });
- } else {
- View.OnClickListener clickToRejoin =
- unused ->
- ThreadUtils.postOnBackgroundThread(
- () -> {
- var metadata =
- mAudioStreamsRepository.getSavedMetadata(
- mContext, mBroadcastId);
- if (metadata != null) {
- mAudioStreamsHelper.addSource(metadata);
- ThreadUtils.postOnMainThread(
- () -> {
- if (mPreference != null) {
- mPreference.setButton1Enabled(
- false);
- }
- });
- }
- });
- ThreadUtils.postOnMainThread(
- () -> {
- if (mPreference != null) {
- mPreference.setButton1Enabled(true);
- mPreference
- .setButton1Text(R.string.audio_streams_connect)
- .setButton1Icon(com.android.settings.R.drawable.ic_add_24dp)
- .setButton1OnClickListener(clickToRejoin);
- }
- });
- }
+ });
+ ThreadUtils.postOnMainThread(
+ () -> {
+ if (mPreference != null) {
+ mPreference.setButton1Enabled(true);
+ mPreference
+ .setButton1Text(R.string.audio_streams_disconnect)
+ .setButton1Icon(
+ com.android.settings.R.drawable.ic_settings_close)
+ .setButton1OnClickListener(onClickListener);
+ }
+ });
} else {
- Log.w(TAG, "updateButton(): preference is null!");
+ onClickListener =
+ unused ->
+ ThreadUtils.postOnBackgroundThread(
+ () -> {
+ var metadata =
+ mAudioStreamsRepository.getSavedMetadata(
+ mContext, mBroadcastId);
+ if (metadata != null) {
+ mAudioStreamsHelper.addSource(metadata);
+ mMetricsFeatureProvider.action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN,
+ SOURCE_ORIGIN_REPOSITORY);
+ ThreadUtils.postOnMainThread(
+ () -> {
+ if (mPreference != null) {
+ mPreference.setButton1Enabled(false);
+ }
+ });
+ }
+ });
+ ThreadUtils.postOnMainThread(
+ () -> {
+ if (mPreference != null) {
+ mPreference.setButton1Enabled(true);
+ mPreference
+ .setButton1Text(R.string.audio_streams_connect)
+ .setButton1Icon(com.android.settings.R.drawable.ic_add_24dp)
+ .setButton1OnClickListener(onClickListener);
+ }
+ });
}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialog.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialog.java
index 3130bbc..6c449a4 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialog.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialog.java
@@ -21,101 +21,84 @@
import android.app.Activity;
import android.app.Dialog;
import android.app.settings.SettingsEnums;
+import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcastMetadata;
+import android.bluetooth.BluetoothProfile;
+import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
-import android.provider.Settings;
+import android.text.TextUtils;
import android.util.Log;
import androidx.annotation.Nullable;
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
+import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
import com.android.settings.connecteddevice.audiosharing.AudioSharingUtils;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.bluetooth.BluetoothLeBroadcastMetadataExt;
-import com.android.settingslib.bluetooth.CachedBluetoothDevice;
-import com.android.settingslib.bluetooth.LocalBluetoothManager;
-import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
-
-import com.google.common.base.Strings;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
public class AudioStreamConfirmDialog extends InstrumentedDialogFragment {
private static final String TAG = "AudioStreamConfirmDialog";
private static final int DEFAULT_DEVICE_NAME = R.string.audio_streams_dialog_default_device;
- @Nullable private LocalBluetoothManager mLocalBluetoothManager;
- @Nullable private LocalBluetoothProfileManager mProfileManager;
+ private Context mContext;
@Nullable private Activity mActivity;
- @Nullable private String mBroadcastMetadataStr;
@Nullable private BluetoothLeBroadcastMetadata mBroadcastMetadata;
- private boolean mIsRequestValid = false;
+ @Nullable private BluetoothDevice mConnectedDevice;
+ private int mAudioStreamConfirmDialogId = SettingsEnums.PAGE_UNKNOWN;
+
+ @Override
+ public void onAttach(Context context) {
+ mContext = context;
+ mActivity = getActivity();
+ if (mActivity == null) {
+ Log.w(TAG, "onAttach() mActivity is null!");
+ return;
+ }
+ Intent intent = mActivity.getIntent();
+ mBroadcastMetadata = getMetadata(intent);
+ mConnectedDevice = getConnectedDevice();
+ mAudioStreamConfirmDialogId =
+ getDialogId(mBroadcastMetadata != null, mConnectedDevice != null);
+ super.onAttach(context);
+ }
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setShowsDialog(true);
- mActivity = getActivity();
- if (mActivity == null) {
- Log.w(TAG, "onCreate() mActivity is null!");
- return;
- }
- mLocalBluetoothManager = Utils.getLocalBluetoothManager(mActivity);
- mProfileManager =
- mLocalBluetoothManager == null ? null : mLocalBluetoothManager.getProfileManager();
- mBroadcastMetadataStr = mActivity.getIntent().getStringExtra(KEY_BROADCAST_METADATA);
- if (Strings.isNullOrEmpty(mBroadcastMetadataStr)) {
- Log.w(TAG, "onCreate() mBroadcastMetadataStr is null or empty!");
- return;
- }
- mBroadcastMetadata =
- BluetoothLeBroadcastMetadataExt.INSTANCE.convertToBroadcastMetadata(
- mBroadcastMetadataStr);
- if (mBroadcastMetadata == null) {
- Log.w(TAG, "onCreate() mBroadcastMetadata is null!");
- } else {
- mIsRequestValid = true;
- }
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
- if (!AudioSharingUtils.isFeatureEnabled()) {
- return getUnsupporteDialog();
- }
- if (AudioSharingUtils.isAudioSharingProfileReady(mProfileManager)) {
- CachedBluetoothDevice connectedLeDevice =
- AudioStreamsHelper.getCachedBluetoothDeviceInSharingOrLeConnected(
- mLocalBluetoothManager)
- .orElse(null);
- if (connectedLeDevice == null) {
- return getNoLeDeviceDialog();
- }
- String deviceName = connectedLeDevice.getName();
- return mIsRequestValid ? getConfirmDialog(deviceName) : getErrorDialog(deviceName);
- }
- Log.d(TAG, "onCreateDialog() : profile not ready!");
- String defaultDeviceName =
- mActivity != null ? mActivity.getString(DEFAULT_DEVICE_NAME) : "";
- return mIsRequestValid
- ? getConfirmDialog(defaultDeviceName)
- : getErrorDialog(defaultDeviceName);
+ return switch (mAudioStreamConfirmDialogId) {
+ case SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_FEATURE_UNSUPPORTED ->
+ getUnsupportedDialog();
+ case SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_NO_LE_DEVICE -> getNoLeDeviceDialog();
+ case SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_LISTEN -> getConfirmDialog();
+ default -> getErrorDialog();
+ };
}
@Override
public int getMetricsCategory() {
- // TODO(chelseahao): update metrics id
- return 0;
+ return mAudioStreamConfirmDialogId;
}
- private Dialog getConfirmDialog(String name) {
+ private Dialog getConfirmDialog() {
return new AudioStreamsDialogFragment.DialogBuilder(getActivity())
.setTitle(getString(R.string.audio_streams_dialog_listen_to_audio_stream))
.setSubTitle1(
mBroadcastMetadata != null
? AudioStreamsHelper.getBroadcastName(mBroadcastMetadata)
: "")
- .setSubTitle2(getString(R.string.audio_streams_dialog_control_volume, name))
+ .setSubTitle2(
+ getString(
+ R.string.audio_streams_dialog_control_volume,
+ getConnectedDeviceName()))
.setLeftButtonText(getString(com.android.settings.R.string.cancel))
.setLeftButtonOnClickListener(
unused -> {
@@ -127,6 +110,10 @@
.setRightButtonText(getString(R.string.audio_streams_dialog_listen))
.setRightButtonOnClickListener(
unused -> {
+ mMetricsFeatureProvider.action(
+ getActivity(),
+ SettingsEnums
+ .ACTION_AUDIO_STREAM_CONFIRM_LAUNCH_MAIN_BUTTON_CLICK);
launchAudioStreamsActivity();
dismiss();
if (mActivity != null) {
@@ -136,7 +123,7 @@
.build();
}
- private Dialog getUnsupporteDialog() {
+ private Dialog getUnsupportedDialog() {
return new AudioStreamsDialogFragment.DialogBuilder(getActivity())
.setTitle(getString(R.string.audio_streams_dialog_cannot_listen))
.setSubTitle2(getString(R.string.audio_streams_dialog_unsupported_device_subtitle))
@@ -151,10 +138,13 @@
.build();
}
- private Dialog getErrorDialog(String name) {
+ private Dialog getErrorDialog() {
return new AudioStreamsDialogFragment.DialogBuilder(getActivity())
.setTitle(getString(R.string.audio_streams_dialog_cannot_listen))
- .setSubTitle2(getString(R.string.audio_streams_dialog_cannot_play, name))
+ .setSubTitle2(
+ getString(
+ R.string.audio_streams_dialog_cannot_play,
+ getConnectedDeviceName()))
.setRightButtonText(getString(R.string.audio_streams_dialog_close))
.setRightButtonOnClickListener(
unused -> {
@@ -181,11 +171,12 @@
.setRightButtonText(getString(R.string.audio_streams_dialog_no_le_device_button))
.setRightButtonOnClickListener(
dialog -> {
- if (mActivity != null) {
- mActivity.startActivity(
- new Intent(Settings.ACTION_BLUETOOTH_SETTINGS)
- .setPackage(mActivity.getPackageName()));
- }
+ new SubSettingLauncher(mContext)
+ .setDestination(
+ ConnectedDeviceDashboardFragment.class.getName())
+ .setSourceMetricsCategory(
+ SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_NO_LE_DEVICE)
+ .launch();
dismiss();
if (mActivity != null) {
mActivity.finish();
@@ -196,14 +187,60 @@
private void launchAudioStreamsActivity() {
Bundle bundle = new Bundle();
- bundle.putString(KEY_BROADCAST_METADATA, mBroadcastMetadataStr);
+ bundle.putParcelable(KEY_BROADCAST_METADATA, mBroadcastMetadata);
if (mActivity != null) {
new SubSettingLauncher(getActivity())
.setTitleText(getString(R.string.audio_streams_activity_title))
.setDestination(AudioStreamsDashboardFragment.class.getName())
.setArguments(bundle)
- .setSourceMetricsCategory(SettingsEnums.PAGE_UNKNOWN)
+ .setSourceMetricsCategory(getMetricsCategory())
.launch();
}
}
+
+ private @Nullable BluetoothLeBroadcastMetadata getMetadata(Intent intent) {
+ String metadata = intent.getStringExtra(KEY_BROADCAST_METADATA);
+ if (metadata == null || metadata.isEmpty()) {
+ return null;
+ }
+ return BluetoothLeBroadcastMetadataExt.INSTANCE.convertToBroadcastMetadata(metadata);
+ }
+
+ private int getDialogId(boolean hasMetadata, boolean hasConnectedDevice) {
+ if (!AudioSharingUtils.isFeatureEnabled()) {
+ return SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_FEATURE_UNSUPPORTED;
+ }
+ if (!hasConnectedDevice) {
+ return SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_NO_LE_DEVICE;
+ }
+ return hasMetadata
+ ? SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_LISTEN
+ : SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_DATA_ERROR;
+ }
+
+ @Nullable
+ private BluetoothDevice getConnectedDevice() {
+ var localBluetoothManager = Utils.getLocalBluetoothManager(getActivity());
+ if (localBluetoothManager == null) {
+ return null;
+ }
+ LocalBluetoothLeBroadcastAssistant assistant =
+ localBluetoothManager.getProfileManager().getLeAudioBroadcastAssistantProfile();
+ if (assistant == null) {
+ return null;
+ }
+ var devices =
+ assistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED});
+ return devices.isEmpty() ? null : devices.get(0);
+ }
+
+ private String getConnectedDeviceName() {
+ if (mConnectedDevice != null) {
+ String alias = mConnectedDevice.getAlias();
+ return TextUtils.isEmpty(alias) ? getString(DEFAULT_DEVICE_NAME) : alias;
+ }
+ Log.w(TAG, "getConnectedDeviceName : no connected device!");
+ return getString(DEFAULT_DEVICE_NAME);
+ }
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialogActivity.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialogActivity.java
index ddb0b42..88e2322 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialogActivity.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialogActivity.java
@@ -16,18 +16,92 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
+import android.content.Intent;
import android.os.Bundle;
+import android.util.Log;
+
+import androidx.annotation.Nullable;
import com.android.settings.SettingsActivity;
+import com.android.settings.bluetooth.Utils;
+import com.android.settings.connecteddevice.audiosharing.AudioSharingUtils;
+import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
-public class AudioStreamConfirmDialogActivity extends SettingsActivity {
+public class AudioStreamConfirmDialogActivity extends SettingsActivity
+ implements LocalBluetoothProfileManager.ServiceListener {
+ private static final String TAG = "AudioStreamConfirmDialogActivity";
+ @Nullable private LocalBluetoothProfileManager mProfileManager;
+ @Nullable private Bundle mSavedState;
+ @Nullable private Intent mIntent;
+
+ @Override
+ protected boolean isToolbarEnabled() {
+ return false;
+ }
@Override
protected void onCreate(Bundle savedState) {
+ var localBluetoothManager = Utils.getLocalBluetoothManager(this);
+ mProfileManager =
+ localBluetoothManager == null ? null : localBluetoothManager.getProfileManager();
super.onCreate(savedState);
}
@Override
+ protected void createUiFromIntent(@Nullable Bundle savedState, Intent intent) {
+ if (AudioSharingUtils.isFeatureEnabled()
+ && !AudioSharingUtils.isAudioSharingProfileReady(mProfileManager)) {
+ Log.d(TAG, "createUiFromIntent() : supported but not ready, skip createUiFromIntent");
+ mSavedState = savedState;
+ mIntent = intent;
+ return;
+ }
+
+ Log.d(
+ TAG,
+ "createUiFromIntent() : not supported or already connected, starting"
+ + " createUiFromIntent");
+ super.createUiFromIntent(savedState, intent);
+ }
+
+ @Override
+ public void onStart() {
+ if (AudioSharingUtils.isFeatureEnabled()
+ && !AudioSharingUtils.isAudioSharingProfileReady(mProfileManager)) {
+ Log.d(TAG, "onStart() : supported but not ready, listen to service ready");
+ if (mProfileManager != null) {
+ mProfileManager.addServiceListener(this);
+ }
+ }
+ super.onStart();
+ }
+
+ @Override
+ public void onStop() {
+ if (mProfileManager != null) {
+ mProfileManager.removeServiceListener(this);
+ }
+ super.onStop();
+ }
+
+ @Override
+ public void onServiceConnected() {
+ if (AudioSharingUtils.isFeatureEnabled()
+ && AudioSharingUtils.isAudioSharingProfileReady(mProfileManager)) {
+ if (mProfileManager != null) {
+ mProfileManager.removeServiceListener(this);
+ }
+ if (mIntent != null) {
+ Log.d(TAG, "onServiceConnected() : service ready, starting createUiFromIntent");
+ super.createUiFromIntent(mSavedState, mIntent);
+ }
+ }
+ }
+
+ @Override
+ public void onServiceDisconnected() {}
+
+ @Override
protected boolean isValidFragment(String fragmentName) {
return AudioStreamConfirmDialog.class.getName().equals(fragmentName);
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamDetailsFragment.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamDetailsFragment.java
index 1f71b73..aeab789 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamDetailsFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamDetailsFragment.java
@@ -16,6 +16,7 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
+import android.app.settings.SettingsEnums;
import android.content.Context;
import android.os.Bundle;
@@ -45,8 +46,7 @@
@Override
public int getMetricsCategory() {
- // TODO(chelseahao): update metrics id
- return 0;
+ return SettingsEnums.AUDIO_STREAM_DETAIL;
}
@Override
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamMediaService.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamMediaService.java
index ea5eede..f812e06 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamMediaService.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamMediaService.java
@@ -20,6 +20,7 @@
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.Service;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcastReceiveState;
@@ -36,16 +37,19 @@
import androidx.annotation.IntRange;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
import com.android.settings.connecteddevice.audiosharing.AudioSharingUtils;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.BluetoothCallback;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.bluetooth.VolumeControlProfile;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import java.util.ArrayList;
import java.util.concurrent.ExecutorService;
@@ -71,6 +75,10 @@
public void onSourceLost(int broadcastId) {
super.onSourceLost(broadcastId);
if (broadcastId == mBroadcastId) {
+ Log.d(TAG, "onSourceLost() : stopSelf");
+ if (mNotificationManager != null) {
+ mNotificationManager.cancel(NOTIFICATION_ID);
+ }
stopSelf();
}
}
@@ -82,6 +90,10 @@
&& mAudioStreamsHelper.getAllConnectedSources().stream()
.map(BluetoothLeBroadcastReceiveState::getBroadcastId)
.noneMatch(id -> id == mBroadcastId)) {
+ Log.d(TAG, "onSourceRemoved() : stopSelf");
+ if (mNotificationManager != null) {
+ mNotificationManager.cancel(NOTIFICATION_ID);
+ }
stopSelf();
}
}
@@ -92,6 +104,10 @@
@Override
public void onBluetoothStateChanged(int bluetoothState) {
if (BluetoothAdapter.STATE_OFF == bluetoothState) {
+ Log.d(TAG, "onBluetoothStateChanged() : stopSelf");
+ if (mNotificationManager != null) {
+ mNotificationManager.cancel(NOTIFICATION_ID);
+ }
stopSelf();
}
}
@@ -116,6 +132,10 @@
});
}
if (mDevices == null || mDevices.isEmpty()) {
+ Log.d(TAG, "onProfileConnectionStateChanged() : stopSelf");
+ if (mNotificationManager != null) {
+ mNotificationManager.cancel(NOTIFICATION_ID);
+ }
stopSelf();
}
}
@@ -177,6 +197,8 @@
LEAVE_BROADCAST_TEXT,
com.android.settings.R.drawable.ic_clear);
+ private final MetricsFeatureProvider mMetricsFeatureProvider =
+ FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
private final ExecutorService mExecutor = Executors.newSingleThreadExecutor();
private int mBroadcastId;
@Nullable private ArrayList<BluetoothDevice> mDevices;
@@ -191,7 +213,7 @@
// override this value. Otherwise, we raise the volume to 25 when the play button is clicked.
private int mLatestPositiveVolume = 25;
private boolean mIsMuted = false;
- @Nullable private MediaSession mLocalSession;
+ @VisibleForTesting @Nullable MediaSession mLocalSession;
@Override
public void onCreate() {
@@ -223,7 +245,7 @@
NotificationChannel notificationChannel =
new NotificationChannel(
CHANNEL_ID,
- this.getString(com.android.settings.R.string.bluetooth),
+ getString(com.android.settings.R.string.bluetooth),
NotificationManager.IMPORTANCE_HIGH);
mNotificationManager.createNotificationChannel(notificationChannel);
}
@@ -240,21 +262,27 @@
@Override
public void onDestroy() {
+ Log.d(TAG, "onDestroy()");
super.onDestroy();
if (!AudioSharingUtils.isFeatureEnabled()) {
+ Log.d(TAG, "onDestroy() : skip due to feature not enabled");
return;
}
if (mLocalBtManager != null) {
+ Log.d(TAG, "onDestroy() : unregister mBluetoothCallback");
mLocalBtManager.getEventManager().unregisterCallback(mBluetoothCallback);
}
if (mLeBroadcastAssistant != null) {
+ Log.d(TAG, "onDestroy() : unregister mBroadcastAssistantCallback");
mLeBroadcastAssistant.unregisterServiceCallBack(mBroadcastAssistantCallback);
}
if (mVolumeControl != null) {
+ Log.d(TAG, "onDestroy() : unregister mVolumeControlCallback");
mVolumeControl.unregisterCallback(mVolumeControlCallback);
}
if (mLocalSession != null) {
+ Log.d(TAG, "onDestroy() : release mLocalSession");
mLocalSession.release();
mLocalSession = null;
}
@@ -267,6 +295,9 @@
mBroadcastId = intent != null ? intent.getIntExtra(BROADCAST_ID, -1) : -1;
if (mBroadcastId == -1) {
Log.w(TAG, "Invalid broadcast ID. Service will not start.");
+ if (mNotificationManager != null) {
+ mNotificationManager.cancel(NOTIFICATION_ID);
+ }
stopSelf();
return START_NOT_STICKY;
}
@@ -276,6 +307,9 @@
}
if (mDevices == null || mDevices.isEmpty()) {
Log.w(TAG, "No device. Service will not start.");
+ if (mNotificationManager != null) {
+ mNotificationManager.cancel(NOTIFICATION_ID);
+ }
stopSelf();
return START_NOT_STICKY;
}
@@ -322,6 +356,11 @@
+ 0);
if (mVolumeControl != null) {
mVolumeControl.setDeviceVolume(mDevices.get(0), 0, true);
+ mMetricsFeatureProvider.action(
+ getApplicationContext(),
+ SettingsEnums
+ .ACTION_AUDIO_STREAM_NOTIFICATION_MUTE_BUTTON_CLICK,
+ 1);
}
}
@@ -341,6 +380,10 @@
mVolumeControl.setDeviceVolume(
mDevices.get(0), mLatestPositiveVolume, true);
}
+ mMetricsFeatureProvider.action(
+ getApplicationContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_NOTIFICATION_MUTE_BUTTON_CLICK,
+ 0);
}
@Override
@@ -348,6 +391,10 @@
Log.d(TAG, "onCustomAction: " + action);
if (action.equals(LEAVE_BROADCAST_ACTION) && mAudioStreamsHelper != null) {
mAudioStreamsHelper.removeSource(mBroadcastId);
+ mMetricsFeatureProvider.action(
+ getApplicationContext(),
+ SettingsEnums
+ .ACTION_AUDIO_STREAM_NOTIFICATION_LEAVE_BUTTON_CLICK);
}
}
});
@@ -379,13 +426,13 @@
mLocalSession != null ? mLocalSession.getSessionToken() : null);
if (deviceName != null && !deviceName.isEmpty()) {
mediaStyle.setRemotePlaybackInfo(
- deviceName, com.android.internal.R.drawable.ic_bt_headset_hfp, null);
+ deviceName, com.android.settingslib.R.drawable.ic_bt_le_audio, null);
}
Notification.Builder notificationBuilder =
new Notification.Builder(this, CHANNEL_ID)
.setSmallIcon(com.android.settingslib.R.drawable.ic_bt_le_audio_sharing)
.setStyle(mediaStyle)
- .setContentText(this.getString(BROADCAST_CONTENT_TEXT))
+ .setContentText(getString(BROADCAST_CONTENT_TEXT))
.setSilent(true);
return notificationBuilder.build();
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreference.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreference.java
index f605e4b..071cf57 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreference.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreference.java
@@ -107,6 +107,12 @@
: AudioStreamsProgressCategoryController.AudioStreamState.UNKNOWN;
}
+ SourceOriginForLogging getSourceOriginForLogging() {
+ return mAudioStream != null
+ ? mAudioStream.getSourceOriginForLogging()
+ : SourceOriginForLogging.UNKNOWN;
+ }
+
@Override
protected boolean shouldHideSecondTarget() {
return mIsConnected || !mIsEncrypted;
@@ -130,11 +136,13 @@
}
static AudioStreamPreference fromMetadata(
- Context context, BluetoothLeBroadcastMetadata source) {
+ Context context,
+ BluetoothLeBroadcastMetadata source,
+ SourceOriginForLogging sourceOriginForLogging) {
AudioStreamPreference preference = new AudioStreamPreference(context, /* attrs= */ null);
preference.setIsEncrypted(source.isEncrypted());
preference.setTitle(AudioStreamsHelper.getBroadcastName(source));
- preference.setAudioStream(new AudioStream(source));
+ preference.setAudioStream(new AudioStream(source, sourceOriginForLogging));
return preference;
}
@@ -158,11 +166,15 @@
private static final int UNAVAILABLE = -1;
@Nullable private BluetoothLeBroadcastMetadata mMetadata;
@Nullable private BluetoothLeBroadcastReceiveState mReceiveState;
+ private SourceOriginForLogging mSourceOriginForLogging = SourceOriginForLogging.UNKNOWN;
private AudioStreamsProgressCategoryController.AudioStreamState mState =
AudioStreamsProgressCategoryController.AudioStreamState.UNKNOWN;
- private AudioStream(BluetoothLeBroadcastMetadata metadata) {
+ private AudioStream(
+ BluetoothLeBroadcastMetadata metadata,
+ SourceOriginForLogging sourceOriginForLogging) {
mMetadata = metadata;
+ mSourceOriginForLogging = sourceOriginForLogging;
}
private AudioStream(BluetoothLeBroadcastReceiveState receiveState) {
@@ -191,6 +203,10 @@
return mState;
}
+ private SourceOriginForLogging getSourceOriginForLogging() {
+ return mSourceOriginForLogging;
+ }
+
@Nullable
private BluetoothLeBroadcastMetadata getMetadata() {
return mMetadata;
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamStateHandler.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamStateHandler.java
index df176be..b0c5b6b 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamStateHandler.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamStateHandler.java
@@ -25,7 +25,9 @@
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
+import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.bluetooth.BluetoothUtils;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.ThreadUtils;
class AudioStreamStateHandler {
@@ -35,6 +37,8 @@
final AudioStreamsRepository mAudioStreamsRepository = AudioStreamsRepository.getInstance();
final Handler mHandler = new Handler(Looper.getMainLooper());
+ final MetricsFeatureProvider mMetricsFeatureProvider =
+ FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
AudioStreamStateHandler() {}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsCategoryController.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsCategoryController.java
index 0f164bb..3174ace 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsCategoryController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsCategoryController.java
@@ -60,6 +60,7 @@
@Override
public void onStart(@NonNull LifecycleOwner owner) {
+ if (!isAvailable()) return;
super.onStart(owner);
if (mLocalBtManager != null) {
mLocalBtManager.getEventManager().registerCallback(mBluetoothCallback);
@@ -68,6 +69,7 @@
@Override
public void onStop(@NonNull LifecycleOwner owner) {
+ if (!isAvailable()) return;
super.onStop(owner);
if (mLocalBtManager != null) {
mLocalBtManager.getEventManager().unregisterCallback(mBluetoothCallback);
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDashboardFragment.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDashboardFragment.java
index f79c597..ce32cdb 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDashboardFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDashboardFragment.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2023 The Android Open Source Project
+ * Copyright (C) 2024 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -19,6 +19,7 @@
import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsScanQrCodeController.REQUEST_SCAN_BT_BROADCAST_QR_CODE;
import android.app.Activity;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.content.Context;
import android.content.Intent;
@@ -32,8 +33,6 @@
import com.android.settingslib.bluetooth.BluetoothLeBroadcastMetadataExt;
import com.android.settingslib.bluetooth.BluetoothUtils;
-import com.google.common.base.Strings;
-
public class AudioStreamsDashboardFragment extends DashboardFragment {
public static final String KEY_BROADCAST_METADATA = "key_broadcast_metadata";
private static final String TAG = "AudioStreamsDashboardFrag";
@@ -46,8 +45,7 @@
@Override
public int getMetricsCategory() {
- // TODO: update category id.
- return 0;
+ return SettingsEnums.AUDIO_STREAM_MAIN;
}
@Override
@@ -78,16 +76,17 @@
mAudioStreamsProgressCategoryController.setFragment(this);
if (getArguments() != null) {
- String broadcastMetadataStr = getArguments().getString(KEY_BROADCAST_METADATA);
- if (!Strings.isNullOrEmpty(broadcastMetadataStr)) {
- BluetoothLeBroadcastMetadata broadcastMetadata =
- BluetoothLeBroadcastMetadataExt.INSTANCE.convertToBroadcastMetadata(
- broadcastMetadataStr);
- if (broadcastMetadata == null) {
- Log.w(TAG, "onAttach() broadcastMetadata is null!");
- } else {
- mAudioStreamsProgressCategoryController.setSourceFromQrCode(broadcastMetadata);
- }
+ var broadcastMetadata =
+ getArguments()
+ .getParcelable(
+ KEY_BROADCAST_METADATA, BluetoothLeBroadcastMetadata.class);
+ if (broadcastMetadata != null) {
+ mAudioStreamsProgressCategoryController.setSourceFromQrCode(
+ broadcastMetadata, SourceOriginForLogging.QR_CODE_SCAN_OTHER);
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_QR_CODE_SCAN_SUCCEED,
+ SourceOriginForLogging.QR_CODE_SCAN_OTHER.ordinal());
}
}
}
@@ -128,7 +127,12 @@
"onActivityResult() AudioStreamsProgressCategoryController is null!");
return;
}
- mAudioStreamsProgressCategoryController.setSourceFromQrCode(source);
+ mAudioStreamsProgressCategoryController.setSourceFromQrCode(
+ source, SourceOriginForLogging.QR_CODE_SCAN_SETTINGS);
+ mMetricsFeatureProvider.action(
+ getContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_QR_CODE_SCAN_SUCCEED,
+ SourceOriginForLogging.QR_CODE_SCAN_SETTINGS.ordinal());
}
}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDialogFragment.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDialogFragment.java
index eb99b96..83b7d9a 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDialogFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDialogFragment.java
@@ -18,6 +18,7 @@
import android.app.AlertDialog;
import android.app.Dialog;
+import android.app.settings.SettingsEnums;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
@@ -43,15 +44,16 @@
public class AudioStreamsDialogFragment extends InstrumentedDialogFragment {
private static final String TAG = "AudioStreamsDialogFragment";
private final DialogBuilder mDialogBuilder;
+ private int mDialogId = SettingsEnums.PAGE_UNKNOWN;
- AudioStreamsDialogFragment(DialogBuilder dialogBuilder) {
+ AudioStreamsDialogFragment(DialogBuilder dialogBuilder, int dialogId) {
mDialogBuilder = dialogBuilder;
+ mDialogId = dialogId;
}
@Override
public int getMetricsCategory() {
- // TODO(chelseahao): update metrics id
- return 0;
+ return mDialogId;
}
@Override
@@ -64,14 +66,15 @@
*
* @param host The fragment to host the dialog.
* @param dialogBuilder The builder for constructing the dialog.
+ * @param dialogId The dialog settings enum for logging
*/
- public static void show(Fragment host, DialogBuilder dialogBuilder) {
+ public static void show(Fragment host, DialogBuilder dialogBuilder, int dialogId) {
if (!host.isAdded()) {
Log.w(TAG, "The host fragment is not added to the activity!");
return;
}
FragmentManager manager = host.getChildFragmentManager();
- (new AudioStreamsDialogFragment(dialogBuilder)).show(manager, TAG);
+ (new AudioStreamsDialogFragment(dialogBuilder, dialogId)).show(manager, TAG);
}
static void dismissAll(Fragment host) {
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsHelper.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsHelper.java
index 04e791f..775186a 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsHelper.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsHelper.java
@@ -139,8 +139,10 @@
.toList();
}
+ /** Retrieves LocalBluetoothLeBroadcastAssistant. */
+ @VisibleForTesting
@Nullable
- LocalBluetoothLeBroadcastAssistant getLeBroadcastAssistant() {
+ public LocalBluetoothLeBroadcastAssistant getLeBroadcastAssistant() {
return mLeBroadcastAssistant;
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsProgressCategoryController.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsProgressCategoryController.java
index 749220f..890879e 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsProgressCategoryController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsProgressCategoryController.java
@@ -19,12 +19,11 @@
import static java.util.Collections.emptyList;
import android.app.AlertDialog;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.bluetooth.BluetoothLeBroadcastReceiveState;
import android.bluetooth.BluetoothProfile;
import android.content.Context;
-import android.content.Intent;
-import android.provider.Settings;
import android.util.Log;
import androidx.annotation.NonNull;
@@ -34,8 +33,10 @@
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
+import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
import com.android.settings.connecteddevice.audiosharing.AudioSharingUtils;
import com.android.settings.core.BasePreferenceController;
+import com.android.settings.core.SubSettingLauncher;
import com.android.settingslib.bluetooth.BluetoothCallback;
import com.android.settingslib.bluetooth.BluetoothUtils;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
@@ -100,6 +101,7 @@
private final ConcurrentHashMap<Integer, AudioStreamPreference> mBroadcastIdToPreferenceMap =
new ConcurrentHashMap<>();
private @Nullable BluetoothLeBroadcastMetadata mSourceFromQrCode;
+ private SourceOriginForLogging mSourceFromQrCodeOriginForLogging;
@Nullable private AudioStreamsProgressCategoryPreference mCategoryPreference;
@Nullable private AudioStreamsDashboardFragment mFragment;
@@ -149,11 +151,13 @@
return mFragment;
}
- void setSourceFromQrCode(BluetoothLeBroadcastMetadata source) {
+ void setSourceFromQrCode(
+ BluetoothLeBroadcastMetadata source, SourceOriginForLogging sourceOriginForLogging) {
if (DEBUG) {
Log.d(TAG, "setSourceFromQrCode(): broadcastId " + source.getBroadcastId());
}
mSourceFromQrCode = source;
+ mSourceFromQrCodeOriginForLogging = sourceOriginForLogging;
}
void setScanning(boolean isScanning) {
@@ -196,7 +200,10 @@
broadcastIdFound,
(k, existingPreference) -> {
if (existingPreference == null) {
- return addNewPreference(source, AudioStreamState.SYNCED);
+ return addNewPreference(
+ source,
+ AudioStreamState.SYNCED,
+ SourceOriginForLogging.BROADCAST_SEARCH);
}
var fromState = existingPreference.getAudioStreamState();
if (fromState == AudioStreamState.WAIT_FOR_SYNC && mSourceFromQrCode != null) {
@@ -268,7 +275,9 @@
// Check nullability to bypass NullAway check.
if (mSourceFromQrCode != null) {
return addNewPreference(
- mSourceFromQrCode, AudioStreamState.WAIT_FOR_SYNC);
+ mSourceFromQrCode,
+ AudioStreamState.WAIT_FOR_SYNC,
+ mSourceFromQrCodeOriginForLogging);
}
}
Log.w(
@@ -472,7 +481,10 @@
mContext,
() -> {
if (mFragment != null) {
- AudioStreamsDialogFragment.show(mFragment, getNoLeDeviceDialog());
+ AudioStreamsDialogFragment.show(
+ mFragment,
+ getNoLeDeviceDialog(),
+ SettingsEnums.DIALOG_AUDIO_STREAM_MAIN_NO_LE_DEVICE);
}
});
}
@@ -525,23 +537,27 @@
}
private AudioStreamPreference addNewPreference(
- BluetoothLeBroadcastMetadata metadata, AudioStreamState state) {
- var preference = AudioStreamPreference.fromMetadata(mContext, metadata);
+ BluetoothLeBroadcastMetadata metadata,
+ AudioStreamState state,
+ SourceOriginForLogging sourceOriginForLogging) {
+ var preference =
+ AudioStreamPreference.fromMetadata(mContext, metadata, sourceOriginForLogging);
moveToState(preference, state);
return preference;
}
private void moveToState(AudioStreamPreference preference, AudioStreamState state) {
- AudioStreamStateHandler stateHandler = switch (state) {
- case SYNCED -> SyncedState.getInstance();
- case WAIT_FOR_SYNC -> WaitForSyncState.getInstance();
- case ADD_SOURCE_WAIT_FOR_RESPONSE ->
- AddSourceWaitForResponseState.getInstance();
- case ADD_SOURCE_BAD_CODE -> AddSourceBadCodeState.getInstance();
- case ADD_SOURCE_FAILED -> AddSourceFailedState.getInstance();
- case SOURCE_ADDED -> SourceAddedState.getInstance();
- default -> throw new IllegalArgumentException("Unsupported state: " + state);
- };
+ AudioStreamStateHandler stateHandler =
+ switch (state) {
+ case SYNCED -> SyncedState.getInstance();
+ case WAIT_FOR_SYNC -> WaitForSyncState.getInstance();
+ case ADD_SOURCE_WAIT_FOR_RESPONSE ->
+ AddSourceWaitForResponseState.getInstance();
+ case ADD_SOURCE_BAD_CODE -> AddSourceBadCodeState.getInstance();
+ case ADD_SOURCE_FAILED -> AddSourceFailedState.getInstance();
+ case SOURCE_ADDED -> SourceAddedState.getInstance();
+ default -> throw new IllegalArgumentException("Unsupported state: " + state);
+ };
stateHandler.handleStateChange(preference, this, mAudioStreamsHelper);
@@ -566,9 +582,12 @@
mContext.getString(R.string.audio_streams_dialog_no_le_device_button))
.setRightButtonOnClickListener(
dialog -> {
- mContext.startActivity(
- new Intent(Settings.ACTION_BLUETOOTH_SETTINGS)
- .setPackage(mContext.getPackageName()));
+ new SubSettingLauncher(mContext)
+ .setDestination(
+ ConnectedDeviceDashboardFragment.class.getName())
+ .setSourceMetricsCategory(
+ SettingsEnums.DIALOG_AUDIO_STREAM_MAIN_NO_LE_DEVICE)
+ .launch();
dialog.dismiss();
});
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeFragment.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeFragment.java
index 4b6dfa5..e4c0794 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeFragment.java
@@ -16,6 +16,7 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.graphics.Bitmap;
import android.os.Bundle;
@@ -26,6 +27,7 @@
import android.widget.ImageView;
import android.widget.TextView;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.android.settings.R;
@@ -34,10 +36,12 @@
import com.android.settingslib.bluetooth.BluetoothLeBroadcastMetadataExt;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
import com.android.settingslib.qrcode.QrCodeGenerator;
+import com.android.settingslib.utils.ThreadUtils;
import com.google.zxing.WriterException;
import java.nio.charset.StandardCharsets;
+import java.util.List;
import java.util.Optional;
public class AudioStreamsQrCodeFragment extends InstrumentedFragment {
@@ -45,64 +49,75 @@
@Override
public int getMetricsCategory() {
- // TODO(chelseahao): update metrics id
- return 0;
+ return SettingsEnums.AUDIO_STREAM_QR_CODE;
}
@Override
public final View onCreateView(
LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- View view = inflater.inflate(R.xml.bluetooth_audio_streams_qr_code, container, false);
+ return inflater.inflate(R.xml.bluetooth_audio_streams_qr_code, container, false);
+ }
- BluetoothLeBroadcastMetadata broadcastMetadata = getBroadcastMetadata();
+ @Override
+ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+ var unused = ThreadUtils.postOnBackgroundThread(
+ () -> {
+ BluetoothLeBroadcastMetadata broadcastMetadata = getBroadcastMetadata();
+ if (broadcastMetadata == null) {
+ return;
+ }
+ Bitmap bm = getQrCodeBitmap(broadcastMetadata).orElse(null);
+ if (bm == null) {
+ return;
+ }
- if (broadcastMetadata != null) {
- Optional<Bitmap> bm = getQrCodeBitmap(broadcastMetadata);
- if (bm.isEmpty()) {
- return view;
- }
- ((ImageView) view.requireViewById(R.id.qrcode_view)).setImageBitmap(bm.get());
- if (broadcastMetadata.getBroadcastCode() != null) {
- String password =
- new String(broadcastMetadata.getBroadcastCode(), StandardCharsets.UTF_8);
- String passwordText =
- getContext()
- .getString(R.string.audio_streams_qr_code_page_password, password);
- ((TextView) view.requireViewById(R.id.password)).setText(passwordText);
- }
- TextView summaryView = view.requireViewById(android.R.id.summary);
- String summary =
- view.getContext()
- .getString(
- R.string.audio_streams_qr_code_page_description,
- broadcastMetadata.getBroadcastName());
- summaryView.setText(summary);
- }
- return view;
+ ThreadUtils.postOnMainThread(
+ () -> {
+ ((ImageView) view.requireViewById(R.id.qrcode_view))
+ .setImageBitmap(bm);
+ if (broadcastMetadata.getBroadcastCode() != null) {
+ String password =
+ new String(
+ broadcastMetadata.getBroadcastCode(),
+ StandardCharsets.UTF_8);
+ String passwordText =
+ getString(
+ R.string.audio_streams_qr_code_page_password,
+ password);
+ ((TextView) view.requireViewById(R.id.password))
+ .setText(passwordText);
+ }
+ TextView summaryView = view.requireViewById(android.R.id.summary);
+ String summary =
+ getString(
+ R.string.audio_streams_qr_code_page_description,
+ broadcastMetadata.getBroadcastName());
+ summaryView.setText(summary);
+ });
+ });
}
private Optional<Bitmap> getQrCodeBitmap(@Nullable BluetoothLeBroadcastMetadata metadata) {
if (metadata == null) {
- Log.d(TAG, "onCreateView: broadcastMetadata is empty!");
+ Log.d(TAG, "getQrCodeBitmap: broadcastMetadata is empty!");
return Optional.empty();
}
String metadataStr = BluetoothLeBroadcastMetadataExt.INSTANCE.toQrCodeString(metadata);
if (metadataStr.isEmpty()) {
- Log.d(TAG, "onCreateView: metadataStr is empty!");
+ Log.d(TAG, "getQrCodeBitmap: metadataStr is empty!");
return Optional.empty();
}
- Log.i(TAG, "onCreateView: metadataStr : " + metadataStr);
+ Log.d(TAG, "getQrCodeBitmap: metadata : " + metadata);
try {
int qrcodeSize =
- getContext()
- .getResources()
- .getDimensionPixelSize(R.dimen.audio_streams_qrcode_size);
+ getResources().getDimensionPixelSize(R.dimen.audio_streams_qrcode_size);
Bitmap bitmap = QrCodeGenerator.encodeQrCode(metadataStr, qrcodeSize);
return Optional.of(bitmap);
} catch (WriterException e) {
Log.d(
TAG,
- "onCreateView: broadcastMetadata "
+ "getQrCodeBitmap: broadcastMetadata "
+ metadata
+ " qrCode generation exception "
+ e);
@@ -122,13 +137,13 @@
return null;
}
- BluetoothLeBroadcastMetadata metadata =
- localBluetoothLeBroadcast.getLatestBluetoothLeBroadcastMetadata();
- if (metadata == null) {
+ List<BluetoothLeBroadcastMetadata> metadata =
+ localBluetoothLeBroadcast.getAllBroadcastMetadata();
+ if (metadata.isEmpty()) {
Log.d(TAG, "getBroadcastMetadataQrCode: metadata is null!");
return null;
}
- return metadata;
+ return metadata.get(0);
}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeScanFragment.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeScanFragment.java
index 4af2eb5..8df4317 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeScanFragment.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeScanFragment.java
@@ -44,6 +44,7 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
@@ -62,8 +63,8 @@
private static final int MESSAGE_HIDE_ERROR_MESSAGE = 1;
private static final int MESSAGE_SHOW_ERROR_MESSAGE = 2;
private static final int MESSAGE_SCAN_BROADCAST_SUCCESS = 3;
- private static final long SHOW_ERROR_MESSAGE_INTERVAL = 10000;
- private static final long SHOW_SUCCESS_SQUARE_INTERVAL = 1000;
+ @VisibleForTesting static final long SHOW_ERROR_MESSAGE_INTERVAL = 10000;
+ @VisibleForTesting static final long SHOW_SUCCESS_SQUARE_INTERVAL = 1000;
private static final Duration VIBRATE_DURATION_QR_CODE_RECOGNITION = Duration.ofMillis(3);
private final Handler mHandler =
new Handler(Looper.getMainLooper()) {
@@ -248,6 +249,6 @@
@Override
public int getMetricsCategory() {
- return SettingsEnums.LE_AUDIO_BROADCAST_SCAN_QR_CODE;
+ return SettingsEnums.AUDIO_STREAM_QR_CODE_SCAN;
}
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsScanQrCodeController.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsScanQrCodeController.java
index cd99dda..5f50be7 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsScanQrCodeController.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsScanQrCodeController.java
@@ -16,13 +16,13 @@
package com.android.settings.connecteddevice.audiosharing.audiostreams;
-import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothProfile;
import android.content.Context;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
import androidx.lifecycle.DefaultLifecycleObserver;
import androidx.lifecycle.LifecycleOwner;
import androidx.preference.Preference;
@@ -33,7 +33,6 @@
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.SubSettingLauncher;
import com.android.settingslib.bluetooth.BluetoothCallback;
-import com.android.settingslib.bluetooth.BluetoothUtils;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.utils.ThreadUtils;
@@ -42,9 +41,10 @@
implements DefaultLifecycleObserver {
static final int REQUEST_SCAN_BT_BROADCAST_QR_CODE = 0;
private static final String TAG = "AudioStreamsProgressCategoryController";
- private static final boolean DEBUG = BluetoothUtils.D;
- private static final String KEY = "audio_streams_scan_qr_code";
- private final BluetoothCallback mBluetoothCallback =
+ @VisibleForTesting static final String KEY = "audio_streams_scan_qr_code";
+
+ @VisibleForTesting
+ final BluetoothCallback mBluetoothCallback =
new BluetoothCallback() {
@Override
public void onActiveDeviceChanged(
@@ -111,7 +111,7 @@
.setTitleRes(R.string.audio_streams_main_page_scan_qr_code_title)
.setDestination(AudioStreamsQrCodeScanFragment.class.getName())
.setResultListener(mFragment, REQUEST_SCAN_BT_BROADCAST_QR_CODE)
- .setSourceMetricsCategory(SettingsEnums.PAGE_UNKNOWN)
+ .setSourceMetricsCategory(mFragment.getMetricsCategory())
.launch();
return true;
}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/SourceAddedState.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/SourceAddedState.java
index 4fdaf15..ee84429 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/SourceAddedState.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/SourceAddedState.java
@@ -57,6 +57,10 @@
context,
preference.getAudioStreamBroadcastId(),
String.valueOf(preference.getTitle()));
+ mMetricsFeatureProvider.action(
+ preference.getContext(),
+ SettingsEnums.ACTION_AUDIO_STREAM_JOIN_SUCCEED,
+ preference.getSourceOriginForLogging().ordinal());
}
@Override
@@ -79,8 +83,10 @@
.setTitleText(
p.getContext().getString(R.string.audio_streams_detail_page_title))
.setDestination(AudioStreamDetailsFragment.class.getName())
- // TODO(chelseahao): Add logging enum
- .setSourceMetricsCategory(SettingsEnums.PAGE_UNKNOWN)
+ .setSourceMetricsCategory(
+ controller.getFragment() == null
+ ? SettingsEnums.PAGE_UNKNOWN
+ : controller.getFragment().getMetricsCategory())
.setArguments(broadcast)
.launch();
return true;
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/SourceOriginForLogging.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/SourceOriginForLogging.java
new file mode 100644
index 0000000..6ca002a
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/SourceOriginForLogging.java
@@ -0,0 +1,25 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+enum SourceOriginForLogging {
+ UNKNOWN,
+ QR_CODE_SCAN_SETTINGS,
+ QR_CODE_SCAN_OTHER,
+ BROADCAST_SEARCH,
+ REPOSITORY,
+}
diff --git a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncState.java b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncState.java
index 7e6d943..55f61fd 100644
--- a/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncState.java
+++ b/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncState.java
@@ -24,6 +24,7 @@
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
+import androidx.fragment.app.Fragment;
import com.android.settings.R;
import com.android.settings.core.SubSettingLauncher;
@@ -59,16 +60,18 @@
if (preference.isShown()
&& preference.getAudioStreamState() == getStateEnum()) {
controller.handleSourceLost(preference.getAudioStreamBroadcastId());
+ mMetricsFeatureProvider.action(
+ preference.getContext(),
+ SettingsEnums
+ .ACTION_AUDIO_STREAM_JOIN_FAILED_WAIT_FOR_SYNC_TIMEOUT,
+ preference.getSourceOriginForLogging().ordinal());
ThreadUtils.postOnMainThread(
() -> {
if (controller.getFragment() != null) {
- AudioStreamsDialogFragment.show(
+ showBroadcastUnavailableDialog(
controller.getFragment(),
- getBroadcastUnavailableDialog(
- preference.getContext(),
- AudioStreamsHelper.getBroadcastName(
- metadata),
- controller));
+ preference.getContext(),
+ AudioStreamsHelper.getBroadcastName(metadata));
}
});
}
@@ -87,32 +90,37 @@
return AudioStreamsProgressCategoryController.AudioStreamState.WAIT_FOR_SYNC;
}
- private AudioStreamsDialogFragment.DialogBuilder getBroadcastUnavailableDialog(
- Context context,
- String broadcastName,
- AudioStreamsProgressCategoryController controller) {
- return new AudioStreamsDialogFragment.DialogBuilder(context)
- .setTitle(context.getString(R.string.audio_streams_dialog_stream_is_not_available))
- .setSubTitle1(broadcastName)
- .setSubTitle2(context.getString(R.string.audio_streams_is_not_playing))
- .setLeftButtonText(context.getString(R.string.audio_streams_dialog_close))
- .setLeftButtonOnClickListener(AlertDialog::dismiss)
- .setRightButtonText(context.getString(R.string.audio_streams_dialog_retry))
- .setRightButtonOnClickListener(
- dialog -> {
- if (controller.getFragment() != null) {
- new SubSettingLauncher(context)
- .setTitleRes(
- R.string.audio_streams_main_page_scan_qr_code_title)
- .setDestination(
- AudioStreamsQrCodeScanFragment.class.getName())
- .setResultListener(
- controller.getFragment(),
- REQUEST_SCAN_BT_BROADCAST_QR_CODE)
- .setSourceMetricsCategory(SettingsEnums.PAGE_UNKNOWN)
- .launch();
- dialog.dismiss();
- }
- });
+ private void showBroadcastUnavailableDialog(
+ Fragment fragment, Context context, String broadcastName) {
+ var broadcastUnavailableDialog =
+ new AudioStreamsDialogFragment.DialogBuilder(context)
+ .setTitle(
+ context.getString(
+ R.string.audio_streams_dialog_stream_is_not_available))
+ .setSubTitle1(broadcastName)
+ .setSubTitle2(context.getString(R.string.audio_streams_is_not_playing))
+ .setLeftButtonText(context.getString(R.string.audio_streams_dialog_close))
+ .setLeftButtonOnClickListener(AlertDialog::dismiss)
+ .setRightButtonText(context.getString(R.string.audio_streams_dialog_retry))
+ .setRightButtonOnClickListener(
+ dialog -> {
+ launchQrCodeScanFragment(context, fragment);
+ dialog.dismiss();
+ });
+
+ AudioStreamsDialogFragment.show(
+ fragment,
+ broadcastUnavailableDialog,
+ SettingsEnums.DIALOG_AUDIO_STREAM_MAIN_WAIT_FOR_SYNC_TIMEOUT);
+ }
+
+ private void launchQrCodeScanFragment(Context context, Fragment fragment) {
+ new SubSettingLauncher(context)
+ .setTitleRes(R.string.audio_streams_main_page_scan_qr_code_title)
+ .setDestination(AudioStreamsQrCodeScanFragment.class.getName())
+ .setResultListener(fragment, REQUEST_SCAN_BT_BROADCAST_QR_CODE)
+ .setSourceMetricsCategory(
+ SettingsEnums.DIALOG_AUDIO_STREAM_MAIN_WAIT_FOR_SYNC_TIMEOUT)
+ .launch();
}
}
diff --git a/src/com/android/settings/development/AdbPreferenceController.java b/src/com/android/settings/development/AdbPreferenceController.java
index 468c5bd..629dea1 100644
--- a/src/com/android/settings/development/AdbPreferenceController.java
+++ b/src/com/android/settings/development/AdbPreferenceController.java
@@ -28,9 +28,10 @@
public class AdbPreferenceController extends AbstractEnableAdbPreferenceController implements
PreferenceControllerMixin {
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
- public AdbPreferenceController(Context context, DevelopmentSettingsDashboardFragment fragment) {
+ public AdbPreferenceController(Context context,
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
}
diff --git a/src/com/android/settings/development/BackAnimationPreferenceController.java b/src/com/android/settings/development/BackAnimationPreferenceController.java
index 09af27a..f87ee09 100644
--- a/src/com/android/settings/development/BackAnimationPreferenceController.java
+++ b/src/com/android/settings/development/BackAnimationPreferenceController.java
@@ -40,7 +40,7 @@
private static final int SETTING_VALUE_OFF = 0;
private static final int SETTING_VALUE_ON = 1;
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
@VisibleForTesting
BackAnimationPreferenceController(Context context) {
diff --git a/src/com/android/settings/development/BackgroundProcessLimitPreferenceController.java b/src/com/android/settings/development/BackgroundProcessLimitPreferenceController.java
new file mode 100644
index 0000000..7a7d6fa
--- /dev/null
+++ b/src/com/android/settings/development/BackgroundProcessLimitPreferenceController.java
@@ -0,0 +1,104 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.development;
+
+import android.app.ActivityManager;
+import android.app.IActivityManager;
+import android.content.Context;
+import android.os.RemoteException;
+
+import androidx.annotation.VisibleForTesting;
+import androidx.preference.ListPreference;
+import androidx.preference.Preference;
+
+import com.android.settings.core.PreferenceControllerMixin;
+import com.android.settingslib.R;
+import com.android.settingslib.development.DeveloperOptionsPreferenceController;
+
+public class BackgroundProcessLimitPreferenceController extends
+ DeveloperOptionsPreferenceController implements Preference.OnPreferenceChangeListener,
+ PreferenceControllerMixin {
+
+ private static final String APP_PROCESS_LIMIT_KEY = "app_process_limit";
+
+ private final String[] mListValues;
+ private final String[] mListSummaries;
+
+ public BackgroundProcessLimitPreferenceController(Context context) {
+ super(context);
+
+ mListValues = context.getResources().getStringArray(R.array.app_process_limit_values);
+ mListSummaries = context.getResources().getStringArray(R.array.app_process_limit_entries);
+ }
+
+ @Override
+ public String getPreferenceKey() {
+ return APP_PROCESS_LIMIT_KEY;
+ }
+
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ writeAppProcessLimitOptions(newValue);
+ updateAppProcessLimitOptions();
+ return true;
+ }
+
+ @Override
+ public void updateState(Preference preference) {
+ updateAppProcessLimitOptions();
+ }
+
+ @Override
+ protected void onDeveloperOptionsSwitchDisabled() {
+ super.onDeveloperOptionsSwitchDisabled();
+ writeAppProcessLimitOptions(null);
+ }
+
+ private void updateAppProcessLimitOptions() {
+ try {
+ final int limit = getActivityManagerService().getProcessLimit();
+ int index = 0; // default
+ for (int i = 0; i < mListValues.length; i++) {
+ int val = Integer.parseInt(mListValues[i]);
+ if (val >= limit) {
+ index = i;
+ break;
+ }
+ }
+ final ListPreference listPreference = (ListPreference) mPreference;
+ listPreference.setValue(mListValues[index]);
+ listPreference.setSummary(mListSummaries[index]);
+ } catch (RemoteException e) {
+ // intentional no-op
+ }
+ }
+
+ private void writeAppProcessLimitOptions(Object newValue) {
+ try {
+ final int limit = newValue != null ? Integer.parseInt(newValue.toString()) : -1;
+ getActivityManagerService().setProcessLimit(limit);
+ updateAppProcessLimitOptions();
+ } catch (RemoteException e) {
+ // intentional no-op
+ }
+ }
+
+ @VisibleForTesting
+ IActivityManager getActivityManagerService() {
+ return ActivityManager.getService();
+ }
+}
diff --git a/src/com/android/settings/development/BluetoothA2dpHwOffloadPreferenceController.java b/src/com/android/settings/development/BluetoothA2dpHwOffloadPreferenceController.java
index b43303b..f460b9e 100644
--- a/src/com/android/settings/development/BluetoothA2dpHwOffloadPreferenceController.java
+++ b/src/com/android/settings/development/BluetoothA2dpHwOffloadPreferenceController.java
@@ -21,6 +21,7 @@
import android.content.Context;
import android.os.SystemProperties;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -32,7 +33,7 @@
implements Preference.OnPreferenceChangeListener, PreferenceControllerMixin {
private static final String PREFERENCE_KEY = "bluetooth_disable_a2dp_hw_offload";
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
static final String A2DP_OFFLOAD_DISABLED_PROPERTY = "persist.bluetooth.a2dp_offload.disabled";
static final String A2DP_OFFLOAD_SUPPORTED_PROPERTY = "ro.bluetooth.a2dp_offload.supported";
@@ -41,7 +42,7 @@
boolean mChanged = false;
public BluetoothA2dpHwOffloadPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
}
diff --git a/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceController.java b/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceController.java
index 51533e7..4e9bd1d 100644
--- a/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceController.java
+++ b/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceController.java
@@ -49,12 +49,8 @@
BluetoothAdapter mBluetoothAdapter;
@VisibleForTesting boolean mLeAudioConnectionByDefault;
- private final DevelopmentSettingsDashboardFragment mFragment;
-
- public BluetoothLeAudioAllowListPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ public BluetoothLeAudioAllowListPreferenceController(Context context) {
super(context);
- mFragment = fragment;
mBluetoothAdapter = context.getSystemService(BluetoothManager.class).getAdapter();
mLeAudioConnectionByDefault =
SystemProperties.getBoolean(LE_AUDIO_CONNECTION_BY_DEFAULT_PROPERTY, true);
diff --git a/src/com/android/settings/development/BluetoothLeAudioHwOffloadPreferenceController.java b/src/com/android/settings/development/BluetoothLeAudioHwOffloadPreferenceController.java
index 91b9eb8..1890fbd 100644
--- a/src/com/android/settings/development/BluetoothLeAudioHwOffloadPreferenceController.java
+++ b/src/com/android/settings/development/BluetoothLeAudioHwOffloadPreferenceController.java
@@ -24,6 +24,7 @@
import android.content.Context;
import android.os.SystemProperties;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -39,7 +40,7 @@
implements Preference.OnPreferenceChangeListener, PreferenceControllerMixin {
private static final String PREFERENCE_KEY = "bluetooth_disable_le_audio_hw_offload";
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
static final String LE_AUDIO_OFFLOAD_DISABLED_PROPERTY =
"persist.bluetooth.leaudio_offload.disabled";
@@ -53,7 +54,7 @@
boolean mChanged = false;
public BluetoothLeAudioHwOffloadPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
mBluetoothAdapter = context.getSystemService(BluetoothManager.class).getAdapter();
diff --git a/src/com/android/settings/development/BluetoothLeAudioPreferenceController.java b/src/com/android/settings/development/BluetoothLeAudioPreferenceController.java
index 2a544f2..c3b491a 100644
--- a/src/com/android/settings/development/BluetoothLeAudioPreferenceController.java
+++ b/src/com/android/settings/development/BluetoothLeAudioPreferenceController.java
@@ -23,6 +23,7 @@
import android.os.SystemProperties;
import android.sysprop.BluetoothProperties;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -45,7 +46,7 @@
static final String LE_AUDIO_SWITCHER_DISABLED_PROPERTY =
"persist.bluetooth.leaudio_switcher.disabled";
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
@VisibleForTesting
BluetoothAdapter mBluetoothAdapter;
@@ -54,7 +55,7 @@
boolean mChanged = false;
public BluetoothLeAudioPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
mBluetoothAdapter = context.getSystemService(BluetoothManager.class).getAdapter();
diff --git a/src/com/android/settings/development/BluetoothSnoopLogPreferenceController.java b/src/com/android/settings/development/BluetoothSnoopLogPreferenceController.java
index 1ef4810..9e05891 100644
--- a/src/com/android/settings/development/BluetoothSnoopLogPreferenceController.java
+++ b/src/com/android/settings/development/BluetoothSnoopLogPreferenceController.java
@@ -22,6 +22,7 @@
import android.provider.Settings;
import android.text.TextUtils;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.ListPreference;
import androidx.preference.Preference;
@@ -42,10 +43,10 @@
private final String[] mListValues;
private final String[] mListEntries;
- private DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private DevelopmentSettingsDashboardFragment mFragment;
public BluetoothSnoopLogPreferenceController(
- Context context, DevelopmentSettingsDashboardFragment fragment) {
+ Context context, @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mListValues = context.getResources()
.getStringArray(com.android.settingslib.R.array.bt_hci_snoop_log_values);
diff --git a/src/com/android/settings/development/ClearAdbKeysPreferenceController.java b/src/com/android/settings/development/ClearAdbKeysPreferenceController.java
index 69e6c69..d1e797d 100644
--- a/src/com/android/settings/development/ClearAdbKeysPreferenceController.java
+++ b/src/com/android/settings/development/ClearAdbKeysPreferenceController.java
@@ -25,6 +25,7 @@
import android.text.TextUtils;
import android.util.Log;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
@@ -40,10 +41,10 @@
private static final String CLEAR_ADB_KEYS = "clear_adb_keys";
private final IAdbManager mAdbManager;
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
public ClearAdbKeysPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
diff --git a/src/com/android/settings/development/DesktopModePreferenceController.java b/src/com/android/settings/development/DesktopModePreferenceController.java
index dcd0c14..c6b2397 100644
--- a/src/com/android/settings/development/DesktopModePreferenceController.java
+++ b/src/com/android/settings/development/DesktopModePreferenceController.java
@@ -22,6 +22,7 @@
import android.os.Build;
import android.provider.Settings;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -41,10 +42,10 @@
@VisibleForTesting
static final int SETTING_VALUE_ON = 1;
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
public DesktopModePreferenceController(
- Context context, DevelopmentSettingsDashboardFragment fragment) {
+ Context context, @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
}
diff --git a/src/com/android/settings/development/DevelopmentMemtagPagePreferenceController.java b/src/com/android/settings/development/DevelopmentMemtagPagePreferenceController.java
index 240079b..f80ebc6 100644
--- a/src/com/android/settings/development/DevelopmentMemtagPagePreferenceController.java
+++ b/src/com/android/settings/development/DevelopmentMemtagPagePreferenceController.java
@@ -26,8 +26,7 @@
implements PreferenceControllerMixin {
private static final String KEY_DEVELOPMENT_MEMTAG_PAGE = "development_memtag_page";
- public DevelopmentMemtagPagePreferenceController(
- Context context, DevelopmentSettingsDashboardFragment fragment) {
+ public DevelopmentMemtagPagePreferenceController(Context context) {
super(context);
}
diff --git a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
index dd9a1f0..38cb6c7 100644
--- a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
+++ b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
@@ -655,7 +655,7 @@
controllers.add(new BugReportPreferenceController(context));
controllers.add(new BugReportHandlerPreferenceController(context));
controllers.add(new SystemServerHeapDumpPreferenceController(context));
- controllers.add(new DevelopmentMemtagPagePreferenceController(context, fragment));
+ controllers.add(new DevelopmentMemtagPagePreferenceController(context));
controllers.add(new LocalBackupPasswordPreferenceController(context));
controllers.add(new StayAwakePreferenceController(context, lifecycle));
controllers.add(new HdcpCheckingPreferenceController(context));
@@ -706,7 +706,7 @@
controllers.add(new BluetoothLeAudioPreferenceController(context, fragment));
controllers.add(new BluetoothLeAudioModePreferenceController(context, fragment));
controllers.add(new BluetoothLeAudioDeviceDetailsPreferenceController(context));
- controllers.add(new BluetoothLeAudioAllowListPreferenceController(context, fragment));
+ controllers.add(new BluetoothLeAudioAllowListPreferenceController(context));
controllers.add(new BluetoothA2dpHwOffloadPreferenceController(context, fragment));
controllers.add(new BluetoothLeAudioHwOffloadPreferenceController(context, fragment));
controllers.add(new BluetoothMaxConnectedAudioDevicesPreferenceController(context));
@@ -740,6 +740,7 @@
controllers.add(new StrictModePreferenceController(context));
controllers.add(new ProfileGpuRenderingPreferenceController(context));
controllers.add(new KeepActivitiesPreferenceController(context));
+ controllers.add(new BackgroundProcessLimitPreferenceController(context));
controllers.add(new CachedAppsFreezerPreferenceController(context));
controllers.add(new ShowFirstCrashDialogPreferenceController(context));
controllers.add(new AppsNotRespondingPreferenceController(context));
diff --git a/src/com/android/settings/development/Enable16kPagesPreferenceController.java b/src/com/android/settings/development/Enable16kPagesPreferenceController.java
index 0572b1b..b782788 100644
--- a/src/com/android/settings/development/Enable16kPagesPreferenceController.java
+++ b/src/com/android/settings/development/Enable16kPagesPreferenceController.java
@@ -34,6 +34,7 @@
import android.widget.Toast;
import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.appcompat.app.AlertDialog;
import androidx.core.content.ContextCompat;
@@ -86,7 +87,7 @@
private static final int OFFSET_TO_FILE_NAME = 30;
public static final String EXPERIMENTAL_UPDATE_TITLE = "Android 16K Kernel Experimental Update";
- private @NonNull DevelopmentSettingsDashboardFragment mFragment;
+ private @Nullable DevelopmentSettingsDashboardFragment mFragment;
private boolean mEnable16k;
private final ListeningExecutorService mExecutorService =
@@ -95,7 +96,7 @@
private AlertDialog mProgressDialog;
public Enable16kPagesPreferenceController(
- @NonNull Context context, @NonNull DevelopmentSettingsDashboardFragment fragment) {
+ @NonNull Context context, @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
this.mFragment = fragment;
mEnable16k = Enable16kUtils.isUsing16kbPages();
diff --git a/src/com/android/settings/development/FreeformWindowsPreferenceController.java b/src/com/android/settings/development/FreeformWindowsPreferenceController.java
index 872c046..7cf7738 100644
--- a/src/com/android/settings/development/FreeformWindowsPreferenceController.java
+++ b/src/com/android/settings/development/FreeformWindowsPreferenceController.java
@@ -20,6 +20,7 @@
import android.os.Build;
import android.provider.Settings;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -39,10 +40,10 @@
@VisibleForTesting
static final int SETTING_VALUE_ON = 1;
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
public FreeformWindowsPreferenceController(
- Context context, DevelopmentSettingsDashboardFragment fragment) {
+ Context context, @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
}
diff --git a/src/com/android/settings/development/LogPersistPreferenceController.java b/src/com/android/settings/development/LogPersistPreferenceController.java
index 1386cec..66c128c 100644
--- a/src/com/android/settings/development/LogPersistPreferenceController.java
+++ b/src/com/android/settings/development/LogPersistPreferenceController.java
@@ -28,10 +28,10 @@
public class LogPersistPreferenceController extends AbstractLogpersistPreferenceController
implements PreferenceControllerMixin {
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
public LogPersistPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment, Lifecycle lifecycle) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment, Lifecycle lifecycle) {
super(context, lifecycle);
mFragment = fragment;
diff --git a/src/com/android/settings/development/MockLocationAppPreferenceController.java b/src/com/android/settings/development/MockLocationAppPreferenceController.java
index d927c31..51753fe 100644
--- a/src/com/android/settings/development/MockLocationAppPreferenceController.java
+++ b/src/com/android/settings/development/MockLocationAppPreferenceController.java
@@ -30,6 +30,7 @@
import android.provider.Settings;
import android.text.TextUtils;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
@@ -45,12 +46,12 @@
private static final String MOCK_LOCATION_APP_KEY = "mock_location_app";
private static final int[] MOCK_LOCATION_APP_OPS = new int[]{AppOpsManager.OP_MOCK_LOCATION};
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
private final AppOpsManager mAppsOpsManager;
private final PackageManager mPackageManager;
public MockLocationAppPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
diff --git a/src/com/android/settings/development/NfcSnoopLogPreferenceController.java b/src/com/android/settings/development/NfcSnoopLogPreferenceController.java
index 01fbb92..ce9d04d 100644
--- a/src/com/android/settings/development/NfcSnoopLogPreferenceController.java
+++ b/src/com/android/settings/development/NfcSnoopLogPreferenceController.java
@@ -20,6 +20,7 @@
import android.os.SystemProperties;
import android.util.Log;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -45,10 +46,10 @@
@VisibleForTesting
boolean mChanged = false;
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
public NfcSnoopLogPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
}
diff --git a/src/com/android/settings/development/NfcVerboseVendorLogPreferenceController.java b/src/com/android/settings/development/NfcVerboseVendorLogPreferenceController.java
index d0f9d9e..2644bbd 100644
--- a/src/com/android/settings/development/NfcVerboseVendorLogPreferenceController.java
+++ b/src/com/android/settings/development/NfcVerboseVendorLogPreferenceController.java
@@ -20,6 +20,7 @@
import android.os.SystemProperties;
import android.util.Log;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -45,10 +46,10 @@
@VisibleForTesting
boolean mChanged = false;
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
public NfcVerboseVendorLogPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
}
diff --git a/src/com/android/settings/development/OemUnlockPreferenceController.java b/src/com/android/settings/development/OemUnlockPreferenceController.java
index 2542a11..3053def 100644
--- a/src/com/android/settings/development/OemUnlockPreferenceController.java
+++ b/src/com/android/settings/development/OemUnlockPreferenceController.java
@@ -31,6 +31,7 @@
import android.text.TextUtils;
import android.util.Log;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
@@ -54,11 +55,11 @@
private final UserManager mUserManager;
private final TelephonyManager mTelephonyManager;
private final Activity mActivity;
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
private RestrictedSwitchPreference mPreference;
public OemUnlockPreferenceController(Context context, Activity activity,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
if (!TextUtils.equals(SystemProperties.get(OEM_UNLOCK_SUPPORTED_KEY, UNSUPPORTED),
diff --git a/src/com/android/settings/development/SelectDebugAppPreferenceController.java b/src/com/android/settings/development/SelectDebugAppPreferenceController.java
index d691149..df524c4 100644
--- a/src/com/android/settings/development/SelectDebugAppPreferenceController.java
+++ b/src/com/android/settings/development/SelectDebugAppPreferenceController.java
@@ -28,6 +28,7 @@
import android.provider.Settings;
import android.text.TextUtils;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
@@ -40,11 +41,11 @@
private static final String DEBUG_APP_KEY = "debug_app";
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
private final PackageManager mPackageManager;
public SelectDebugAppPreferenceController(Context context,
- DevelopmentSettingsDashboardFragment fragment) {
+ @Nullable DevelopmentSettingsDashboardFragment fragment) {
super(context);
mFragment = fragment;
mPackageManager = mContext.getPackageManager();
diff --git a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
index b7b5574..6b29b8e 100644
--- a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
@@ -22,6 +22,7 @@
import android.content.Context;
import android.util.Log;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.PreferenceScreen;
@@ -41,11 +42,11 @@
private static final String KEY = "bluetooth_audio_codec_settings";
private static final String TAG = "BtCodecCtr";
- private final Callback mCallback;
+ @Nullable private final Callback mCallback;
public BluetoothCodecDialogPreferenceController(Context context, Lifecycle lifecycle,
BluetoothA2dpConfigStore store,
- Callback callback) {
+ @Nullable Callback callback) {
super(context, lifecycle, store);
mCallback = callback;
}
diff --git a/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java b/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java
index feaa36e..878ddb6 100644
--- a/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java
@@ -21,6 +21,7 @@
import android.content.Context;
import android.util.Log;
+import androidx.annotation.Nullable;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -36,11 +37,11 @@
private static final String KEY = "bluetooth_hd_audio_settings";
private static final String TAG = "BtHDAudioCtr";
- private final Callback mCallback;
+ @Nullable private final Callback mCallback;
public BluetoothHDAudioPreferenceController(Context context, Lifecycle lifecycle,
BluetoothA2dpConfigStore store,
- Callback callback) {
+ @Nullable Callback callback) {
super(context, lifecycle, store);
mCallback = callback;
}
diff --git a/src/com/android/settings/development/graphicsdriver/GraphicsDriverEnableAngleAsSystemDriverController.java b/src/com/android/settings/development/graphicsdriver/GraphicsDriverEnableAngleAsSystemDriverController.java
index b107501..e7ee9e1 100644
--- a/src/com/android/settings/development/graphicsdriver/GraphicsDriverEnableAngleAsSystemDriverController.java
+++ b/src/com/android/settings/development/graphicsdriver/GraphicsDriverEnableAngleAsSystemDriverController.java
@@ -23,6 +23,7 @@
import android.text.TextUtils;
import android.util.Log;
+import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
@@ -45,7 +46,7 @@
private static final String ENABLE_ANELE_AS_SYSTEM_DRIVER_KEY = "enable_angle_as_system_driver";
- private final DevelopmentSettingsDashboardFragment mFragment;
+ @Nullable private final DevelopmentSettingsDashboardFragment mFragment;
private final GraphicsDriverSystemPropertiesWrapper mSystemProperties;
@@ -83,7 +84,7 @@
}
public GraphicsDriverEnableAngleAsSystemDriverController(
- Context context, DevelopmentSettingsDashboardFragment fragment) {
+ Context context, @Nullable DevelopmentSettingsDashboardFragment fragment) {
this(context, fragment, new Injector());
}
@@ -96,7 +97,7 @@
@VisibleForTesting
GraphicsDriverEnableAngleAsSystemDriverController(
- Context context, DevelopmentSettingsDashboardFragment fragment, Injector injector) {
+ Context context, @Nullable DevelopmentSettingsDashboardFragment fragment, Injector injector) {
super(context);
mFragment = fragment;
mSystemProperties = injector.createSystemPropertiesWrapper();
diff --git a/src/com/android/settings/display/EvenDimmerPreferenceController.java b/src/com/android/settings/display/EvenDimmerPreferenceController.java
index 2a0f16d..6854213 100644
--- a/src/com/android/settings/display/EvenDimmerPreferenceController.java
+++ b/src/com/android/settings/display/EvenDimmerPreferenceController.java
@@ -50,11 +50,7 @@
com.android.internal.R.bool.config_evenDimmerEnabled);
if (Flags.evenDimmer() && enabledInConfig) {
- return Settings.System.getInt(mContext.getContentResolver(),
- Settings.System.SCREEN_BRIGHTNESS_MODE,
- Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL)
- == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC ? AVAILABLE
- : DISABLED_DEPENDENT_SETTING;
+ return AVAILABLE;
} else {
return UNSUPPORTED_ON_DEVICE;
}
diff --git a/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java b/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
index 0365f80..7d15858 100644
--- a/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
@@ -97,6 +97,9 @@
final CharSequence wirelessChargingLabel =
mBatterySettingsFeatureProvider.getWirelessChargingLabel(mContext, info);
if (wirelessChargingLabel != null) {
+ mBatteryUsageProgressBarPref.setBottomSummaryContentDescription(
+ mBatterySettingsFeatureProvider
+ .getWirelessChargingContentDescription(mContext, info));
return wirelessChargingLabel;
}
}
diff --git a/src/com/android/settings/fuelgauge/BatterySettingsFeatureProvider.java b/src/com/android/settings/fuelgauge/BatterySettingsFeatureProvider.java
index 454a295..d001bcc 100644
--- a/src/com/android/settings/fuelgauge/BatterySettingsFeatureProvider.java
+++ b/src/com/android/settings/fuelgauge/BatterySettingsFeatureProvider.java
@@ -49,6 +49,11 @@
@Nullable
CharSequence getWirelessChargingLabel(@NonNull Context context, @NonNull BatteryInfo info);
+ /** Return a content description for the bottom summary during wireless charging. */
+ @Nullable
+ CharSequence getWirelessChargingContentDescription(
+ @NonNull Context context, @NonNull BatteryInfo info);
+
/** Return a charging remaining time label for wireless charging. */
@Nullable
CharSequence getWirelessChargingRemainingLabel(
diff --git a/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImpl.java b/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImpl.java
index 40cfd0c..4b5d952 100644
--- a/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImpl.java
+++ b/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImpl.java
@@ -63,6 +63,13 @@
@Nullable
@Override
+ public CharSequence getWirelessChargingContentDescription(
+ @NonNull Context context, @NonNull BatteryInfo info) {
+ return null;
+ }
+
+ @Nullable
+ @Override
public CharSequence getWirelessChargingRemainingLabel(
@NonNull Context context, long remainingTimeMs, long currentTimeMs) {
return null;
diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
index f63b649..0132273 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
@@ -39,6 +39,9 @@
/** Check whether the battery tips card is enabled in the battery usage page */
boolean isBatteryTipsEnabled();
+ /** Check whether force expire the app optimization mode. */
+ boolean isForceExpireAppOptimizationModeEnabled();
+
/** Check whether to log the optimization mode of app entry in period job */
boolean isAppOptimizationModeLogged();
diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java
index cc6659a..1675ce6 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java
@@ -84,6 +84,11 @@
}
@Override
+ public boolean isForceExpireAppOptimizationModeEnabled() {
+ return false;
+ }
+
+ @Override
public boolean isAppOptimizationModeLogged() {
return false;
}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtils.kt b/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtils.kt
index 1111bd4..afff1c9 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtils.kt
+++ b/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtils.kt
@@ -25,6 +25,7 @@
import com.android.settings.fuelgauge.BatteryOptimizeHistoricalLogEntry.Action
import com.android.settings.fuelgauge.BatteryOptimizeUtils
import com.android.settings.fuelgauge.BatteryUtils
+import com.android.settings.overlay.FeatureFactory.Companion.featureFactory
/** A util to store and update app optimization mode expiration event data. */
object AppOptModeSharedPreferencesUtils {
@@ -74,10 +75,14 @@
@JvmStatic
fun resetExpiredAppOptModeBeforeTimestamp(context: Context, queryTimestampMs: Long) =
synchronized(appOptimizationModeLock) {
+ val forceExpireEnabled =
+ featureFactory
+ .powerUsageFeatureProvider.isForceExpireAppOptimizationModeEnabled
val eventsMap = getAppOptModeEventsMap(context)
val expirationUids = ArrayList<Int>(eventsMap.size)
for ((uid, event) in eventsMap) {
- if (event.expirationTime > queryTimestampMs) {
+ // Not reset the mode if forceExpireEnabled is false and not expired.
+ if (!forceExpireEnabled && event.expirationTime > queryTimestampMs) {
continue
}
updateBatteryOptimizationMode(
diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageBreakdownController.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageBreakdownController.java
index f9565f4..f451f0a 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageBreakdownController.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageBreakdownController.java
@@ -87,6 +87,7 @@
@VisibleForTesting PreferenceGroup mAppListPreferenceGroup;
@VisibleForTesting FooterPreference mFooterPreference;
@VisibleForTesting BatteryDiffData mBatteryDiffData;
+ @VisibleForTesting String mBatteryUsageBreakdownTitleLastFullChargeText;
@VisibleForTesting String mPercentLessThanThresholdText;
@VisibleForTesting String mPercentLessThanThresholdContentDescription;
@VisibleForTesting boolean mIsHighlightSlot;
@@ -147,9 +148,10 @@
private void logPreferenceClickedMetrics(BatteryDiffEntry entry) {
final int attribution = SettingsEnums.OPEN_BATTERY_USAGE;
- final int action = entry.isSystemEntry()
- ? SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM
- : SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM;
+ final int action =
+ entry.isSystemEntry()
+ ? SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM
+ : SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM;
final int pageId = SettingsEnums.OPEN_BATTERY_USAGE;
final String packageName =
TextUtils.isEmpty(entry.getPackageName())
@@ -203,6 +205,9 @@
mSpinnerPreference = screen.findPreference(SPINNER_PREFERENCE_KEY);
mAppListPreferenceGroup = screen.findPreference(APP_LIST_PREFERENCE_KEY);
mFooterPreference = screen.findPreference(FOOTER_PREFERENCE_KEY);
+ mBatteryUsageBreakdownTitleLastFullChargeText =
+ mPrefContext.getString(
+ R.string.battery_usage_breakdown_title_since_last_full_charge);
final String formatPercentage =
Utils.formatPercentage(BatteryDiffData.SMALL_PERCENTAGE_THRESHOLD, false);
mPercentLessThanThresholdText =
@@ -254,6 +259,7 @@
void handleBatteryUsageUpdated(
BatteryDiffData slotUsageData,
String slotTimestamp,
+ String accessibilitySlotTimestamp,
boolean isAllUsageDataEmpty,
boolean isHighlightSlot,
Optional<AnomalyEventWrapper> optionalAnomalyEventWrapper) {
@@ -276,18 +282,24 @@
: null;
}
- showCategoryTitle(slotTimestamp);
+ showCategoryTitle(slotTimestamp, accessibilitySlotTimestamp);
showSpinnerAndAppList();
showFooterPreference(isAllUsageDataEmpty);
}
- private void showCategoryTitle(String slotTimestamp) {
- mRootPreference.setTitle(
+ private void showCategoryTitle(String slotTimestamp, String accessibilitySlotTimestamp) {
+ final String displayTitle =
slotTimestamp == null
- ? mPrefContext.getString(
- R.string.battery_usage_breakdown_title_since_last_full_charge)
+ ? mBatteryUsageBreakdownTitleLastFullChargeText
: mPrefContext.getString(
- R.string.battery_usage_breakdown_title_for_slot, slotTimestamp));
+ R.string.battery_usage_breakdown_title_for_slot, slotTimestamp);
+ final String accessibilityTitle =
+ accessibilitySlotTimestamp == null
+ ? mBatteryUsageBreakdownTitleLastFullChargeText
+ : mPrefContext.getString(
+ R.string.battery_usage_breakdown_title_for_slot,
+ accessibilitySlotTimestamp);
+ mRootPreference.setTitle(Utils.createAccessibleSequence(displayTitle, accessibilityTitle));
mRootPreference.setVisible(true);
}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/ConvertUtils.java b/src/com/android/settings/fuelgauge/batteryusage/ConvertUtils.java
index 1c6ff54..8f4d4dd 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/ConvertUtils.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/ConvertUtils.java
@@ -201,6 +201,20 @@
return defaultInstance;
}
+ /** Gets the encoded string from {@link BatteryReattribute} instance. */
+ @NonNull
+ public static String encodeBatteryReattribute(
+ @NonNull BatteryReattribute batteryReattribute) {
+ return Base64.encodeToString(batteryReattribute.toByteArray(), Base64.DEFAULT);
+ }
+
+ /** Gets the decoded {@link BatteryReattribute} instance from string. */
+ @NonNull
+ public static BatteryReattribute decodeBatteryReattribute(@NonNull String content) {
+ return BatteryUtils.parseProtoFromString(
+ content, BatteryReattribute.getDefaultInstance());
+ }
+
/** Converts to {@link BatteryHistEntry} */
public static BatteryHistEntry convertToBatteryHistEntry(
BatteryEntry entry, BatteryUsageStats batteryUsageStats) {
diff --git a/src/com/android/settings/fuelgauge/batteryusage/DatabaseUtils.java b/src/com/android/settings/fuelgauge/batteryusage/DatabaseUtils.java
index 5b28abb..7620323 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/DatabaseUtils.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/DatabaseUtils.java
@@ -66,10 +66,10 @@
public final class DatabaseUtils {
private static final String TAG = "DatabaseUtils";
private static final String SHARED_PREFS_FILE = "battery_usage_shared_prefs";
+ private static final boolean EXPLICIT_CLEAR_MEMORY_ENABLED = false;
/** Clear memory threshold for device booting phase. */
private static final long CLEAR_MEMORY_THRESHOLD_MS = Duration.ofMinutes(5).toMillis();
-
private static final long CLEAR_MEMORY_DELAYED_MS = Duration.ofSeconds(2).toMillis();
private static final long INVALID_TIMESTAMP = 0L;
@@ -429,6 +429,7 @@
database.batteryEventDao().clearAll();
database.batteryStateDao().clearAll();
database.batteryUsageSlotDao().clearAll();
+ database.batteryReattributeDao().clearAll();
} catch (RuntimeException e) {
Log.e(TAG, "clearAll() failed", e);
}
@@ -446,6 +447,7 @@
database.batteryEventDao().clearAllAfter(startTimestamp);
database.batteryStateDao().clearAllAfter(startTimestamp);
database.batteryUsageSlotDao().clearAllAfter(startTimestamp);
+ database.batteryReattributeDao().clearAllAfter(startTimestamp);
} catch (RuntimeException e) {
Log.e(TAG, "clearAllAfter() failed", e);
}
@@ -466,6 +468,7 @@
database.batteryEventDao().clearAllBefore(earliestTimestamp);
database.batteryStateDao().clearAllBefore(earliestTimestamp);
database.batteryUsageSlotDao().clearAllBefore(earliestTimestamp);
+ database.batteryReattributeDao().clearAllBefore(earliestTimestamp);
} catch (RuntimeException e) {
Log.e(TAG, "clearAllBefore() failed", e);
}
@@ -975,7 +978,8 @@
}
private static void clearMemory() {
- if (SystemClock.uptimeMillis() > CLEAR_MEMORY_THRESHOLD_MS) {
+ if (!EXPLICIT_CLEAR_MEMORY_ENABLED
+ || SystemClock.uptimeMillis() > CLEAR_MEMORY_THRESHOLD_MS) {
return;
}
final Handler mainHandler = new Handler(Looper.getMainLooper());
diff --git a/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java
index ad29f28..a9c2332 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java
@@ -242,9 +242,14 @@
final String slotInformation =
mBatteryChartPreferenceController.getSlotInformation(
/* isAccessibilityText= */ false);
+ final String accessibilitySlotInformation =
+ mBatteryChartPreferenceController.getSlotInformation(
+ /* isAccessibilityText= */ true);
final BatteryDiffData slotUsageData = mBatteryUsageMap.get(dailyIndex).get(hourlyIndex);
- mScreenOnTimeController.handleSceenOnTimeUpdated(
- slotUsageData != null ? slotUsageData.getScreenOnTime() : 0L, slotInformation);
+ mScreenOnTimeController.handleScreenOnTimeUpdated(
+ slotUsageData != null ? slotUsageData.getScreenOnTime() : 0L,
+ slotInformation,
+ accessibilitySlotInformation);
// Hide card tips if the related highlight slot was clicked.
if (isAppsAnomalyEventFocused()) {
mBatteryTipsController.acceptTipsCard();
@@ -252,6 +257,7 @@
mBatteryUsageBreakdownController.handleBatteryUsageUpdated(
slotUsageData,
slotInformation,
+ accessibilitySlotInformation,
isBatteryUsageMapNullOrEmpty(),
isAppsAnomalyEventFocused(),
mHighlightEventWrapper);
diff --git a/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeController.java b/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeController.java
index fcdd673..379cef3 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeController.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeController.java
@@ -27,6 +27,7 @@
import com.android.internal.annotations.VisibleForTesting;
import com.android.settings.R;
+import com.android.settings.Utils;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.fuelgauge.BatteryUtils;
@@ -45,6 +46,7 @@
@VisibleForTesting Context mPrefContext;
@VisibleForTesting PreferenceCategory mRootPreference;
@VisibleForTesting TextViewPreference mScreenOnTimeTextPreference;
+ @VisibleForTesting String mScreenTimeCategoryLastFullChargeText;
public ScreenOnTimeController(Context context) {
super(context, ROOT_PREFERENCE_KEY);
@@ -61,25 +63,34 @@
mPrefContext = screen.getContext();
mRootPreference = screen.findPreference(ROOT_PREFERENCE_KEY);
mScreenOnTimeTextPreference = screen.findPreference(SCREEN_ON_TIME_TEXT_PREFERENCE_KEY);
+ mScreenTimeCategoryLastFullChargeText =
+ mPrefContext.getString(R.string.screen_time_category_last_full_charge);
}
- void handleSceenOnTimeUpdated(Long screenOnTime, String slotTimestamp) {
+ void handleScreenOnTimeUpdated(
+ Long screenOnTime, String slotTimestamp, String accessibilitySlotTimestamp) {
if (screenOnTime == null) {
mRootPreference.setVisible(false);
mScreenOnTimeTextPreference.setVisible(false);
return;
}
- showCategoryTitle(slotTimestamp);
+ showCategoryTitle(slotTimestamp, accessibilitySlotTimestamp);
showScreenOnTimeText(screenOnTime);
}
@VisibleForTesting
- void showCategoryTitle(String slotTimestamp) {
- mRootPreference.setTitle(
+ void showCategoryTitle(String slotTimestamp, String accessibilitySlotTimestamp) {
+ final String displayTitle =
slotTimestamp == null
- ? mPrefContext.getString(R.string.screen_time_category_last_full_charge)
+ ? mScreenTimeCategoryLastFullChargeText
: mPrefContext.getString(
- R.string.screen_time_category_for_slot, slotTimestamp));
+ R.string.screen_time_category_for_slot, slotTimestamp);
+ final String accessibilityTitle =
+ accessibilitySlotTimestamp == null
+ ? mScreenTimeCategoryLastFullChargeText
+ : mPrefContext.getString(
+ R.string.screen_time_category_for_slot, accessibilitySlotTimestamp);
+ mRootPreference.setTitle(Utils.createAccessibleSequence(displayTitle, accessibilityTitle));
mRootPreference.setVisible(true);
}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/bugreport/BugReportContentProvider.java b/src/com/android/settings/fuelgauge/batteryusage/bugreport/BugReportContentProvider.java
index 7613d9a..baae109 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/bugreport/BugReportContentProvider.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/bugreport/BugReportContentProvider.java
@@ -60,6 +60,7 @@
LogUtils.dumpBatteryUsageSlotDatabaseHist(context, writer);
LogUtils.dumpBatteryEventDatabaseHist(context, writer);
LogUtils.dumpBatteryStateDatabaseHist(context, writer);
+ LogUtils.dumpBatteryReattributeDatabaseHist(context, writer);
}
@Override
diff --git a/src/com/android/settings/fuelgauge/batteryusage/bugreport/LogUtils.java b/src/com/android/settings/fuelgauge/batteryusage/bugreport/LogUtils.java
index b230030..d2f3adc 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/bugreport/LogUtils.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/bugreport/LogUtils.java
@@ -19,6 +19,8 @@
import android.content.Context;
import android.util.Log;
+import androidx.annotation.VisibleForTesting;
+
import com.android.settings.fuelgauge.BatteryUtils;
import com.android.settings.fuelgauge.batteryusage.AppOptModeSharedPreferencesUtils;
import com.android.settings.fuelgauge.batteryusage.AppOptimizationModeEvent;
@@ -29,6 +31,8 @@
import com.android.settings.fuelgauge.batteryusage.db.AppUsageEventEntity;
import com.android.settings.fuelgauge.batteryusage.db.BatteryEventDao;
import com.android.settings.fuelgauge.batteryusage.db.BatteryEventEntity;
+import com.android.settings.fuelgauge.batteryusage.db.BatteryReattributeDao;
+import com.android.settings.fuelgauge.batteryusage.db.BatteryReattributeEntity;
import com.android.settings.fuelgauge.batteryusage.db.BatteryState;
import com.android.settings.fuelgauge.batteryusage.db.BatteryStateDao;
import com.android.settings.fuelgauge.batteryusage.db.BatteryStateDatabase;
@@ -127,6 +131,24 @@
dumpListItems(writer, entities, entity -> entity);
}
+ static void dumpBatteryReattributeDatabaseHist(Context context, PrintWriter writer) {
+ dumpBatteryReattributeDatabaseHist(
+ BatteryStateDatabase.getInstance(context).batteryReattributeDao(),
+ writer);
+ }
+
+ @VisibleForTesting
+ static void dumpBatteryReattributeDatabaseHist(
+ BatteryReattributeDao batteryReattributeDao, PrintWriter writer) {
+ writer.println("\n\tBatteryReattribute DatabaseHistory:");
+ final List<BatteryReattributeEntity> entities =
+ batteryReattributeDao.getAllAfter(
+ Clock.systemUTC().millis() - DUMP_TIME_OFFSET.toMillis());
+ if (entities != null && !entities.isEmpty()) {
+ dumpListItems(writer, entities, entity -> entity);
+ }
+ }
+
private static <T, S> void dumpListItems(
PrintWriter writer, List<T> itemList, Function<T, S> itemConverter) {
final AtomicInteger counter = new AtomicInteger(0);
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/AppUsageEventDao.java b/src/com/android/settings/fuelgauge/batteryusage/db/AppUsageEventDao.java
deleted file mode 100644
index 2497801..0000000
--- a/src/com/android/settings/fuelgauge/batteryusage/db/AppUsageEventDao.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (C) 2022 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.fuelgauge.batteryusage.db;
-
-import android.database.Cursor;
-
-import androidx.room.Dao;
-import androidx.room.Insert;
-import androidx.room.OnConflictStrategy;
-import androidx.room.Query;
-
-import java.util.List;
-
-/** Data access object for accessing {@link AppUsageEventEntity} in the database. */
-@Dao
-public interface AppUsageEventDao {
-
- /** Inserts a {@link AppUsageEventEntity} data into the database. */
- @Insert(onConflict = OnConflictStrategy.REPLACE)
- void insert(AppUsageEventEntity event);
-
- /** Inserts {@link AppUsageEventEntity} data into the database. */
- @Insert(onConflict = OnConflictStrategy.REPLACE)
- void insertAll(List<AppUsageEventEntity> events);
-
- /** Lists all recorded data after a specific timestamp. */
- @Query("SELECT * FROM AppUsageEventEntity WHERE timestamp > :timestamp ORDER BY timestamp DESC")
- List<AppUsageEventEntity> getAllAfter(long timestamp);
-
- /** Gets the {@link Cursor} of all recorded data after a specific timestamp of the users. */
- @Query(
- "SELECT * FROM AppUsageEventEntity WHERE timestamp >= :timestamp"
- + " AND userId IN (:userIds) ORDER BY timestamp ASC")
- Cursor getAllForUsersAfter(List<Long> userIds, long timestamp);
-
- /** Gets the {@link Cursor} of the latest timestamp of the specific user. */
- @Query("SELECT MAX(timestamp) as timestamp FROM AppUsageEventEntity WHERE userId = :userId")
- Cursor getLatestTimestampOfUser(long userId);
-
- /** Deletes all recorded data before a specific timestamp. */
- @Query("DELETE FROM AppUsageEventEntity WHERE timestamp <= :timestamp")
- void clearAllBefore(long timestamp);
-
- /** Deletes all recorded data after a specific timestamp. */
- @Query("DELETE FROM AppUsageEventEntity WHERE timestamp >= :timestamp")
- void clearAllAfter(long timestamp);
-
- /** Clears all recorded data in the database. */
- @Query("DELETE FROM AppUsageEventEntity")
- void clearAll();
-}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/AppUsageEventDao.kt b/src/com/android/settings/fuelgauge/batteryusage/db/AppUsageEventDao.kt
new file mode 100644
index 0000000..fa5fbc7
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/db/AppUsageEventDao.kt
@@ -0,0 +1,59 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.fuelgauge.batteryusage.db
+
+import android.database.Cursor
+import androidx.room.Dao
+import androidx.room.Insert
+import androidx.room.OnConflictStrategy
+import androidx.room.Query
+
+/** Data access object for accessing [AppUsageEventEntity] in the database. */
+@Dao
+interface AppUsageEventDao {
+ /** Inserts a [AppUsageEventEntity] data into the database. */
+ @Insert(onConflict = OnConflictStrategy.REPLACE) fun insert(event: AppUsageEventEntity)
+
+ /** Inserts [AppUsageEventEntity] data into the database. */
+ @Insert(onConflict = OnConflictStrategy.REPLACE)
+ fun insertAll(events: List<AppUsageEventEntity>)
+
+ /** Lists all recorded data after a specific timestamp. */
+ @Query("SELECT * FROM AppUsageEventEntity WHERE timestamp > :timestamp ORDER BY timestamp DESC")
+ fun getAllAfter(timestamp: Long): List<AppUsageEventEntity>
+
+ /** Gets the [Cursor] of all recorded data after a specific timestamp of the users. */
+ @Query(
+ "SELECT * FROM AppUsageEventEntity WHERE timestamp >= :timestamp" +
+ " AND userId IN (:userIds) ORDER BY timestamp ASC"
+ )
+ fun getAllForUsersAfter(userIds: List<Long>, timestamp: Long): Cursor
+
+ /** Gets the [Cursor] of the latest timestamp of the specific user. */
+ @Query("SELECT MAX(timestamp) as timestamp FROM AppUsageEventEntity WHERE userId = :userId")
+ fun getLatestTimestampOfUser(userId: Long): Cursor
+
+ /** Deletes all recorded data before a specific timestamp. */
+ @Query("DELETE FROM AppUsageEventEntity WHERE timestamp <= :timestamp")
+ fun clearAllBefore(timestamp: Long)
+
+ /** Deletes all recorded data after a specific timestamp. */
+ @Query("DELETE FROM AppUsageEventEntity WHERE timestamp >= :timestamp")
+ fun clearAllAfter(timestamp: Long)
+
+ /** Clears all recorded data in the database. */
+ @Query("DELETE FROM AppUsageEventEntity") fun clearAll()
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryEventDao.java b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryEventDao.java
deleted file mode 100644
index 19d2043..0000000
--- a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryEventDao.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2023 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.fuelgauge.batteryusage.db;
-
-import android.database.Cursor;
-
-import androidx.room.Dao;
-import androidx.room.Insert;
-import androidx.room.OnConflictStrategy;
-import androidx.room.Query;
-
-import java.util.List;
-
-/** Data access object for accessing {@link BatteryEventEntity} in the database. */
-@Dao
-public interface BatteryEventDao {
- /** Inserts a {@link BatteryEventEntity} data into the database. */
- @Insert(onConflict = OnConflictStrategy.REPLACE)
- void insert(BatteryEventEntity event);
-
- /** Gets all recorded data. */
- @Query("SELECT * FROM BatteryEventEntity ORDER BY timestamp DESC")
- List<BatteryEventEntity> getAll();
-
- /** Gets the {@link Cursor} of the last full charge time . */
- @Query(
- "SELECT MAX(timestamp) FROM BatteryEventEntity"
- + " WHERE batteryEventType = 3") // BatteryEventType.FULL_CHARGED = 3
- Cursor getLastFullChargeTimestamp();
-
- /** Gets the {@link Long} of the last full charge time . */
- @Query(
- "SELECT MAX(timestamp) FROM BatteryEventEntity"
- + " WHERE batteryEventType = 3") // BatteryEventType.FULL_CHARGED = 3
- Long getLastFullChargeTimestampForLog();
-
- /** Gets the {@link Cursor} of all recorded data after a specific timestamp. */
- @Query(
- "SELECT * FROM BatteryEventEntity"
- + " WHERE timestamp >= :timestamp AND batteryEventType IN (:batteryEventTypes)"
- + " ORDER BY timestamp DESC")
- Cursor getAllAfter(long timestamp, List<Integer> batteryEventTypes);
-
- /** Gets all recorded data after a specific timestamp for log.*/
- @Query(
- "SELECT * FROM BatteryEventEntity "
- + "WHERE timestamp >= :timestamp ORDER BY timestamp DESC")
- List<BatteryEventEntity> getAllAfterForLog(long timestamp);
-
- /** Deletes all recorded data before a specific timestamp. */
- @Query("DELETE FROM BatteryEventEntity WHERE timestamp <= :timestamp")
- void clearAllBefore(long timestamp);
-
- /** Deletes all recorded data after a specific timestamp. */
- @Query("DELETE FROM BatteryEventEntity WHERE timestamp >= :timestamp")
- void clearAllAfter(long timestamp);
-
- /** Clears all recorded data in the database. */
- @Query("DELETE FROM BatteryEventEntity")
- void clearAll();
-}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryEventDao.kt b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryEventDao.kt
new file mode 100644
index 0000000..bac97d0
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryEventDao.kt
@@ -0,0 +1,73 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.fuelgauge.batteryusage.db
+
+import android.database.Cursor
+import androidx.room.Dao
+import androidx.room.Insert
+import androidx.room.OnConflictStrategy
+import androidx.room.Query
+
+/** Data access object for accessing [BatteryEventEntity] in the database. */
+@Dao
+interface BatteryEventDao {
+ /** Inserts a [BatteryEventEntity] data into the database. */
+ @Insert(onConflict = OnConflictStrategy.REPLACE) fun insert(event: BatteryEventEntity)
+
+ /** Gets all recorded data. */
+ @Query("SELECT * FROM BatteryEventEntity ORDER BY timestamp DESC")
+ fun getAll(): List<BatteryEventEntity>
+
+ /** Gets the [Cursor] of the last full charge time. */
+ @Query(
+ "SELECT MAX(timestamp) FROM BatteryEventEntity" +
+ " WHERE batteryEventType = 3" // BatteryEventType.FULL_CHARGED = 3
+ )
+ fun getLastFullChargeTimestamp(): Cursor
+
+ /** Gets the [Long] of the last full charge time. */
+ @Query(
+ "SELECT MAX(timestamp) FROM BatteryEventEntity" +
+ " WHERE batteryEventType = 3" // BatteryEventType.FULL_CHARGED = 3
+ )
+ fun getLastFullChargeTimestampForLog(): Long?
+
+ /** Gets the [Cursor] of all recorded data after a specific timestamp. */
+ @Query(
+ "SELECT * FROM BatteryEventEntity" +
+ " WHERE timestamp >= :timestamp AND batteryEventType IN (:batteryEventTypes)" +
+ " ORDER BY timestamp DESC"
+ )
+ fun getAllAfter(timestamp: Long, batteryEventTypes: List<Int>): Cursor
+
+ /** Gets all recorded data after a specific timestamp for log. */
+ @Query(
+ "SELECT * FROM BatteryEventEntity " +
+ "WHERE timestamp >= :timestamp ORDER BY timestamp DESC"
+ )
+ fun getAllAfterForLog(timestamp: Long): List<BatteryEventEntity>
+
+ /** Deletes all recorded data before a specific timestamp. */
+ @Query("DELETE FROM BatteryEventEntity WHERE timestamp <= :timestamp")
+ fun clearAllBefore(timestamp: Long)
+
+ /** Deletes all recorded data after a specific timestamp. */
+ @Query("DELETE FROM BatteryEventEntity WHERE timestamp >= :timestamp")
+ fun clearAllAfter(timestamp: Long)
+
+ /** Clears all recorded data in the database. */
+ @Query("DELETE FROM BatteryEventEntity") fun clearAll()
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeDao.kt b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeDao.kt
new file mode 100644
index 0000000..4151a5b
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeDao.kt
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage.db;
+
+import androidx.room.Dao;
+import androidx.room.Insert;
+import androidx.room.OnConflictStrategy;
+import androidx.room.Query;
+
+/** DAO for accessing {@link BatteryReattributeEntity} in the database. */
+@Dao
+interface BatteryReattributeDao {
+
+ /** Inserts a {@link BatteryReattributeEntity} data into the database. */
+ @Insert(onConflict = OnConflictStrategy.REPLACE)
+ fun insert(event: BatteryReattributeEntity)
+
+ /** Gets all recorded data after a specific timestamp. */
+ @Query(
+ "SELECT * FROM BatteryReattributeEntity WHERE "
+ + "timestampStart >= :timestampStart ORDER BY timestampStart DESC")
+ fun getAllAfter(timestampStart: Long): List<BatteryReattributeEntity>
+
+ /** Deletes all recorded data before a specific timestamp. */
+ @Query("DELETE FROM BatteryReattributeEntity WHERE timestampStart <= :timestampStart")
+ fun clearAllBefore(timestampStart: Long)
+
+ /** Deletes all recorded data after a specific timestamp. */
+ @Query("DELETE FROM BatteryReattributeEntity WHERE timestampStart >= :timestampStart")
+ fun clearAllAfter(timestampStart: Long)
+
+ /** Clears all recorded data in the database. */
+ @Query("DELETE FROM BatteryReattributeEntity") fun clearAll()
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeEntity.java b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeEntity.java
new file mode 100644
index 0000000..5367849
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeEntity.java
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage.db;
+
+import static com.android.settings.fuelgauge.batteryusage.ConvertUtils.utcToLocalTimeForLogging;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.room.Entity;
+import androidx.room.PrimaryKey;
+
+import com.android.settings.fuelgauge.batteryusage.BatteryReattribute;
+import com.android.settings.fuelgauge.batteryusage.ConvertUtils;
+
+/** A {@link Entity} for battery usage reattribution data in the database. */
+@Entity
+public class BatteryReattributeEntity {
+
+ /** The start timestamp of this record data. */
+ @PrimaryKey
+ public final long timestampStart;
+
+ /** The end timestamp of this record data. */
+ public final long timestampEnd;
+
+ /** The battery usage reattribution data for corresponding uids. */
+ @NonNull public final String reattributeData;
+
+ public BatteryReattributeEntity(@NonNull BatteryReattribute batteryReattribute) {
+ this(
+ batteryReattribute.getTimestampStart(),
+ batteryReattribute.getTimestampEnd(),
+ ConvertUtils.encodeBatteryReattribute(batteryReattribute));
+ }
+
+ @VisibleForTesting
+ BatteryReattributeEntity(
+ long timestampStart, long timestampEnd, @NonNull String reattributeData) {
+ this.timestampStart = timestampStart;
+ this.timestampEnd = timestampEnd;
+ this.reattributeData = reattributeData;
+ }
+
+ @NonNull
+ @Override
+ public String toString() {
+ final StringBuilder builder = new StringBuilder()
+ .append("\nBatteryReattributeEntity{")
+ .append("\n\t" + utcToLocalTimeForLogging(timestampStart))
+ .append("\n\t" + utcToLocalTimeForLogging(timestampEnd))
+ .append("\n\t" + ConvertUtils.decodeBatteryReattribute(reattributeData))
+ .append("\n}");
+ return builder.toString();
+ }
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDao.java b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDao.java
deleted file mode 100644
index 049251e..0000000
--- a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDao.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2022 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.fuelgauge.batteryusage.db;
-
-import android.database.Cursor;
-
-import androidx.room.Dao;
-import androidx.room.Insert;
-import androidx.room.OnConflictStrategy;
-import androidx.room.Query;
-
-import java.util.List;
-
-/** Data access object for accessing {@link BatteryState} in the database. */
-@Dao
-public interface BatteryStateDao {
-
- /** Inserts a {@link BatteryState} data into the database. */
- @Insert(onConflict = OnConflictStrategy.REPLACE)
- void insert(BatteryState state);
-
- /** Inserts {@link BatteryState} data into the database. */
- @Insert(onConflict = OnConflictStrategy.REPLACE)
- void insertAll(List<BatteryState> states);
-
- /** Gets the {@link Cursor} of the latest record timestamp no later than the given timestamp. */
- @Query("SELECT MAX(timestamp) FROM BatteryState WHERE timestamp <= :timestamp")
- Cursor getLatestTimestampBefore(long timestamp);
-
- /** Lists all recorded battery states after a specific timestamp. */
- @Query("SELECT * FROM BatteryState WHERE timestamp >= :timestamp ORDER BY timestamp ASC")
- Cursor getBatteryStatesAfter(long timestamp);
-
- /** Lists all recorded data after a specific timestamp. */
- @Query("SELECT * FROM BatteryState WHERE timestamp > :timestamp ORDER BY timestamp DESC")
- List<BatteryState> getAllAfter(long timestamp);
-
- /** Get the count of distinct timestamp after a specific timestamp. */
- @Query("SELECT COUNT(DISTINCT timestamp) FROM BatteryState WHERE timestamp > :timestamp")
- int getDistinctTimestampCount(long timestamp);
-
- /** Lists all distinct timestamps after a specific timestamp. */
- @Query("SELECT DISTINCT timestamp FROM BatteryState WHERE timestamp > :timestamp")
- List<Long> getDistinctTimestamps(long timestamp);
-
- /** Deletes all recorded data before a specific timestamp. */
- @Query("DELETE FROM BatteryState WHERE timestamp <= :timestamp")
- void clearAllBefore(long timestamp);
-
- /** Deletes all recorded data after a specific timestamp. */
- @Query("DELETE FROM BatteryState WHERE timestamp >= :timestamp")
- void clearAllAfter(long timestamp);
-
- /** Clears all recorded data in the database. */
- @Query("DELETE FROM BatteryState")
- void clearAll();
-}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDao.kt b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDao.kt
new file mode 100644
index 0000000..6d31e07
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDao.kt
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.fuelgauge.batteryusage.db
+
+import android.database.Cursor
+import androidx.room.Dao
+import androidx.room.Insert
+import androidx.room.OnConflictStrategy
+import androidx.room.Query
+
+/** Data access object for accessing [BatteryState] in the database. */
+@Dao
+interface BatteryStateDao {
+ /** Inserts a [BatteryState] data into the database. */
+ @Insert(onConflict = OnConflictStrategy.REPLACE) fun insert(state: BatteryState)
+
+ /** Inserts [BatteryState] data into the database. */
+ @Insert(onConflict = OnConflictStrategy.REPLACE) fun insertAll(states: List<BatteryState>)
+
+ /** Gets the [Cursor] of the latest record timestamp no later than the given timestamp. */
+ @Query("SELECT MAX(timestamp) FROM BatteryState WHERE timestamp <= :timestamp")
+ fun getLatestTimestampBefore(timestamp: Long): Cursor
+
+ /** Lists all recorded battery states after a specific timestamp. */
+ @Query("SELECT * FROM BatteryState WHERE timestamp >= :timestamp ORDER BY timestamp ASC")
+ fun getBatteryStatesAfter(timestamp: Long): Cursor
+
+ /** Lists all recorded data after a specific timestamp. */
+ @Query("SELECT * FROM BatteryState WHERE timestamp > :timestamp ORDER BY timestamp DESC")
+ fun getAllAfter(timestamp: Long): List<BatteryState>
+
+ /** Get the count of distinct timestamp after a specific timestamp. */
+ @Query("SELECT COUNT(DISTINCT timestamp) FROM BatteryState WHERE timestamp > :timestamp")
+ fun getDistinctTimestampCount(timestamp: Long): Int
+
+ /** Lists all distinct timestamps after a specific timestamp. */
+ @Query("SELECT DISTINCT timestamp FROM BatteryState WHERE timestamp > :timestamp")
+ fun getDistinctTimestamps(timestamp: Long): List<Long>
+
+ /** Deletes all recorded data before a specific timestamp. */
+ @Query("DELETE FROM BatteryState WHERE timestamp <= :timestamp")
+ fun clearAllBefore(timestamp: Long)
+
+ /** Deletes all recorded data after a specific timestamp. */
+ @Query("DELETE FROM BatteryState WHERE timestamp >= :timestamp")
+ fun clearAllAfter(timestamp: Long)
+
+ /** Clears all recorded data in the database. */
+ @Query("DELETE FROM BatteryState") fun clearAll()
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDatabase.java b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDatabase.java
index 7504775..9a4f164 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDatabase.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryStateDatabase.java
@@ -19,6 +19,7 @@
import android.content.Context;
import android.util.Log;
+import androidx.annotation.NonNull;
import androidx.room.Database;
import androidx.room.Room;
import androidx.room.RoomDatabase;
@@ -29,11 +30,13 @@
AppUsageEventEntity.class,
BatteryEventEntity.class,
BatteryState.class,
- BatteryUsageSlotEntity.class
+ BatteryUsageSlotEntity.class,
+ BatteryReattributeEntity.class
},
version = 1)
public abstract class BatteryStateDatabase extends RoomDatabase {
private static final String TAG = "BatteryStateDatabase";
+ private static final String DB_FILE_NAME = "battery-usage-db-v10";
private static BatteryStateDatabase sBatteryStateDatabase;
@@ -49,11 +52,15 @@
/** Provides DAO for battery usage slot table. */
public abstract BatteryUsageSlotDao batteryUsageSlotDao();
+ /** Provides DAO for battery reattribution table. */
+ @NonNull
+ public abstract BatteryReattributeDao batteryReattributeDao();
+
/** Gets or creates an instance of {@link RoomDatabase}. */
public static BatteryStateDatabase getInstance(Context context) {
if (sBatteryStateDatabase == null) {
sBatteryStateDatabase =
- Room.databaseBuilder(context, BatteryStateDatabase.class, "battery-usage-db-v9")
+ Room.databaseBuilder(context, BatteryStateDatabase.class, DB_FILE_NAME)
// Allows accessing data in the main thread for dumping bugreport.
.allowMainThreadQueries()
.fallbackToDestructiveMigration()
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryUsageSlotDao.java b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryUsageSlotDao.java
deleted file mode 100644
index d53b0cf..0000000
--- a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryUsageSlotDao.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2023 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.fuelgauge.batteryusage.db;
-
-import android.database.Cursor;
-
-import androidx.room.Dao;
-import androidx.room.Insert;
-import androidx.room.OnConflictStrategy;
-import androidx.room.Query;
-
-import java.util.List;
-
-/** Data access object for accessing {@link BatteryUsageSlotEntity} in the database. */
-@Dao
-public interface BatteryUsageSlotDao {
- /** Inserts a {@link BatteryUsageSlotEntity} data into the database. */
- @Insert(onConflict = OnConflictStrategy.REPLACE)
- void insert(BatteryUsageSlotEntity event);
-
- /** Gets all recorded data. */
- @Query("SELECT * FROM BatteryUsageSlotEntity ORDER BY timestamp ASC")
- List<BatteryUsageSlotEntity> getAll();
-
- /** Gets the {@link Cursor} of all recorded data after a specific timestamp. */
- @Query(
- "SELECT * FROM BatteryUsageSlotEntity WHERE timestamp >= :timestamp"
- + " ORDER BY timestamp ASC")
- Cursor getAllAfter(long timestamp);
-
- /** Gets all recorded data after a specific timestamp for log.*/
- @Query(
- "SELECT * FROM BatteryUsageSlotEntity WHERE timestamp >= :timestamp"
- + " ORDER BY timestamp DESC")
- List<BatteryUsageSlotEntity> getAllAfterForLog(long timestamp);
-
- /** Deletes all recorded data before a specific timestamp. */
- @Query("DELETE FROM BatteryUsageSlotEntity WHERE timestamp <= :timestamp")
- void clearAllBefore(long timestamp);
-
- /** Deletes all recorded data after a specific timestamp. */
- @Query("DELETE FROM BatteryUsageSlotEntity WHERE timestamp >= :timestamp")
- void clearAllAfter(long timestamp);
-
- /** Clears all recorded data in the database. */
- @Query("DELETE FROM BatteryUsageSlotEntity")
- void clearAll();
-}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/db/BatteryUsageSlotDao.kt b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryUsageSlotDao.kt
new file mode 100644
index 0000000..434c61a
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/db/BatteryUsageSlotDao.kt
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.fuelgauge.batteryusage.db
+
+import android.database.Cursor
+import androidx.room.Dao
+import androidx.room.Insert
+import androidx.room.OnConflictStrategy
+import androidx.room.Query
+
+/** Data access object for accessing [BatteryUsageSlotEntity] in the database. */
+@Dao
+interface BatteryUsageSlotDao {
+ /** Inserts a [BatteryUsageSlotEntity] data into the database. */
+ @Insert(onConflict = OnConflictStrategy.REPLACE) fun insert(event: BatteryUsageSlotEntity)
+
+ /** Gets all recorded data. */
+ @Query("SELECT * FROM BatteryUsageSlotEntity ORDER BY timestamp ASC")
+ fun getAll(): List<BatteryUsageSlotEntity>
+
+ /** Gets the [Cursor] of all recorded data after a specific timestamp. */
+ @Query(
+ "SELECT * FROM BatteryUsageSlotEntity WHERE timestamp >= :timestamp" +
+ " ORDER BY timestamp ASC"
+ )
+ fun getAllAfter(timestamp: Long): Cursor
+
+ /** Gets all recorded data after a specific timestamp for log. */
+ @Query(
+ "SELECT * FROM BatteryUsageSlotEntity WHERE timestamp >= :timestamp" +
+ " ORDER BY timestamp DESC"
+ )
+ fun getAllAfterForLog(timestamp: Long): List<BatteryUsageSlotEntity>
+
+ /** Deletes all recorded data before a specific timestamp. */
+ @Query("DELETE FROM BatteryUsageSlotEntity WHERE timestamp <= :timestamp")
+ fun clearAllBefore(timestamp: Long)
+
+ /** Deletes all recorded data after a specific timestamp. */
+ @Query("DELETE FROM BatteryUsageSlotEntity WHERE timestamp >= :timestamp")
+ fun clearAllAfter(timestamp: Long)
+
+ /** Clears all recorded data in the database. */
+ @Query("DELETE FROM BatteryUsageSlotEntity") fun clearAll()
+}
diff --git a/src/com/android/settings/fuelgauge/protos/battery_reattribute.proto b/src/com/android/settings/fuelgauge/protos/battery_reattribute.proto
new file mode 100644
index 0000000..8185a22
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/protos/battery_reattribute.proto
@@ -0,0 +1,13 @@
+syntax = "proto3";
+
+option java_multiple_files = true;
+option java_package = "com.android.settings.fuelgauge.batteryusage";
+option java_outer_classname = "BatteryReaatributeProto";
+
+// Battery usage reattribute data for a specific timestamp slot.
+message BatteryReattribute {
+ optional int64 timestamp_start = 1;
+ optional int64 timestamp_end = 2;
+ // Battery reattribute data for uid and its corresponding ratio.
+ map<int32, float> reattribute_data = 3;
+}
diff --git a/src/com/android/settings/inputmethod/PointerFillStylePreference.java b/src/com/android/settings/inputmethod/PointerFillStylePreference.java
new file mode 100644
index 0000000..3ea656f
--- /dev/null
+++ b/src/com/android/settings/inputmethod/PointerFillStylePreference.java
@@ -0,0 +1,160 @@
+/*
+ * Copyright 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.inputmethod;
+
+import static android.view.PointerIcon.POINTER_ICON_VECTOR_STYLE_FILL_BLACK;
+import static android.view.PointerIcon.POINTER_ICON_VECTOR_STYLE_FILL_BLUE;
+import static android.view.PointerIcon.POINTER_ICON_VECTOR_STYLE_FILL_GREEN;
+import static android.view.PointerIcon.POINTER_ICON_VECTOR_STYLE_FILL_PINK;
+import static android.view.PointerIcon.POINTER_ICON_VECTOR_STYLE_FILL_YELLOW;
+
+import android.content.Context;
+import android.content.res.Resources;
+import android.content.res.TypedArray;
+import android.graphics.BlendMode;
+import android.graphics.BlendModeColorFilter;
+import android.graphics.Color;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.GradientDrawable;
+import android.graphics.drawable.StateListDrawable;
+import android.provider.Settings;
+import android.util.AttributeSet;
+import android.util.StateSet;
+import android.view.Gravity;
+import android.view.PointerIcon;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceViewHolder;
+
+import com.android.settings.R;
+import com.android.settingslib.Utils;
+
+
+public class PointerFillStylePreference extends Preference {
+
+ @Nullable private LinearLayout mButtonHolder;
+
+ public PointerFillStylePreference(@NonNull Context context, @Nullable AttributeSet attrs) {
+ super(context, attrs);
+ setLayoutResource(R.layout.pointer_icon_fill_style_layout);
+ }
+
+ @Override
+ public void onBindViewHolder(@NonNull PreferenceViewHolder holder) {
+ super.onBindViewHolder(holder);
+
+ mButtonHolder = (LinearLayout) holder.findViewById(R.id.button_holder);
+ // Intercept hover events so setting row does not highlight when hovering buttons.
+ if (mButtonHolder != null) {
+ mButtonHolder.setOnHoverListener((v, e) -> true);
+ }
+
+ int currentStyle = getPreferenceDataStore().getInt(Settings.System.POINTER_FILL_STYLE,
+ POINTER_ICON_VECTOR_STYLE_FILL_BLACK);
+ initStyleButton(holder, R.id.button_black, POINTER_ICON_VECTOR_STYLE_FILL_BLACK,
+ currentStyle);
+ initStyleButton(holder, R.id.button_green, POINTER_ICON_VECTOR_STYLE_FILL_GREEN,
+ currentStyle);
+ initStyleButton(holder, R.id.button_yellow, POINTER_ICON_VECTOR_STYLE_FILL_YELLOW,
+ currentStyle);
+ initStyleButton(holder, R.id.button_pink, POINTER_ICON_VECTOR_STYLE_FILL_PINK,
+ currentStyle);
+ initStyleButton(holder, R.id.button_blue, POINTER_ICON_VECTOR_STYLE_FILL_BLUE,
+ currentStyle);
+ }
+
+ private void initStyleButton(@NonNull PreferenceViewHolder holder, int id, int style,
+ int currentStyle) {
+ ImageView button = (ImageView) holder.findViewById(id);
+ if (button == null) {
+ return;
+ }
+ int[] attrs = {com.android.internal.R.attr.pointerIconVectorFill};
+ try (TypedArray ta = getContext().obtainStyledAttributes(
+ PointerIcon.vectorFillStyleToResource(style), attrs)) {
+ button.setBackground(getBackgroundSelector(ta.getColor(0, Color.BLACK)));
+ }
+ button.setForeground(getForegroundDrawable(style, currentStyle));
+ button.setForegroundGravity(Gravity.CENTER);
+ button.setOnClickListener(
+ (v) -> {
+ getPreferenceDataStore().putInt(Settings.System.POINTER_FILL_STYLE, style);
+ setButtonChecked(id);
+ });
+ button.setPointerIcon(PointerIcon.getSystemIcon(getContext(), PointerIcon.TYPE_ARROW));
+ }
+
+ // Generate background instead of defining in XML so we can use res color from the platform.
+ private StateListDrawable getBackgroundSelector(int color) {
+ StateListDrawable background = new StateListDrawable();
+ Resources res = getContext().getResources();
+ int ovalSize = res.getDimensionPixelSize(R.dimen.pointer_fill_style_circle_diameter);
+ background.setBounds(0, 0, ovalSize, ovalSize);
+
+ // Add hovered state first! The order states are added matters for a StateListDrawable.
+ GradientDrawable hoveredOval = new GradientDrawable();
+ hoveredOval.setColor(color);
+ int textColor = Utils.getColorAttr(getContext(),
+ com.android.internal.R.attr.materialColorOutline).getDefaultColor();
+ hoveredOval.setStroke(
+ res.getDimensionPixelSize(R.dimen.pointer_fill_style_shape_hovered_stroke),
+ textColor);
+ hoveredOval.setSize(ovalSize, ovalSize);
+ hoveredOval.setBounds(0, 0, ovalSize, ovalSize);
+ hoveredOval.setCornerRadius(ovalSize / 2f);
+ background.addState(new int[]{android.R.attr.state_hovered}, hoveredOval);
+
+ GradientDrawable defaultOval = new GradientDrawable();
+ defaultOval.setColor(color);
+ defaultOval.setStroke(
+ res.getDimensionPixelSize(R.dimen.pointer_fill_style_shape_default_stroke),
+ textColor);
+ defaultOval.setSize(ovalSize, ovalSize);
+ defaultOval.setBounds(0, 0, ovalSize, ovalSize);
+ defaultOval.setCornerRadius(ovalSize / 2f);
+ background.addState(StateSet.WILD_CARD, defaultOval);
+
+ return background;
+ }
+
+ private Drawable getForegroundDrawable(int style, int currentStyle) {
+ Resources res = getContext().getResources();
+ int ovalSize = res.getDimensionPixelSize(R.dimen.pointer_fill_style_circle_diameter);
+ Drawable checkMark = getContext().getDrawable(R.drawable.ic_check_24dp);
+ int padding = res.getDimensionPixelSize(R.dimen.pointer_fill_style_circle_padding) / 2;
+ checkMark.setBounds(padding, padding, ovalSize - padding, ovalSize - padding);
+ checkMark.setColorFilter(new BlendModeColorFilter(Color.WHITE, BlendMode.SRC_IN));
+ checkMark.setAlpha(style == currentStyle ? 255 : 0);
+ return checkMark;
+ }
+
+ private void setButtonChecked(int id) {
+ if (mButtonHolder == null) {
+ return;
+ }
+ for (int i = 0; i < mButtonHolder.getChildCount(); i++) {
+ View child = mButtonHolder.getChildAt(i);
+ if (child != null) {
+ child.getForeground().setAlpha(child.getId() == id ? 255 : 0);
+ }
+ }
+ }
+}
diff --git a/src/com/android/settings/inputmethod/PointerFillStylePreferenceController.java b/src/com/android/settings/inputmethod/PointerFillStylePreferenceController.java
new file mode 100644
index 0000000..5abc383
--- /dev/null
+++ b/src/com/android/settings/inputmethod/PointerFillStylePreferenceController.java
@@ -0,0 +1,67 @@
+/*
+ * Copyright 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.inputmethod;
+
+import android.content.Context;
+import android.os.UserHandle;
+import android.provider.Settings;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceDataStore;
+import androidx.preference.PreferenceScreen;
+
+import com.android.settings.core.BasePreferenceController;
+
+public class PointerFillStylePreferenceController extends BasePreferenceController {
+
+ @VisibleForTesting
+ static final String KEY_POINTER_FILL_STYLE = "pointer_fill_style";
+
+ public PointerFillStylePreferenceController(@NonNull Context context) {
+ super(context, KEY_POINTER_FILL_STYLE);
+ }
+
+ @AvailabilityStatus
+ public int getAvailabilityStatus() {
+ return android.view.flags.Flags.enableVectorCursorA11ySettings() ? AVAILABLE
+ : CONDITIONALLY_UNAVAILABLE;
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ Preference pointerFillStylePreference = screen.findPreference(KEY_POINTER_FILL_STYLE);
+ if (pointerFillStylePreference == null) {
+ return;
+ }
+ pointerFillStylePreference.setPreferenceDataStore(new PreferenceDataStore() {
+ @Override
+ public void putInt(@NonNull String key, int value) {
+ Settings.System.putIntForUser(mContext.getContentResolver(), key, value,
+ UserHandle.USER_CURRENT);
+ }
+
+ @Override
+ public int getInt(@NonNull String key, int defValue) {
+ return Settings.System.getIntForUser(mContext.getContentResolver(), key, defValue,
+ UserHandle.USER_CURRENT);
+ }
+ });
+ }
+}
diff --git a/src/com/android/settings/network/ConnectivityRepository.kt b/src/com/android/settings/network/ConnectivityRepository.kt
new file mode 100644
index 0000000..3f9b61c
--- /dev/null
+++ b/src/com/android/settings/network/ConnectivityRepository.kt
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network
+
+import android.content.Context
+import android.net.ConnectivityManager
+import android.net.ConnectivityManager.NetworkCallback
+import android.net.Network
+import android.net.NetworkCapabilities
+import android.util.Log
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.channels.awaitClose
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.callbackFlow
+import kotlinx.coroutines.flow.conflate
+import kotlinx.coroutines.flow.flowOn
+
+class ConnectivityRepository(context: Context) {
+ private val connectivityManager = context.getSystemService(ConnectivityManager::class.java)!!
+
+ fun networkCapabilitiesFlow(): Flow<NetworkCapabilities> = callbackFlow {
+ val callback = object : NetworkCallback() {
+ override fun onCapabilitiesChanged(
+ network: Network,
+ networkCapabilities: NetworkCapabilities,
+ ) {
+ trySend(networkCapabilities)
+ Log.d(TAG, "onCapabilitiesChanged: $networkCapabilities")
+ }
+
+ override fun onLost(network: Network) {
+ trySend(NetworkCapabilities())
+ Log.d(TAG, "onLost")
+ }
+ }
+ trySend(getNetworkCapabilities())
+ connectivityManager.registerDefaultNetworkCallback(callback)
+
+ awaitClose { connectivityManager.unregisterNetworkCallback(callback) }
+ }.conflate().flowOn(Dispatchers.Default)
+
+ private fun getNetworkCapabilities(): NetworkCapabilities =
+ connectivityManager.getNetworkCapabilities(connectivityManager.activeNetwork)
+ ?: NetworkCapabilities()
+
+ private companion object {
+ private const val TAG = "ConnectivityRepository"
+ }
+}
diff --git a/src/com/android/settings/network/InternetPreferenceControllerV2.kt b/src/com/android/settings/network/InternetPreferenceControllerV2.kt
new file mode 100644
index 0000000..3c79342
--- /dev/null
+++ b/src/com/android/settings/network/InternetPreferenceControllerV2.kt
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network
+
+import android.content.Context
+import androidx.lifecycle.LifecycleOwner
+import androidx.preference.Preference
+import androidx.preference.PreferenceScreen
+import com.android.settings.R
+import com.android.settings.core.BasePreferenceController
+import com.android.settingslib.Utils
+import com.android.settingslib.spa.framework.util.collectLatestWithLifecycle
+
+class InternetPreferenceControllerV2(context: Context, preferenceKey: String) :
+ BasePreferenceController(context, preferenceKey) {
+
+ private val repository by lazy { InternetPreferenceRepository(mContext) }
+ private var preference: Preference? = null
+
+ override fun getAvailabilityStatus() =
+ if (mContext.resources.getBoolean(R.bool.config_show_internet_settings)) AVAILABLE
+ else UNSUPPORTED_ON_DEVICE
+
+ override fun displayPreference(screen: PreferenceScreen) {
+ super.displayPreference(screen)
+ preference = screen.findPreference(preferenceKey)
+ }
+
+ override fun onViewCreated(viewLifecycleOwner: LifecycleOwner) {
+ repository.displayInfoFlow().collectLatestWithLifecycle(viewLifecycleOwner) { displayInfo ->
+ preference?.apply {
+ summary = displayInfo.summary
+ icon =
+ mContext.getDrawable(displayInfo.iconResId)?.apply {
+ setTintList(Utils.getColorAttr(mContext, android.R.attr.colorControlNormal))
+ }
+ }
+ }
+ }
+}
diff --git a/src/com/android/settings/network/InternetPreferenceRepository.kt b/src/com/android/settings/network/InternetPreferenceRepository.kt
new file mode 100644
index 0000000..41a2fcc
--- /dev/null
+++ b/src/com/android/settings/network/InternetPreferenceRepository.kt
@@ -0,0 +1,133 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network
+
+import android.content.Context
+import android.net.NetworkCapabilities
+import android.net.wifi.WifiInfo
+import android.net.wifi.WifiManager
+import android.provider.Settings
+import android.util.Log
+import androidx.annotation.DrawableRes
+import com.android.settings.R
+import com.android.settings.network.telephony.DataSubscriptionRepository
+import com.android.settings.wifi.WifiSummaryRepository
+import com.android.settings.wifi.repository.WifiRepository
+import com.android.settingslib.spaprivileged.settingsprovider.settingsGlobalBooleanFlow
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.ExperimentalCoroutinesApi
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.combine
+import kotlinx.coroutines.flow.conflate
+import kotlinx.coroutines.flow.flatMapLatest
+import kotlinx.coroutines.flow.flowOf
+import kotlinx.coroutines.flow.flowOn
+import kotlinx.coroutines.flow.map
+import kotlinx.coroutines.flow.onEach
+
+@OptIn(ExperimentalCoroutinesApi::class)
+class InternetPreferenceRepository(
+ private val context: Context,
+ private val connectivityRepository: ConnectivityRepository = ConnectivityRepository(context),
+ private val wifiSummaryRepository: WifiSummaryRepository = WifiSummaryRepository(context),
+ private val dataSubscriptionRepository: DataSubscriptionRepository =
+ DataSubscriptionRepository(context),
+ private val wifiRepository: WifiRepository = WifiRepository(context),
+ private val airplaneModeOnFlow: Flow<Boolean> =
+ context.settingsGlobalBooleanFlow(Settings.Global.AIRPLANE_MODE_ON),
+) {
+
+ data class DisplayInfo(
+ val summary: String,
+ @DrawableRes val iconResId: Int,
+ )
+
+ fun displayInfoFlow(): Flow<DisplayInfo> =
+ connectivityRepository
+ .networkCapabilitiesFlow()
+ .flatMapLatest { capabilities -> capabilities.displayInfoFlow() }
+ .onEach { Log.d(TAG, "displayInfoFlow: $it") }
+ .conflate()
+ .flowOn(Dispatchers.Default)
+
+ private fun NetworkCapabilities.displayInfoFlow(): Flow<DisplayInfo> {
+ if (
+ hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) &&
+ hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)
+ ) {
+ val transportInfo = transportInfo
+ if (transportInfo is WifiInfo && transportInfo.isCarrierMerged) {
+ Log.i(TAG, "Detect a merged carrier Wi-Fi connected.")
+ return cellularDisplayInfoFlow()
+ }
+ for (transportType in transportTypes) {
+ when (transportType) {
+ NetworkCapabilities.TRANSPORT_WIFI -> return wifiDisplayInfoFlow()
+ NetworkCapabilities.TRANSPORT_CELLULAR -> return cellularDisplayInfoFlow()
+ NetworkCapabilities.TRANSPORT_ETHERNET -> return ethernetDisplayInfoFlow()
+ }
+ }
+ }
+ return defaultDisplayInfoFlow()
+ }
+
+ private fun wifiDisplayInfoFlow() =
+ wifiSummaryRepository.summaryFlow().map { summary ->
+ DisplayInfo(
+ summary = summary,
+ iconResId = R.drawable.ic_wifi_signal_4,
+ )
+ }
+
+ private fun cellularDisplayInfoFlow() =
+ dataSubscriptionRepository.dataSummaryFlow().map { summary ->
+ DisplayInfo(
+ summary = summary,
+ iconResId = R.drawable.ic_network_cell,
+ )
+ }
+
+ private fun ethernetDisplayInfoFlow() =
+ flowOf(
+ DisplayInfo(
+ summary = context.getString(R.string.to_switch_networks_disconnect_ethernet),
+ iconResId = R.drawable.ic_settings_ethernet,
+ )
+ )
+
+ private fun defaultDisplayInfoFlow(): Flow<DisplayInfo> =
+ combine(
+ airplaneModeOnFlow,
+ wifiRepository.wifiStateFlow(),
+ ) { airplaneModeOn: Boolean, wifiState: Int ->
+ if (airplaneModeOn && wifiState != WifiManager.WIFI_STATE_ENABLED) {
+ DisplayInfo(
+ summary = context.getString(R.string.condition_airplane_title),
+ iconResId = R.drawable.ic_no_internet_unavailable,
+ )
+ } else {
+ DisplayInfo(
+ summary = context.getString(R.string.networks_available),
+ iconResId = R.drawable.ic_no_internet_available,
+ )
+ }
+ }
+
+ private companion object {
+ private const val TAG = "InternetPreferenceRepo"
+ }
+}
diff --git a/src/com/android/settings/network/NetworkDashboardFragment.java b/src/com/android/settings/network/NetworkDashboardFragment.java
index 323d935..3bc5358 100644
--- a/src/com/android/settings/network/NetworkDashboardFragment.java
+++ b/src/com/android/settings/network/NetworkDashboardFragment.java
@@ -25,6 +25,7 @@
import com.android.settings.SettingsDumpService;
import com.android.settings.core.OnActivityResultListener;
import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.flags.Flags;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -75,9 +76,6 @@
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
Lifecycle lifecycle, LifecycleOwner lifecycleOwner) {
- final InternetPreferenceController internetPreferenceController =
- new InternetPreferenceController(context, lifecycle, lifecycleOwner);
-
final VpnPreferenceController vpnPreferenceController =
new VpnPreferenceController(context);
final PrivateDnsPreferenceController privateDnsPreferenceController =
@@ -92,9 +90,14 @@
controllers.add(new MobileNetworkSummaryController(context, lifecycle, lifecycleOwner));
controllers.add(vpnPreferenceController);
- if (internetPreferenceController != null) {
- controllers.add(internetPreferenceController);
+
+ if (Flags.internetPreferenceControllerV2()) {
+ controllers.add(
+ new InternetPreferenceControllerV2(context, InternetPreferenceController.KEY));
+ } else {
+ controllers.add(new InternetPreferenceController(context, lifecycle, lifecycleOwner));
}
+
controllers.add(privateDnsPreferenceController);
// Start SettingsDumpService after the MobileNetworkRepository is created.
diff --git a/src/com/android/settings/network/ResetNetworkOperationBuilder.java b/src/com/android/settings/network/ResetNetworkOperationBuilder.java
index 4067fba..6f36074 100644
--- a/src/com/android/settings/network/ResetNetworkOperationBuilder.java
+++ b/src/com/android/settings/network/ResetNetworkOperationBuilder.java
@@ -256,16 +256,19 @@
* @return this
*/
public ResetNetworkOperationBuilder restartPhoneProcess() {
- try {
- mContext.getContentResolver().call(
- getResetTelephonyContentProviderAuthority(),
- METHOD_RESTART_PHONE_PROCESS,
- /* arg= */ null,
- /* extras= */ null);
- Log.i(TAG, "Phone process was restarted.");
- } catch (IllegalArgumentException iae) {
- Log.w(TAG, "Fail to restart phone process: " + iae);
- }
+ Runnable runnable = () -> {
+ try {
+ mContext.getContentResolver().call(
+ getResetTelephonyContentProviderAuthority(),
+ METHOD_RESTART_PHONE_PROCESS,
+ /* arg= */ null,
+ /* extras= */ null);
+ Log.i(TAG, "Phone process was restarted.");
+ } catch (IllegalArgumentException iae) {
+ Log.w(TAG, "Fail to restart phone process: " + iae);
+ }
+ };
+ mResetSequence.add(runnable);
return this;
}
@@ -275,16 +278,19 @@
* @return this
*/
public ResetNetworkOperationBuilder restartRild() {
- try {
- mContext.getContentResolver().call(
- getResetTelephonyContentProviderAuthority(),
- METHOD_RESTART_RILD,
- /* arg= */ null,
- /* extras= */ null);
- Log.i(TAG, "RILD was restarted.");
- } catch (IllegalArgumentException iae) {
- Log.w(TAG, "Fail to restart RILD: " + iae);
- }
+ Runnable runnable = () -> {
+ try {
+ mContext.getContentResolver().call(
+ getResetTelephonyContentProviderAuthority(),
+ METHOD_RESTART_RILD,
+ /* arg= */ null,
+ /* extras= */ null);
+ Log.i(TAG, "RILD was restarted.");
+ } catch (IllegalArgumentException iae) {
+ Log.w(TAG, "Fail to restart RILD: " + iae);
+ }
+ };
+ mResetSequence.add(runnable);
return this;
}
diff --git a/src/com/android/settings/network/SimOnboardingActivity.kt b/src/com/android/settings/network/SimOnboardingActivity.kt
index 606e46f..bef10cd 100644
--- a/src/com/android/settings/network/SimOnboardingActivity.kt
+++ b/src/com/android/settings/network/SimOnboardingActivity.kt
@@ -19,6 +19,7 @@
import android.content.Context
import android.content.Intent
import android.os.Bundle
+import android.provider.Settings
import android.telephony.SubscriptionManager
import android.util.Log
import androidx.compose.foundation.layout.Column
@@ -41,7 +42,6 @@
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.MutableState
import androidx.compose.runtime.mutableStateOf
-import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.ui.Alignment
@@ -54,7 +54,9 @@
import com.android.settings.R
import com.android.settings.SidecarFragment
import com.android.settings.network.telephony.SubscriptionActionDialogActivity
+import com.android.settings.network.telephony.SubscriptionRepository
import com.android.settings.network.telephony.ToggleSubscriptionDialogActivity
+import com.android.settings.network.telephony.requireSubscriptionManager
import com.android.settings.spa.SpaActivity.Companion.startSpaActivity
import com.android.settings.spa.network.SimOnboardingPageProvider.getRoute
import com.android.settings.wifi.WifiPickerTrackerHelper
@@ -67,13 +69,17 @@
import com.android.settingslib.spa.widget.dialog.rememberAlertDialogPresenter
import com.android.settingslib.spa.widget.ui.SettingsTitle
import com.android.settingslib.spaprivileged.framework.common.userManager
+import java.util.concurrent.CountDownLatch
+import java.util.concurrent.TimeUnit
import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.callbackFlow
import kotlinx.coroutines.flow.catch
import kotlinx.coroutines.flow.conflate
import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
class SimOnboardingActivity : SpaBaseDialogActivity() {
lateinit var scope: CoroutineScope
@@ -441,7 +447,9 @@
SidecarFragment.State.SUCCESS -> {
Log.i(TAG, "Successfully enable the eSIM profile.")
switchToEuiccSubscriptionSidecar!!.reset()
- callbackListener(CallbackType.CALLBACK_SETUP_NAME)
+ scope.launch {
+ checkSimIsReadyAndGoNext()
+ }
}
SidecarFragment.State.ERROR -> {
@@ -459,7 +467,9 @@
Log.i(TAG, "Successfully switched to removable slot.")
switchToRemovableSlotSidecar!!.reset()
onboardingService.handleTogglePsimAction()
- callbackListener(CallbackType.CALLBACK_SETUP_NAME)
+ scope.launch {
+ checkSimIsReadyAndGoNext()
+ }
}
SidecarFragment.State.ERROR -> {
@@ -491,6 +501,35 @@
}
}
+ suspend fun checkSimIsReadyAndGoNext() {
+ withContext(Dispatchers.Default) {
+ val isEnabled = context.requireSubscriptionManager()
+ .isSubscriptionEnabled(onboardingService.targetSubId)
+ if (!isEnabled) {
+ val latch = CountDownLatch(1)
+ val receiver = CarrierConfigChangedReceiver(latch)
+ try {
+ val waitingTimeMillis =
+ Settings.Global.getLong(
+ context.contentResolver,
+ Settings.Global.EUICC_SWITCH_SLOT_TIMEOUT_MILLIS,
+ UiccSlotUtil.DEFAULT_WAIT_AFTER_SWITCH_TIMEOUT_MILLIS
+ )
+ receiver.registerOn(context)
+ Log.d(TAG, "Start waiting, waitingTime is $waitingTimeMillis")
+ latch.await(waitingTimeMillis, TimeUnit.MILLISECONDS)
+ } catch (e: InterruptedException) {
+ Thread.currentThread().interrupt()
+ Log.e(TAG, "Failed switching to physical slot.", e)
+ } finally {
+ context.unregisterReceiver(receiver)
+ }
+ }
+ Log.d(TAG, "Sim is ready then go to next")
+ callbackListener(CallbackType.CALLBACK_SETUP_NAME)
+ }
+ }
+
@Composable
fun StartingDialogImpl(
nextAction: () -> Unit,
diff --git a/src/com/android/settings/network/SubscriptionUtil.java b/src/com/android/settings/network/SubscriptionUtil.java
index 7e3f78d..74a10e9 100644
--- a/src/com/android/settings/network/SubscriptionUtil.java
+++ b/src/com/android/settings/network/SubscriptionUtil.java
@@ -408,7 +408,6 @@
*
* @return map of active subscription ids to display names.
*/
- @VisibleForTesting
public static CharSequence getUniqueSubscriptionDisplayName(
Integer subscriptionId, Context context) {
final Map<Integer, CharSequence> displayNames = getUniqueSubscriptionDisplayNames(context);
diff --git a/src/com/android/settings/network/TetheredRepository.kt b/src/com/android/settings/network/TetheredRepository.kt
index f18bdca..29a5665 100644
--- a/src/com/android/settings/network/TetheredRepository.kt
+++ b/src/com/android/settings/network/TetheredRepository.kt
@@ -72,7 +72,7 @@
flowOf(null), // kick an initial value
context.broadcastReceiverFlow(IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED)),
).flatMapLatest {
- if (adapter.getState() == BluetoothAdapter.STATE_ON) {
+ if (adapter?.getState() == BluetoothAdapter.STATE_ON) {
isBluetoothPanTetheringOnFlow()
} else {
flowOf(false)
@@ -93,10 +93,10 @@
override fun onServiceDisconnected(profile: Int) {}
}
- adapter.getProfileProxy(context, listener, BluetoothProfile.PAN)
+ adapter?.getProfileProxy(context, listener, BluetoothProfile.PAN)
awaitClose {
- connectedProxy?.let { adapter.closeProfileProxy(BluetoothProfile.PAN, it) }
+ connectedProxy?.let { adapter?.closeProfileProxy(BluetoothProfile.PAN, it) }
}
}.conflate().flowOn(Dispatchers.Default)
}
diff --git a/src/com/android/settings/network/UiccSlotUtil.java b/src/com/android/settings/network/UiccSlotUtil.java
index f15808f..5ae0a36 100644
--- a/src/com/android/settings/network/UiccSlotUtil.java
+++ b/src/com/android/settings/network/UiccSlotUtil.java
@@ -51,7 +51,7 @@
private static final String TAG = "UiccSlotUtil";
- private static final long DEFAULT_WAIT_AFTER_SWITCH_TIMEOUT_MILLIS = 25 * 1000L;
+ static final long DEFAULT_WAIT_AFTER_SWITCH_TIMEOUT_MILLIS = 25 * 1000L;
public static final int INVALID_LOGICAL_SLOT_ID = -1;
public static final int INVALID_PHYSICAL_SLOT_ID = -1;
diff --git a/src/com/android/settings/network/apn/ApnEditCarrierEnabled.kt b/src/com/android/settings/network/apn/ApnEditCarrierEnabled.kt
new file mode 100644
index 0000000..bd58da8
--- /dev/null
+++ b/src/com/android/settings/network/apn/ApnEditCarrierEnabled.kt
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network.apn
+
+import android.provider.Telephony
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.res.booleanResource
+import androidx.compose.ui.res.stringResource
+import com.android.settings.R
+import com.android.settingslib.spa.widget.preference.SwitchPreference
+import com.android.settingslib.spa.widget.preference.SwitchPreferenceModel
+
+@Composable
+fun ApnEditCarrierEnabled(apnData: ApnData, onCarrierEnabledChanged: (Boolean) -> Unit) {
+ SwitchPreference(
+ object : SwitchPreferenceModel {
+ override val title = stringResource(R.string.carrier_enabled)
+ val allowEdit = booleanResource(R.bool.config_allow_edit_carrier_enabled)
+ override val changeable = {
+ allowEdit && apnData.isFieldEnabled(Telephony.Carriers.CARRIER_ENABLED)
+ }
+ override val checked = { apnData.carrierEnabled }
+ override val onCheckedChange = onCarrierEnabledChanged
+ }
+ )
+}
diff --git a/src/com/android/settings/network/apn/ApnEditPageProvider.kt b/src/com/android/settings/network/apn/ApnEditPageProvider.kt
index 71fe4d6..5442082 100644
--- a/src/com/android/settings/network/apn/ApnEditPageProvider.kt
+++ b/src/com/android/settings/network/apn/ApnEditPageProvider.kt
@@ -16,6 +16,7 @@
package com.android.settings.network.apn
+import android.app.settings.SettingsEnums
import android.net.Uri
import android.os.Bundle
import android.provider.Telephony
@@ -62,6 +63,7 @@
object ApnEditPageProvider : SettingsPageProvider {
override val name = "ApnEdit"
+ override val metricsCategory = SettingsEnums.APN_EDITOR
const val TAG = "ApnEditPageProvider"
override val parameter = listOf(
@@ -233,19 +235,7 @@
enabled = apnData.isFieldEnabled(Telephony.Carriers.ROAMING_PROTOCOL),
) { apnData = apnData.copy(apnRoaming = it) }
ApnNetworkTypeCheckBox(apnData) { apnData = apnData.copy(networkType = it) }
- SwitchPreference(
- object : SwitchPreferenceModel {
- override val title = stringResource(R.string.carrier_enabled)
- override val changeable = {
- apnData.apnEnableEnabled &&
- apnData.isFieldEnabled(Telephony.Carriers.CARRIER_ENABLED)
- }
- override val checked = { apnData.apnEnable }
- override val onCheckedChange = { newChecked: Boolean ->
- apnData = apnData.copy(apnEnable = newChecked)
- }
- }
- )
+ ApnEditCarrierEnabled(apnData) { apnData = apnData.copy(carrierEnabled = it) }
}
}
}
\ No newline at end of file
diff --git a/src/com/android/settings/network/apn/ApnRepository.kt b/src/com/android/settings/network/apn/ApnRepository.kt
index 2d41976..8433715 100644
--- a/src/com/android/settings/network/apn/ApnRepository.kt
+++ b/src/com/android/settings/network/apn/ApnRepository.kt
@@ -90,7 +90,7 @@
apnRoaming = context.convertProtocol2Options(
cursor.getString(Telephony.Carriers.ROAMING_PROTOCOL)
),
- apnEnable = cursor.getInt(Telephony.Carriers.CARRIER_ENABLED) == 1,
+ carrierEnabled = cursor.getInt(Telephony.Carriers.CARRIER_ENABLED) == 1,
networkType = cursor.getLong(Telephony.Carriers.NETWORK_TYPE_BITMASK),
edited = cursor.getInt(Telephony.Carriers.EDITED_STATUS),
userEditable = cursor.getInt(Telephony.Carriers.USER_EDITABLE),
diff --git a/src/com/android/settings/network/apn/ApnSettings.java b/src/com/android/settings/network/apn/ApnSettings.java
index 5249eb2..2debba1 100644
--- a/src/com/android/settings/network/apn/ApnSettings.java
+++ b/src/com/android/settings/network/apn/ApnSettings.java
@@ -99,6 +99,8 @@
private UserManager mUserManager;
private int mSubId;
private PreferredApnRepository mPreferredApnRepository;
+ @Nullable
+ private String mPreferredApnKey;
private String mMvnoType;
private String mMvnoMatchData;
@@ -175,6 +177,7 @@
});
mPreferredApnRepository.collectPreferredApn(viewLifecycleOwner, (preferredApn) -> {
+ mPreferredApnKey = preferredApn;
final PreferenceGroup apnPreferenceList = findPreference(APN_LIST);
for (int i = 0; i < apnPreferenceList.getPreferenceCount(); i++) {
ApnPreference apnPreference = (ApnPreference) apnPreferenceList.getPreference(i);
@@ -259,6 +262,7 @@
((type == null) || type.contains(ApnSetting.TYPE_DEFAULT_STRING));
pref.setDefaultSelectable(defaultSelectable);
if (defaultSelectable) {
+ pref.setIsChecked(key.equals(mPreferredApnKey));
apnList.add(pref);
} else {
mmsApnList.add(pref);
diff --git a/src/com/android/settings/network/apn/ApnStatus.kt b/src/com/android/settings/network/apn/ApnStatus.kt
index dc50452..6492d39 100644
--- a/src/com/android/settings/network/apn/ApnStatus.kt
+++ b/src/com/android/settings/network/apn/ApnStatus.kt
@@ -44,11 +44,10 @@
val apnType: String = "",
val apnProtocol: Int = -1,
val apnRoaming: Int = -1,
- val apnEnable: Boolean = true,
+ val carrierEnabled: Boolean = true,
val networkType: Long = 0,
val edited: Int = Telephony.Carriers.USER_EDITED,
val userEditable: Int = 1,
- val apnEnableEnabled: Boolean = true,
val newApn: Boolean = false,
val subId: Int = -1,
val validEnabled: Boolean = false,
@@ -72,7 +71,7 @@
Telephony.Carriers.NETWORK_TYPE_BITMASK to networkType,
// Copy network type into lingering network type.
Telephony.Carriers.LINGERING_NETWORK_TYPE_BITMASK to networkType,
- Telephony.Carriers.CARRIER_ENABLED to apnEnable,
+ Telephony.Carriers.CARRIER_ENABLED to carrierEnabled,
Telephony.Carriers.EDITED_STATUS to Telephony.Carriers.USER_EDITED,
)
@@ -134,10 +133,6 @@
)
}
- apnDataInit = apnDataInit.copy(
- apnEnableEnabled =
- context.resources.getBoolean(R.bool.config_allow_edit_carrier_enabled)
- )
// TODO: mIsCarrierIdApn
return disableInit(apnDataInit)
}
diff --git a/src/com/android/settings/network/telephony/DataSubscriptionRepository.kt b/src/com/android/settings/network/telephony/DataSubscriptionRepository.kt
new file mode 100644
index 0000000..62e7e98
--- /dev/null
+++ b/src/com/android/settings/network/telephony/DataSubscriptionRepository.kt
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network.telephony
+
+import android.content.Context
+import android.content.IntentFilter
+import android.telephony.SubscriptionManager
+import android.telephony.TelephonyCallback
+import android.telephony.TelephonyManager
+import android.util.Log
+import androidx.annotation.VisibleForTesting
+import com.android.settings.R
+import com.android.settings.network.SubscriptionUtil
+import com.android.settingslib.spaprivileged.framework.common.broadcastReceiverFlow
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.combine
+import kotlinx.coroutines.flow.conflate
+import kotlinx.coroutines.flow.distinctUntilChanged
+import kotlinx.coroutines.flow.flowOn
+import kotlinx.coroutines.flow.map
+import kotlinx.coroutines.flow.onStart
+
+class DataSubscriptionRepository(
+ private val context: Context,
+ private val getDisplayName: (subId: Int) -> String = { subId ->
+ SubscriptionUtil.getUniqueSubscriptionDisplayName(subId, context).toString()
+ },
+) {
+ private val telephonyManager = context.getSystemService(TelephonyManager::class.java)!!
+ private val subscriptionManager = context.requireSubscriptionManager()
+
+ fun defaultDataSubscriptionIdFlow(): Flow<Int> =
+ context
+ .broadcastReceiverFlow(
+ IntentFilter(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED)
+ )
+ .map { it.getIntExtra(SUBSCRIPTION_KEY, SubscriptionManager.INVALID_SUBSCRIPTION_ID) }
+ .onStart { emit(SubscriptionManager.getDefaultDataSubscriptionId()) }
+ .distinctUntilChanged()
+ .conflate()
+ .flowOn(Dispatchers.Default)
+
+ fun activeDataSubscriptionIdFlow(): Flow<Int> =
+ telephonyManager
+ .telephonyCallbackFlow {
+ object : TelephonyCallback(), TelephonyCallback.ActiveDataSubscriptionIdListener {
+ override fun onActiveDataSubscriptionIdChanged(subId: Int) {
+ trySend(subId)
+ Log.d(TAG, "activeDataSubscriptionIdFlow: $subId")
+ }
+ }
+ }
+ .distinctUntilChanged()
+
+ fun dataSummaryFlow(): Flow<String> =
+ combine(defaultDataSubscriptionIdFlow(), activeDataSubscriptionIdFlow()) {
+ defaultDataSubId,
+ activeDataSubId ->
+ getDataSummary(defaultDataSubId, activeDataSubId)
+ }
+ .conflate()
+ .flowOn(Dispatchers.Default)
+
+ private fun getDataSummary(defaultDataSubId: Int, activeDataSubId: Int): String {
+ if (defaultDataSubId == activeDataSubId) return getDisplayName(defaultDataSubId)
+ val activeSubInfo =
+ subscriptionManager.getActiveSubscriptionInfo(activeDataSubId)
+ ?: return getDisplayName(defaultDataSubId)
+ if (!SubscriptionUtil.isSubscriptionVisible(subscriptionManager, context, activeSubInfo)) {
+ return getDisplayName(defaultDataSubId)
+ }
+ // non-DDS is active
+ return context.getString(R.string.mobile_data_temp_using, getDisplayName(activeDataSubId))
+ }
+
+ companion object {
+ private const val TAG = "DataSubscriptionRepo"
+
+ @VisibleForTesting const val SUBSCRIPTION_KEY = "subscription"
+ }
+}
diff --git a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
index 56ce9e7..e92d999 100644
--- a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
+++ b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
@@ -507,7 +507,9 @@
}
}
} else if (phoneType == TelephonyManager.PHONE_TYPE_GSM) {
- if (MobileNetworkUtils.isTdscdmaSupported(mContext, mSubId)) {
+ if (mIsGlobalCdma) {
+ enabledNetworkType = EnabledNetworks.ENABLED_NETWORKS_CDMA_CHOICES;
+ } else if (MobileNetworkUtils.isTdscdmaSupported(mContext, mSubId)) {
enabledNetworkType = EnabledNetworks.ENABLED_NETWORKS_TDSCDMA_CHOICES;
} else if (!mDisplay2gOptions && !mDisplay3gOptions) {
enabledNetworkType = mShow4gForLTE
@@ -521,8 +523,6 @@
: EnabledNetworks.ENABLED_NETWORKS_EXCEPT_GSM_CHOICES;
} else if (!mLteEnabled) {
enabledNetworkType = EnabledNetworks.ENABLED_NETWORKS_EXCEPT_LTE_CHOICES;
- } else if (mIsGlobalCdma) {
- enabledNetworkType = EnabledNetworks.ENABLED_NETWORKS_CDMA_CHOICES;
} else {
enabledNetworkType = mShow4gForLTE ? EnabledNetworks.ENABLED_NETWORKS_4G_CHOICES
: EnabledNetworks.ENABLED_NETWORKS_CHOICES;
diff --git a/src/com/android/settings/network/telephony/SatelliteSetting.java b/src/com/android/settings/network/telephony/SatelliteSetting.java
index 314fb3a..7e9e61d 100644
--- a/src/com/android/settings/network/telephony/SatelliteSetting.java
+++ b/src/com/android/settings/network/telephony/SatelliteSetting.java
@@ -92,6 +92,14 @@
}
mActivity = getActivity();
+
+ mSatelliteManager = mActivity.getSystemService(SatelliteManager.class);
+ if (mSatelliteManager == null) {
+ Log.d(TAG, "SatelliteManager is null, do nothing.");
+ finish();
+ return;
+ }
+
mSubId = mActivity.getIntent().getIntExtra(SUB_ID,
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
@@ -104,7 +112,6 @@
}
mTelephonymanager = mActivity.getSystemService(TelephonyManager.class);
- mSatelliteManager = mActivity.getSystemService(SatelliteManager.class);
}
@Override
diff --git a/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java b/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java
index 153698c..9ca0294 100644
--- a/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java
+++ b/src/com/android/settings/network/telephony/SatelliteSettingPreferenceController.java
@@ -64,6 +64,10 @@
return UNSUPPORTED_ON_DEVICE;
}
+ if (mSatelliteManager == null) {
+ return UNSUPPORTED_ON_DEVICE;
+ }
+
final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId);
final boolean isSatelliteAttachSupported = carrierConfig.getBoolean(
CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL);
diff --git a/src/com/android/settings/network/telephony/TelephonyRepository.kt b/src/com/android/settings/network/telephony/TelephonyRepository.kt
index d0d53b7..7c334ee 100644
--- a/src/com/android/settings/network/telephony/TelephonyRepository.kt
+++ b/src/com/android/settings/network/telephony/TelephonyRepository.kt
@@ -114,14 +114,17 @@
fun <T> Context.telephonyCallbackFlow(
subId: Int,
block: ProducerScope<T>.() -> TelephonyCallback,
-): Flow<T> = callbackFlow {
- val telephonyManager = telephonyManager(subId)
+): Flow<T> = telephonyManager(subId).telephonyCallbackFlow(block)
+/** Creates an instance of a cold Flow for Telephony callback. */
+fun <T> TelephonyManager.telephonyCallbackFlow(
+ block: ProducerScope<T>.() -> TelephonyCallback,
+): Flow<T> = callbackFlow {
val callback = block()
- telephonyManager.registerTelephonyCallback(Dispatchers.Default.asExecutor(), callback)
+ registerTelephonyCallback(Dispatchers.Default.asExecutor(), callback)
- awaitClose { telephonyManager.unregisterTelephonyCallback(callback) }
+ awaitClose { unregisterTelephonyCallback(callback) }
}.conflate().flowOn(Dispatchers.Default)
fun Context.telephonyManager(subId: Int): TelephonyManager =
diff --git a/src/com/android/settings/notification/modes/IconLoader.java b/src/com/android/settings/notification/modes/IconLoader.java
index 8a02093..c590285 100644
--- a/src/com/android/settings/notification/modes/IconLoader.java
+++ b/src/com/android/settings/notification/modes/IconLoader.java
@@ -36,8 +36,6 @@
import androidx.annotation.VisibleForTesting;
import androidx.appcompat.content.res.AppCompatResources;
-import com.android.settings.R;
-
import com.google.common.util.concurrent.FluentFuture;
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
@@ -123,17 +121,26 @@
private static Drawable getFallbackIcon(Context context, int ruleType) {
int iconResIdFromType = switch (ruleType) {
- case AutomaticZenRule.TYPE_UNKNOWN -> R.drawable.ic_zen_mode_type_unknown;
- case AutomaticZenRule.TYPE_OTHER -> R.drawable.ic_zen_mode_type_other;
- case AutomaticZenRule.TYPE_SCHEDULE_TIME -> R.drawable.ic_zen_mode_type_schedule_time;
+ case AutomaticZenRule.TYPE_UNKNOWN ->
+ com.android.internal.R.drawable.ic_zen_mode_type_unknown;
+ case AutomaticZenRule.TYPE_OTHER ->
+ com.android.internal.R.drawable.ic_zen_mode_type_other;
+ case AutomaticZenRule.TYPE_SCHEDULE_TIME ->
+ com.android.internal.R.drawable.ic_zen_mode_type_schedule_time;
case AutomaticZenRule.TYPE_SCHEDULE_CALENDAR ->
- R.drawable.ic_zen_mode_type_schedule_calendar;
- case AutomaticZenRule.TYPE_BEDTIME -> R.drawable.ic_zen_mode_type_bedtime;
- case AutomaticZenRule.TYPE_DRIVING -> R.drawable.ic_zen_mode_type_driving;
- case AutomaticZenRule.TYPE_IMMERSIVE -> R.drawable.ic_zen_mode_type_immersive;
- case AutomaticZenRule.TYPE_THEATER -> R.drawable.ic_zen_mode_type_theater;
- case AutomaticZenRule.TYPE_MANAGED -> R.drawable.ic_zen_mode_type_managed;
- default -> R.drawable.ic_zen_mode_type_unknown;
+ com.android.internal.R.drawable.ic_zen_mode_type_schedule_calendar;
+ case AutomaticZenRule.TYPE_BEDTIME ->
+ com.android.internal.R.drawable.ic_zen_mode_type_bedtime;
+ case AutomaticZenRule.TYPE_DRIVING ->
+ com.android.internal.R.drawable.ic_zen_mode_type_driving;
+ case AutomaticZenRule.TYPE_IMMERSIVE ->
+ com.android.internal.R.drawable.ic_zen_mode_type_immersive;
+ case AutomaticZenRule.TYPE_THEATER ->
+ com.android.internal.R.drawable.ic_zen_mode_type_theater;
+ case AutomaticZenRule.TYPE_MANAGED ->
+ com.android.internal.R.drawable.ic_zen_mode_type_managed;
+ default ->
+ com.android.internal.R.drawable.ic_zen_mode_type_unknown;
};
return requireNonNull(context.getDrawable(iconResIdFromType));
}
diff --git a/src/com/android/settings/notification/modes/IconOptionsProvider.java b/src/com/android/settings/notification/modes/IconOptionsProvider.java
new file mode 100644
index 0000000..cd00664
--- /dev/null
+++ b/src/com/android/settings/notification/modes/IconOptionsProvider.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import androidx.annotation.DrawableRes;
+import androidx.annotation.NonNull;
+
+import com.google.common.collect.ImmutableList;
+
+interface IconOptionsProvider {
+
+ @NonNull ImmutableList<IconInfo> getIcons();
+
+ record IconInfo(@DrawableRes int resId, String description) { }
+}
diff --git a/src/com/android/settings/notification/modes/IconOptionsProviderImpl.java b/src/com/android/settings/notification/modes/IconOptionsProviderImpl.java
new file mode 100644
index 0000000..f296ae1
--- /dev/null
+++ b/src/com/android/settings/notification/modes/IconOptionsProviderImpl.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.util.Log;
+
+import androidx.annotation.DrawableRes;
+import androidx.annotation.NonNull;
+
+import com.android.settings.R;
+
+import com.google.common.collect.ImmutableList;
+
+class IconOptionsProviderImpl implements IconOptionsProvider {
+
+ private static final String TAG = "IconOptionsProviderImpl";
+
+ private final Context mContext;
+
+ IconOptionsProviderImpl(Context context) {
+ mContext = context.getApplicationContext();
+ }
+
+ @Override
+ @NonNull
+ public ImmutableList<IconInfo> getIcons() {
+ ImmutableList.Builder<IconInfo> list = ImmutableList.builder();
+ try (TypedArray icons = mContext.getResources().obtainTypedArray(
+ R.array.zen_mode_icon_options)) {
+ String[] descriptions = mContext.getResources().getStringArray(
+ R.array.zen_mode_icon_options_descriptions);
+ if (icons.length() != descriptions.length) {
+ Log.wtf(TAG, "Size mismatch between zen_mode_icon_options (" + icons.length()
+ + ") and zen_mode_icon_options_descriptions (" + descriptions.length + ")");
+ }
+
+ for (int i = 0; i < Math.min(icons.length(), descriptions.length); i++) {
+ @DrawableRes int resId = icons.getResourceId(i, 0);
+ if (resId != 0) {
+ list.add(new IconInfo(resId, descriptions[i]));
+ }
+ }
+ }
+ return list.build();
+ }
+}
diff --git a/src/com/android/settings/notification/modes/IconUtil.java b/src/com/android/settings/notification/modes/IconUtil.java
new file mode 100644
index 0000000..c6ecaa0
--- /dev/null
+++ b/src/com/android/settings/notification/modes/IconUtil.java
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+
+import android.content.Context;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.LayerDrawable;
+import android.graphics.drawable.ShapeDrawable;
+import android.graphics.drawable.shapes.OvalShape;
+
+import androidx.annotation.DrawableRes;
+import androidx.annotation.NonNull;
+
+import com.android.settings.R;
+import com.android.settingslib.Utils;
+
+class IconUtil {
+
+ static Drawable applyTint(@NonNull Context context, @NonNull Drawable icon) {
+ icon = icon.mutate();
+ icon.setTintList(
+ Utils.getColorAttr(context, android.R.attr.colorControlNormal));
+ return icon;
+ }
+
+ /**
+ * Returns a variant of the supplied {@code icon} to be used in the icon picker. The inner icon
+ * is 36x36dp and it's contained into a circle of diameter 54dp.
+ */
+ static Drawable makeIconCircle(@NonNull Context context, @NonNull Drawable icon) {
+ ShapeDrawable background = new ShapeDrawable(new OvalShape());
+ background.getPaint().setColor(Utils.getColorAttrDefaultColor(context,
+ com.android.internal.R.attr.materialColorSecondaryContainer));
+ icon.setTint(Utils.getColorAttrDefaultColor(context,
+ com.android.internal.R.attr.materialColorOnSecondaryContainer));
+
+ LayerDrawable layerDrawable = new LayerDrawable(new Drawable[] { background, icon });
+
+ int circleDiameter = context.getResources().getDimensionPixelSize(
+ R.dimen.zen_mode_icon_list_circle_diameter);
+ int iconSize = context.getResources().getDimensionPixelSize(
+ R.dimen.zen_mode_icon_list_icon_size);
+ int iconPadding = (circleDiameter - iconSize) / 2;
+ layerDrawable.setBounds(0, 0, circleDiameter, circleDiameter);
+ layerDrawable.setLayerInset(1, iconPadding, iconPadding, iconPadding, iconPadding);
+
+ return layerDrawable;
+ }
+
+ static Drawable makeIconCircle(@NonNull Context context, @DrawableRes int iconResId) {
+ return makeIconCircle(context, checkNotNull(context.getDrawable(iconResId)));
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenHelperBackend.java b/src/com/android/settings/notification/modes/ZenHelperBackend.java
new file mode 100644
index 0000000..4136c22
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenHelperBackend.java
@@ -0,0 +1,119 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.annotation.Nullable;
+import android.app.INotificationManager;
+import android.content.Context;
+import android.content.pm.ParceledListSlice;
+import android.database.Cursor;
+import android.os.ServiceManager;
+import android.provider.ContactsContract;
+import android.service.notification.ConversationChannelWrapper;
+import android.util.Log;
+
+import androidx.annotation.VisibleForTesting;
+
+import com.android.settings.R;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Class used for Settings-system_server interactions that are not <em>directly</em> related to
+ * Mode management, but still used in the UI of its Settings pages (such as listing priority
+ * conversations, contacts, etc).
+ */
+class ZenHelperBackend {
+
+ private static final String TAG = "ZenHelperBackend";
+
+ @Nullable // Until first usage
+ private static ZenHelperBackend sInstance;
+
+ private final Context mContext;
+ private final INotificationManager mInm;
+
+ static ZenHelperBackend getInstance(Context context) {
+ if (sInstance == null) {
+ sInstance = new ZenHelperBackend(context.getApplicationContext());
+ }
+ return sInstance;
+ }
+
+ ZenHelperBackend(Context context) {
+ mContext = context;
+ mInm = INotificationManager.Stub.asInterface(
+ ServiceManager.getService(Context.NOTIFICATION_SERVICE));
+ }
+
+ /**
+ * Returns all of a user's packages that have at least one channel that will bypass DND
+ */
+ List<String> getPackagesBypassingDnd(int userId,
+ boolean includeConversationChannels) {
+ try {
+ return mInm.getPackagesBypassingDnd(userId, includeConversationChannels);
+ } catch (Exception e) {
+ Log.w(TAG, "Error calling NoMan", e);
+ return new ArrayList<>();
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ ParceledListSlice<ConversationChannelWrapper> getConversations(boolean onlyImportant) {
+ try {
+ return mInm.getConversations(onlyImportant);
+ } catch (Exception e) {
+ Log.w(TAG, "Error calling NoMan", e);
+ return ParceledListSlice.emptyList();
+ }
+ }
+
+ List<String> getStarredContacts() {
+ try (Cursor cursor = queryStarredContactsData()) {
+ return getStarredContacts(cursor);
+ }
+ }
+
+ @VisibleForTesting
+ List<String> getStarredContacts(Cursor cursor) {
+ List<String> starredContacts = new ArrayList<>();
+ if (cursor != null && cursor.moveToFirst()) {
+ do {
+ String contact = cursor.getString(0);
+ starredContacts.add(contact != null ? contact :
+ mContext.getString(R.string.zen_mode_starred_contacts_empty_name));
+
+ } while (cursor.moveToNext());
+ }
+ return starredContacts;
+ }
+
+ private Cursor queryStarredContactsData() {
+ return mContext.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,
+ new String[]{ContactsContract.Contacts.DISPLAY_NAME_PRIMARY},
+ ContactsContract.Data.STARRED + "=1", null,
+ ContactsContract.Data.TIMES_CONTACTED);
+ }
+
+ Cursor queryAllContactsData() {
+ return mContext.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,
+ new String[]{ContactsContract.Contacts.DISPLAY_NAME_PRIMARY},
+ null, null, null);
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenMode.java b/src/com/android/settings/notification/modes/ZenMode.java
index 1be7e5f..cbe915b 100644
--- a/src/com/android/settings/notification/modes/ZenMode.java
+++ b/src/com/android/settings/notification/modes/ZenMode.java
@@ -103,8 +103,8 @@
mIsManualDnd = isManualDnd;
}
- static ZenMode manualDndMode(AutomaticZenRule dndPolicyAsRule, boolean isActive) {
- return new ZenMode(MANUAL_DND_MODE_ID, dndPolicyAsRule, isActive, true);
+ static ZenMode manualDndMode(AutomaticZenRule manualRule, boolean isActive) {
+ return new ZenMode(MANUAL_DND_MODE_ID, manualRule, isActive, true);
}
@NonNull
@@ -204,6 +204,14 @@
: new ZenDeviceEffects.Builder().build();
}
+ public boolean canEditName() {
+ return !isManualDnd();
+ }
+
+ public boolean canEditIcon() {
+ return !isManualDnd();
+ }
+
public boolean canBeDeleted() {
return !mIsManualDnd;
}
diff --git a/src/com/android/settings/notification/modes/ZenModeActionsPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeActionsPreferenceController.java
new file mode 100644
index 0000000..8585234
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeActionsPreferenceController.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import static com.android.settings.notification.modes.ZenModeFragmentBase.MODE_ID;
+
+import android.content.Context;
+import android.os.Bundle;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.preference.Preference;
+
+import com.android.settings.R;
+import com.android.settings.core.SubSettingLauncher;
+import com.android.settingslib.widget.ActionButtonsPreference;
+
+class ZenModeActionsPreferenceController extends AbstractZenModePreferenceController {
+
+ ZenModeActionsPreferenceController(@NonNull Context context, @NonNull String key,
+ @Nullable ZenModesBackend backend) {
+ super(context, key, backend);
+ }
+
+ @Override
+ void updateState(Preference preference, @NonNull ZenMode zenMode) {
+ ActionButtonsPreference buttonsPreference = (ActionButtonsPreference) preference;
+
+ // TODO: b/346278854 - Add rename action (with setButton1Enabled(zenMode.canEditName())
+ buttonsPreference.setButton1Text(R.string.zen_mode_action_change_name);
+ buttonsPreference.setButton1Icon(R.drawable.ic_mode_edit);
+ buttonsPreference.setButton1Enabled(false);
+
+ buttonsPreference.setButton2Text(R.string.zen_mode_action_change_icon);
+ buttonsPreference.setButton2Icon(R.drawable.ic_zen_mode_action_change_icon);
+ buttonsPreference.setButton2Enabled(zenMode.canEditIcon());
+ buttonsPreference.setButton2OnClickListener(v -> {
+ Bundle bundle = new Bundle();
+ bundle.putString(MODE_ID, zenMode.getId());
+ new SubSettingLauncher(mContext)
+ .setDestination(ZenModeIconPickerFragment.class.getName())
+ // TODO: b/332937635 - Update metrics category
+ .setSourceMetricsCategory(0)
+ .setArguments(bundle)
+ .launch();
+ });
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceController.java
index 42b58b1..691c92e 100644
--- a/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceController.java
@@ -20,23 +20,45 @@
import android.content.Context;
import android.os.Bundle;
+import android.util.ArraySet;
import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.core.text.BidiFormatter;
+import androidx.fragment.app.Fragment;
import androidx.preference.Preference;
import com.android.settings.core.SubSettingLauncher;
+import com.android.settingslib.applications.ApplicationsState;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
/**
* Preference with a link and summary about what apps can break through the mode
*/
-public class ZenModeAppsLinkPreferenceController extends AbstractZenModePreferenceController {
+class ZenModeAppsLinkPreferenceController extends AbstractZenModePreferenceController {
+
+ private static final String TAG = "ZenModeAppsLinkPreferenceController";
private final ZenModeSummaryHelper mSummaryHelper;
+ private ApplicationsState.Session mAppSession;
+ private final ZenHelperBackend mHelperBackend;
+ private ZenMode mZenMode;
+ private Preference mPreference;
- public ZenModeAppsLinkPreferenceController(Context context, String key,
- ZenModesBackend backend) {
+ ZenModeAppsLinkPreferenceController(Context context, String key, Fragment host,
+ ApplicationsState applicationsState, ZenModesBackend backend,
+ ZenHelperBackend helperBackend) {
super(context, key, backend);
- mSummaryHelper = new ZenModeSummaryHelper(mContext, mBackend);
+ mSummaryHelper = new ZenModeSummaryHelper(mContext, helperBackend);
+ mHelperBackend = helperBackend;
+ if (applicationsState != null && host != null) {
+ mAppSession = applicationsState.newSession(mAppSessionCallbacks, host.getLifecycle());
+ }
}
@Override
@@ -49,6 +71,84 @@
.setSourceMetricsCategory(0)
.setArguments(bundle)
.toIntent());
- preference.setSummary(mSummaryHelper.getAppsSummary(zenMode));
+ mZenMode = zenMode;
+ mPreference = preference;
+ triggerUpdateAppsBypassingDndSummaryText();
}
+
+ private void triggerUpdateAppsBypassingDndSummaryText() {
+ if (mAppSession == null) {
+ return;
+ }
+
+ ApplicationsState.AppFilter filter = android.multiuser.Flags.enablePrivateSpaceFeatures()
+ && android.multiuser.Flags.handleInterleavedSettingsForPrivateSpace()
+ ? ApplicationsState.FILTER_ENABLED_NOT_QUIET
+ : ApplicationsState.FILTER_ALL_ENABLED;
+ // We initiate a rebuild in the background here. Once the rebuild is completed,
+ // the onRebuildComplete() callback will be invoked, which will trigger the summary text
+ // to be initialized.
+ mAppSession.rebuild(filter, ApplicationsState.ALPHA_COMPARATOR, false);
+ }
+
+ private void updateAppsBypassingDndSummaryText(List<ApplicationsState.AppEntry> apps) {
+ Set<String> appNames = getAppsBypassingDnd(apps);
+ mPreference.setSummary(mSummaryHelper.getAppsSummary(mZenMode, appNames));
+ }
+
+ @VisibleForTesting
+ ArraySet<String> getAppsBypassingDnd(@NonNull List<ApplicationsState.AppEntry> apps) {
+ ArraySet<String> appsBypassingDnd = new ArraySet<>();
+
+ Map<String, String> pkgLabelMap = new HashMap<String, String>();
+ for (ApplicationsState.AppEntry entry : apps) {
+ if (entry.info != null) {
+ pkgLabelMap.put(entry.info.packageName, entry.label);
+ }
+ }
+ for (String pkg : mHelperBackend.getPackagesBypassingDnd(mContext.getUserId(),
+ /* includeConversationChannels= */ false)) {
+ // Settings may hide some packages from the user, so if they're not present here
+ // we skip displaying them, even if they bypass dnd.
+ if (pkgLabelMap.get(pkg) == null) {
+ continue;
+ }
+ appsBypassingDnd.add(BidiFormatter.getInstance().unicodeWrap(pkgLabelMap.get(pkg)));
+ }
+ return appsBypassingDnd;
+ }
+
+ @VisibleForTesting final ApplicationsState.Callbacks mAppSessionCallbacks =
+ new ApplicationsState.Callbacks() {
+
+ @Override
+ public void onRunningStateChanged(boolean running) { }
+
+ @Override
+ public void onPackageListChanged() {
+ triggerUpdateAppsBypassingDndSummaryText();
+ }
+
+ @Override
+ public void onRebuildComplete(ArrayList<ApplicationsState.AppEntry> apps) {
+ updateAppsBypassingDndSummaryText(apps);
+ }
+
+ @Override
+ public void onPackageIconChanged() { }
+
+ @Override
+ public void onPackageSizeChanged(String packageName) { }
+
+ @Override
+ public void onAllSizesComputed() { }
+
+ @Override
+ public void onLauncherInfoChanged() { }
+
+ @Override
+ public void onLoadEntriesCompleted() {
+ triggerUpdateAppsBypassingDndSummaryText();
+ }
+ };
}
diff --git a/src/com/android/settings/notification/modes/ZenModeCallsFragment.java b/src/com/android/settings/notification/modes/ZenModeCallsFragment.java
index 4c85bf5..54072ac 100644
--- a/src/com/android/settings/notification/modes/ZenModeCallsFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModeCallsFragment.java
@@ -18,6 +18,7 @@
import android.app.settings.SettingsEnums;
import android.content.Context;
+
import com.android.settings.R;
import com.android.settingslib.core.AbstractPreferenceController;
@@ -34,7 +35,7 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
List<AbstractPreferenceController> controllers = new ArrayList<>();
controllers.add(new ZenModePrioritySendersPreferenceController(context,
- "zen_mode_settings_category_calls", false, mBackend));
+ "zen_mode_settings_category_calls", false, mBackend, mHelperBackend));
controllers.add(new ZenModeRepeatCallersPreferenceController(context,
"zen_mode_repeat_callers", mBackend,
context.getResources().getInteger(com.android.internal.R.integer
diff --git a/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceController.java
index 746af44..8d27d4c 100644
--- a/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceController.java
@@ -31,9 +31,9 @@
private final ZenModeSummaryHelper mSummaryHelper;
public ZenModeCallsLinkPreferenceController(Context context, String key,
- ZenModesBackend backend) {
+ ZenModesBackend backend, ZenHelperBackend helperBackend) {
super(context, key, backend);
- mSummaryHelper = new ZenModeSummaryHelper(context, backend);
+ mSummaryHelper = new ZenModeSummaryHelper(context, helperBackend);
}
@Override
diff --git a/src/com/android/settings/notification/modes/ZenModeDisplayFragment.java b/src/com/android/settings/notification/modes/ZenModeDisplayFragment.java
index 0972049..8c3b826 100644
--- a/src/com/android/settings/notification/modes/ZenModeDisplayFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModeDisplayFragment.java
@@ -18,6 +18,7 @@
import android.app.settings.SettingsEnums;
import android.content.Context;
+
import com.android.settings.R;
import com.android.settingslib.core.AbstractPreferenceController;
@@ -34,7 +35,7 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
List<AbstractPreferenceController> prefControllers = new ArrayList<>();
prefControllers.add(new ZenModeNotifVisLinkPreferenceController(
- context, "notification_visibility", mBackend));
+ context, "notification_visibility", mBackend, mHelperBackend));
prefControllers.add(new ZenModeDisplayEffectPreferenceController(
context, "effect_greyscale", mBackend));
prefControllers.add(new ZenModeDisplayEffectPreferenceController(
diff --git a/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceController.java
index 8720a4b..712c78a 100644
--- a/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceController.java
@@ -31,9 +31,9 @@
private final ZenModeSummaryHelper mSummaryHelper;
public ZenModeDisplayLinkPreferenceController(Context context, String key,
- ZenModesBackend backend) {
+ ZenModesBackend backend, ZenHelperBackend helperBackend) {
super(context, key, backend);
- mSummaryHelper = new ZenModeSummaryHelper(context, backend);
+ mSummaryHelper = new ZenModeSummaryHelper(context, helperBackend);
}
@Override
diff --git a/src/com/android/settings/notification/modes/ZenModeExitAtAlarmPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeExitAtAlarmPreferenceController.java
new file mode 100644
index 0000000..8517af1
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeExitAtAlarmPreferenceController.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+import android.service.notification.ZenModeConfig;
+
+import androidx.annotation.NonNull;
+import androidx.preference.Preference;
+import androidx.preference.TwoStatePreference;
+
+/**
+ * Preference controller controlling whether a time schedule-based mode ends at the next alarm.
+ */
+class ZenModeExitAtAlarmPreferenceController extends
+ AbstractZenModePreferenceController implements Preference.OnPreferenceChangeListener {
+ private ZenModeConfig.ScheduleInfo mSchedule;
+
+ ZenModeExitAtAlarmPreferenceController(Context context,
+ String key, ZenModesBackend backend) {
+ super(context, key, backend);
+ }
+
+ @Override
+ public void updateState(Preference preference, @NonNull ZenMode zenMode) {
+ mSchedule = ZenModeConfig.tryParseScheduleConditionId(zenMode.getRule().getConditionId());
+ ((TwoStatePreference) preference).setChecked(mSchedule.exitAtAlarm);
+ }
+
+ @Override
+ public boolean onPreferenceChange(@NonNull Preference preference, Object newValue) {
+ final boolean exitAtAlarm = (Boolean) newValue;
+ if (mSchedule.exitAtAlarm != exitAtAlarm) {
+ mSchedule.exitAtAlarm = exitAtAlarm;
+ return saveMode(mode -> {
+ mode.getRule().setConditionId(ZenModeConfig.toScheduleConditionId(mSchedule));
+ return mode;
+ });
+ }
+ return false;
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeFragment.java b/src/com/android/settings/notification/modes/ZenModeFragment.java
index 7084f51..6bda5e1 100644
--- a/src/com/android/settings/notification/modes/ZenModeFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModeFragment.java
@@ -16,11 +16,13 @@
package com.android.settings.notification.modes;
+import android.app.Application;
import android.app.AutomaticZenRule;
import android.app.settings.SettingsEnums;
import android.content.Context;
import com.android.settings.R;
+import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.AbstractPreferenceController;
import java.util.ArrayList;
@@ -38,14 +40,17 @@
List<AbstractPreferenceController> prefControllers = new ArrayList<>();
prefControllers.add(new ZenModeHeaderController(context, "header", this, mBackend));
prefControllers.add(new ZenModeButtonPreferenceController(context, "activate", mBackend));
+ prefControllers.add(new ZenModeActionsPreferenceController(context, "actions", mBackend));
prefControllers.add(new ZenModePeopleLinkPreferenceController(
- context, "zen_mode_people", mBackend));
+ context, "zen_mode_people", mBackend, mHelperBackend));
prefControllers.add(new ZenModeAppsLinkPreferenceController(
- context, "zen_mode_apps", mBackend));
+ context, "zen_mode_apps", this,
+ ApplicationsState.getInstance((Application) context.getApplicationContext()),
+ mBackend, mHelperBackend));
prefControllers.add(new ZenModeOtherLinkPreferenceController(
- context, "zen_other_settings", mBackend));
+ context, "zen_other_settings", mBackend, mHelperBackend));
prefControllers.add(new ZenModeDisplayLinkPreferenceController(
- context, "mode_display_settings", mBackend));
+ context, "mode_display_settings", mBackend, mHelperBackend));
prefControllers.add(new ZenModeSetTriggerLinkPreferenceController(context,
"zen_automatic_trigger_category", mBackend));
return prefControllers;
diff --git a/src/com/android/settings/notification/modes/ZenModeFragmentBase.java b/src/com/android/settings/notification/modes/ZenModeFragmentBase.java
index 5e6cfa5..e086524 100644
--- a/src/com/android/settings/notification/modes/ZenModeFragmentBase.java
+++ b/src/com/android/settings/notification/modes/ZenModeFragmentBase.java
@@ -51,12 +51,12 @@
if (bundle != null && bundle.containsKey(MODE_ID)) {
String id = bundle.getString(MODE_ID);
if (!reloadMode(id)) {
- Log.d(TAG, "Mode id " + id + " not found");
+ Log.e(TAG, "Mode id " + id + " not found");
toastAndFinish();
return;
}
} else {
- Log.d(TAG, "Mode id required to set mode config settings");
+ Log.e(TAG, "Mode id required to set mode config settings");
toastAndFinish();
return;
}
diff --git a/src/com/android/settings/notification/modes/ZenModeHeaderController.java b/src/com/android/settings/notification/modes/ZenModeHeaderController.java
index ba6e9d9..d8f0a67 100644
--- a/src/com/android/settings/notification/modes/ZenModeHeaderController.java
+++ b/src/com/android/settings/notification/modes/ZenModeHeaderController.java
@@ -63,9 +63,8 @@
FutureUtil.whenDone(
zenMode.getIcon(mContext, IconLoader.getInstance()),
- icon -> mHeaderController.setIcon(icon)
- .setLabel(zenMode.getRule().getName())
- .done(false /* rebindActions */),
+ icon -> mHeaderController.setIcon(IconUtil.applyTint(mContext, icon))
+ .done(/* rebindActions= */ false),
mContext.getMainExecutor());
}
}
diff --git a/src/com/android/settings/notification/modes/ZenModeIconPickerFragment.java b/src/com/android/settings/notification/modes/ZenModeIconPickerFragment.java
new file mode 100644
index 0000000..760b183
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeIconPickerFragment.java
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.app.settings.SettingsEnums;
+import android.content.Context;
+
+import com.android.settings.R;
+import com.android.settingslib.core.AbstractPreferenceController;
+
+import com.google.common.collect.ImmutableList;
+
+import java.util.List;
+
+public class ZenModeIconPickerFragment extends ZenModeFragmentBase {
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.modes_icon_picker;
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ // TODO: b/332937635 - make this the correct metrics category
+ return SettingsEnums.NOTIFICATION_ZEN_MODE_AUTOMATION;
+ }
+
+ @Override
+ protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
+ return ImmutableList.of(
+ new ZenModeIconPickerIconPreferenceController(context, "current_icon", this,
+ mBackend),
+ new ZenModeIconPickerListPreferenceController(context, "icon_list", this,
+ new IconOptionsProviderImpl(mContext), mBackend));
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeIconPickerIconPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeIconPickerIconPreferenceController.java
new file mode 100644
index 0000000..9eaaa97
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeIconPickerIconPreferenceController.java
@@ -0,0 +1,59 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.preference.Preference;
+
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.widget.EntityHeaderController;
+import com.android.settingslib.widget.LayoutPreference;
+
+class ZenModeIconPickerIconPreferenceController extends AbstractZenModePreferenceController {
+
+ private final DashboardFragment mFragment;
+ private EntityHeaderController mHeaderController;
+
+ ZenModeIconPickerIconPreferenceController(@NonNull Context context, @NonNull String key,
+ @NonNull DashboardFragment fragment, @Nullable ZenModesBackend backend) {
+ super(context, key, backend);
+ mFragment = fragment;
+ }
+
+ @Override
+ void updateState(Preference preference, @NonNull ZenMode zenMode) {
+ preference.setSelectable(false);
+
+ if (mHeaderController == null) {
+ final LayoutPreference pref = (LayoutPreference) preference;
+ mHeaderController = EntityHeaderController.newInstance(
+ mFragment.getActivity(),
+ mFragment,
+ pref.findViewById(R.id.entity_header));
+ }
+
+ FutureUtil.whenDone(
+ zenMode.getIcon(mContext, IconLoader.getInstance()),
+ icon -> mHeaderController.setIcon(IconUtil.applyTint(mContext, icon))
+ .done(/* rebindActions= */ false),
+ mContext.getMainExecutor());
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeIconPickerListPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeIconPickerListPreferenceController.java
new file mode 100644
index 0000000..fc991dc
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeIconPickerListPreferenceController.java
@@ -0,0 +1,147 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+
+import androidx.annotation.DrawableRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settingslib.widget.LayoutPreference;
+
+import com.google.common.collect.ImmutableList;
+
+class ZenModeIconPickerListPreferenceController extends AbstractZenModePreferenceController {
+
+ private final DashboardFragment mFragment;
+ private final IconOptionsProvider mIconOptionsProvider;
+ @Nullable private IconAdapter mAdapter;
+
+ ZenModeIconPickerListPreferenceController(@NonNull Context context, @NonNull String key,
+ @NonNull DashboardFragment fragment, @NonNull IconOptionsProvider iconOptionsProvider,
+ @Nullable ZenModesBackend backend) {
+ super(context, key, backend);
+ mFragment = fragment;
+ mIconOptionsProvider = iconOptionsProvider;
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ LayoutPreference pref = screen.findPreference(getPreferenceKey());
+ if (pref == null) {
+ return;
+ }
+
+ if (mAdapter == null) {
+ mAdapter = new IconAdapter(mIconOptionsProvider);
+ }
+ RecyclerView recyclerView = pref.findViewById(R.id.icon_list);
+ recyclerView.setLayoutManager(new AutoFitGridLayoutManager(mContext));
+ recyclerView.setAdapter(mAdapter);
+ recyclerView.setHasFixedSize(true);
+ }
+
+ @VisibleForTesting
+ void onIconSelected(@DrawableRes int resId) {
+ saveMode(mode -> {
+ mode.getRule().setIconResId(resId);
+ return mode;
+ });
+ mFragment.finish();
+ }
+
+ @Override
+ void updateState(Preference preference, @NonNull ZenMode zenMode) {
+ // Nothing to do, the current icon is shown in a different preference.
+ }
+
+ private class IconHolder extends RecyclerView.ViewHolder {
+
+ private final ImageView mImageView;
+
+ IconHolder(@NonNull View itemView) {
+ super(itemView);
+ mImageView = itemView.findViewById(R.id.icon_image_view);
+ }
+
+ void bindIcon(IconOptionsProvider.IconInfo icon) {
+ mImageView.setImageDrawable(
+ IconUtil.makeIconCircle(itemView.getContext(), icon.resId()));
+ itemView.setContentDescription(icon.description());
+ itemView.setOnClickListener(v -> onIconSelected(icon.resId()));
+ }
+ }
+
+ private class IconAdapter extends RecyclerView.Adapter<IconHolder> {
+
+ private final ImmutableList<IconOptionsProvider.IconInfo> mIconResources;
+
+ private IconAdapter(IconOptionsProvider iconOptionsProvider) {
+ mIconResources = iconOptionsProvider.getIcons();
+ }
+
+ @NonNull
+ @Override
+ public IconHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+ View itemView = LayoutInflater.from(parent.getContext()).inflate(
+ R.layout.modes_icon_list_item, parent, false);
+ return new IconHolder(itemView);
+ }
+
+ @Override
+ public void onBindViewHolder(@NonNull IconHolder holder, int position) {
+ holder.bindIcon(mIconResources.get(position));
+ }
+
+ @Override
+ public int getItemCount() {
+ return mIconResources.size();
+ }
+ }
+
+ private static class AutoFitGridLayoutManager extends GridLayoutManager {
+ private final float mColumnWidth;
+
+ AutoFitGridLayoutManager(Context context) {
+ super(context, /* spanCount= */ 1);
+ this.mColumnWidth = context
+ .getResources()
+ .getDimensionPixelSize(R.dimen.zen_mode_icon_list_item_size);
+ }
+
+ @Override
+ public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) {
+ final int totalSpace = getWidth() - getPaddingRight() - getPaddingLeft();
+ final int spanCount = Math.max(1, (int) (totalSpace / mColumnWidth));
+ setSpanCount(spanCount);
+ super.onLayoutChildren(recycler, state);
+ }
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeMessagesFragment.java b/src/com/android/settings/notification/modes/ZenModeMessagesFragment.java
index c86f8dd..8bf574f 100644
--- a/src/com/android/settings/notification/modes/ZenModeMessagesFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModeMessagesFragment.java
@@ -18,6 +18,7 @@
import android.app.settings.SettingsEnums;
import android.content.Context;
+
import com.android.settings.R;
import com.android.settingslib.core.AbstractPreferenceController;
@@ -34,7 +35,7 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
List<AbstractPreferenceController> controllers = new ArrayList<>();
controllers.add(new ZenModePrioritySendersPreferenceController(context,
- "zen_mode_settings_category_messages", true, mBackend));
+ "zen_mode_settings_category_messages", true, mBackend, mHelperBackend));
return controllers;
}
diff --git a/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceController.java
index 300ebbc..6e563c4 100644
--- a/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceController.java
@@ -30,9 +30,9 @@
private final ZenModeSummaryHelper mSummaryHelper;
public ZenModeMessagesLinkPreferenceController(Context context, String key,
- ZenModesBackend backend) {
+ ZenModesBackend backend, ZenHelperBackend helperBackend) {
super(context, key, backend);
- mSummaryHelper = new ZenModeSummaryHelper(context, backend);
+ mSummaryHelper = new ZenModeSummaryHelper(context, helperBackend);
}
@Override
diff --git a/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceController.java
index da3b3be..15da96e 100644
--- a/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceController.java
@@ -31,9 +31,9 @@
private final ZenModeSummaryHelper mSummaryBuilder;
public ZenModeNotifVisLinkPreferenceController(Context context, String key,
- ZenModesBackend backend) {
+ ZenModesBackend backend, ZenHelperBackend helperBackend) {
super(context, key, backend);
- mSummaryBuilder = new ZenModeSummaryHelper(context, backend);
+ mSummaryBuilder = new ZenModeSummaryHelper(context, helperBackend);
}
@Override
diff --git a/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceController.java
index 1a00207..89b719e 100644
--- a/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceController.java
@@ -34,9 +34,9 @@
private final ZenModeSummaryHelper mSummaryHelper;
public ZenModeOtherLinkPreferenceController(Context context, String key,
- ZenModesBackend backend) {
+ ZenModesBackend backend, ZenHelperBackend helperBackend) {
super(context, key, backend);
- mSummaryHelper = new ZenModeSummaryHelper(mContext, mBackend);
+ mSummaryHelper = new ZenModeSummaryHelper(mContext, helperBackend);
}
@Override
diff --git a/src/com/android/settings/notification/modes/ZenModePeopleFragment.java b/src/com/android/settings/notification/modes/ZenModePeopleFragment.java
index e1f753c..448712c 100644
--- a/src/com/android/settings/notification/modes/ZenModePeopleFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModePeopleFragment.java
@@ -18,6 +18,7 @@
import android.app.settings.SettingsEnums;
import android.content.Context;
+
import com.android.settings.R;
import com.android.settingslib.core.AbstractPreferenceController;
@@ -34,9 +35,9 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
List<AbstractPreferenceController> prefControllers = new ArrayList<>();
prefControllers.add(new ZenModeCallsLinkPreferenceController(
- context, "zen_mode_people_calls", mBackend));
+ context, "zen_mode_people_calls", mBackend, mHelperBackend));
prefControllers.add(new ZenModeMessagesLinkPreferenceController(
- context, "zen_mode_people_messages", mBackend));
+ context, "zen_mode_people_messages", mBackend, mHelperBackend));
return prefControllers;
}
diff --git a/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java
index 55a83d6..271ca72 100644
--- a/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java
@@ -34,9 +34,9 @@
private final ZenModeSummaryHelper mSummaryHelper;
public ZenModePeopleLinkPreferenceController(Context context, String key,
- ZenModesBackend backend) {
+ ZenModesBackend backend, ZenHelperBackend helperBackend) {
super(context, key, backend);
- mSummaryHelper = new ZenModeSummaryHelper(mContext, mBackend);
+ mSummaryHelper = new ZenModeSummaryHelper(mContext, helperBackend);
}
@Override
diff --git a/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceController.java b/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceController.java
index 43f4d7f..31a8a0d 100644
--- a/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceController.java
@@ -83,6 +83,7 @@
private static final Intent FALLBACK_INTENT = new Intent(Intent.ACTION_MAIN)
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+ private final ZenHelperBackend mHelperBackend;
private final PackageManager mPackageManager;
private PreferenceCategory mPreferenceCategory;
private List<SelectorWithWidgetPreference> mSelectorPreferences = new ArrayList<>();
@@ -90,9 +91,10 @@
private final ZenModeSummaryHelper mZenModeSummaryHelper;
public ZenModePrioritySendersPreferenceController(Context context, String key,
- boolean isMessages, ZenModesBackend backend) {
+ boolean isMessages, ZenModesBackend backend, ZenHelperBackend helperBackend) {
super(context, key, backend);
mIsMessages = isMessages;
+ mHelperBackend = helperBackend;
String contactsPackage = context.getString(R.string.config_contacts_package_name);
ALL_CONTACTS_INTENT.setPackage(contactsPackage);
@@ -103,7 +105,7 @@
if (!FALLBACK_INTENT.hasCategory(Intent.CATEGORY_APP_CONTACTS)) {
FALLBACK_INTENT.addCategory(Intent.CATEGORY_APP_CONTACTS);
}
- mZenModeSummaryHelper = new ZenModeSummaryHelper(mContext, mBackend);
+ mZenModeSummaryHelper = new ZenModeSummaryHelper(mContext, mHelperBackend);
}
@Override
@@ -164,7 +166,7 @@
private void updateChannelCounts() {
ParceledListSlice<ConversationChannelWrapper> impConversations =
- mBackend.getConversations(true);
+ mHelperBackend.getConversations(true);
int numImportantConversations = 0;
if (impConversations != null) {
for (ConversationChannelWrapper conversation : impConversations.getList()) {
diff --git a/src/com/android/settings/notification/modes/ZenModeSetScheduleFragment.java b/src/com/android/settings/notification/modes/ZenModeSetScheduleFragment.java
new file mode 100644
index 0000000..4d58097
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeSetScheduleFragment.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.app.settings.SettingsEnums;
+import android.content.Context;
+
+import com.android.settings.R;
+import com.android.settingslib.core.AbstractPreferenceController;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Settings page to set a schedule for a mode that turns on automatically based on specific days
+ * of the week and times of day.
+ */
+public class ZenModeSetScheduleFragment extends ZenModeFragmentBase {
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.modes_set_schedule;
+ }
+
+ @Override
+ protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
+ List<AbstractPreferenceController> controllers = new ArrayList<>();
+ controllers.add(
+ new ZenModeSetSchedulePreferenceController(mContext, this, "schedule", mBackend));
+ controllers.add(
+ new ZenModeExitAtAlarmPreferenceController(mContext, "exit_at_alarm", mBackend));
+ return controllers;
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ // TODO: b/332937635 - make this the correct metrics category
+ return SettingsEnums.NOTIFICATION_ZEN_MODE_SCHEDULE_RULE;
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceController.java b/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceController.java
new file mode 100644
index 0000000..a6008cc
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceController.java
@@ -0,0 +1,274 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.app.Flags;
+import android.content.Context;
+import android.service.notification.SystemZenRules;
+import android.service.notification.ZenModeConfig;
+import android.text.format.DateFormat;
+import android.util.ArraySet;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+import android.widget.ToggleButton;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.fragment.app.Fragment;
+import androidx.preference.Preference;
+
+import com.android.settings.R;
+import com.android.settingslib.widget.LayoutPreference;
+
+import java.text.SimpleDateFormat;
+import java.time.Duration;
+import java.util.Arrays;
+import java.util.Calendar;
+import java.util.function.Function;
+
+/**
+ * Preference controller for setting the start and end time and days of the week associated with
+ * an automatic zen mode.
+ */
+class ZenModeSetSchedulePreferenceController extends AbstractZenModePreferenceController {
+ // per-instance to ensure we're always using the current locale
+ // E = day of the week; "EEEEE" is the shortest version; "EEEE" is the full name
+ private final SimpleDateFormat mShortDayFormat = new SimpleDateFormat("EEEEE");
+ private final SimpleDateFormat mLongDayFormat = new SimpleDateFormat("EEEE");
+
+ private static final String TAG = "ZenModeSetSchedulePreferenceController";
+ private Fragment mParent;
+ private ZenModeConfig.ScheduleInfo mSchedule;
+
+ ZenModeSetSchedulePreferenceController(Context context, Fragment parent, String key,
+ ZenModesBackend backend) {
+ super(context, key, backend);
+ mParent = parent;
+ }
+
+ @Override
+ public void updateState(Preference preference, @NonNull ZenMode zenMode) {
+ mSchedule = ZenModeConfig.tryParseScheduleConditionId(zenMode.getRule().getConditionId());
+ LayoutPreference layoutPref = (LayoutPreference) preference;
+
+ TextView start = layoutPref.findViewById(R.id.start_time);
+ start.setText(timeString(mSchedule.startHour, mSchedule.startMinute));
+ start.setOnClickListener(
+ timePickerLauncher(mSchedule.startHour, mSchedule.startMinute, mStartSetter));
+
+ TextView end = layoutPref.findViewById(R.id.end_time);
+ end.setText(timeString(mSchedule.endHour, mSchedule.endMinute));
+ end.setOnClickListener(
+ timePickerLauncher(mSchedule.endHour, mSchedule.endMinute, mEndSetter));
+
+ TextView durationView = layoutPref.findViewById(R.id.schedule_duration);
+ durationView.setText(getScheduleDurationDescription(mSchedule));
+
+ ViewGroup daysContainer = layoutPref.findViewById(R.id.days_of_week_container);
+ setupDayToggles(daysContainer, mSchedule, Calendar.getInstance());
+ }
+
+ private String timeString(int hour, int minute) {
+ final Calendar c = Calendar.getInstance();
+ c.set(Calendar.HOUR_OF_DAY, hour);
+ c.set(Calendar.MINUTE, minute);
+ return DateFormat.getTimeFormat(mContext).format(c.getTime());
+ }
+
+ private boolean isValidTime(int hour, int minute) {
+ return ZenModeConfig.isValidHour(hour) && ZenModeConfig.isValidMinute(minute);
+ }
+
+ private String getScheduleDurationDescription(ZenModeConfig.ScheduleInfo schedule) {
+ final int startMin = 60 * schedule.startHour + schedule.startMinute;
+ final int endMin = 60 * schedule.endHour + schedule.endMinute;
+ final boolean nextDay = startMin >= endMin;
+
+ Duration scheduleDuration;
+ if (nextDay) {
+ // add one day's worth of minutes (24h x 60min) to end minute for end time calculation
+ int endMinNextDay = endMin + (24 * 60);
+ scheduleDuration = Duration.ofMinutes(endMinNextDay - startMin);
+ } else {
+ scheduleDuration = Duration.ofMinutes(endMin - startMin);
+ }
+
+ int hours = scheduleDuration.toHoursPart();
+ int minutes = scheduleDuration.minusHours(hours).toMinutesPart();
+ return mContext.getString(R.string.zen_mode_schedule_duration, hours, minutes);
+ }
+
+ @VisibleForTesting
+ protected Function<ZenMode, ZenMode> updateScheduleMode(ZenModeConfig.ScheduleInfo schedule) {
+ return (zenMode) -> {
+ zenMode.getRule().setConditionId(ZenModeConfig.toScheduleConditionId(schedule));
+ if (Flags.modesApi() && Flags.modesUi()) {
+ zenMode.getRule().setTriggerDescription(
+ SystemZenRules.getTriggerDescriptionForScheduleTime(mContext, schedule));
+ }
+ return zenMode;
+ };
+ }
+
+ private ZenModeTimePickerFragment.TimeSetter mStartSetter = (hour, minute) -> {
+ if (!isValidTime(hour, minute)) {
+ return;
+ }
+ if (hour == mSchedule.startHour && minute == mSchedule.startMinute) {
+ return;
+ }
+ mSchedule.startHour = hour;
+ mSchedule.startMinute = minute;
+ saveMode(updateScheduleMode(mSchedule));
+ };
+
+ private ZenModeTimePickerFragment.TimeSetter mEndSetter = (hour, minute) -> {
+ if (!isValidTime(hour, minute)) {
+ return;
+ }
+ if (hour == mSchedule.endHour && minute == mSchedule.endMinute) {
+ return;
+ }
+ mSchedule.endHour = hour;
+ mSchedule.endMinute = minute;
+ saveMode(updateScheduleMode(mSchedule));
+ };
+
+ private View.OnClickListener timePickerLauncher(int hour, int minute,
+ ZenModeTimePickerFragment.TimeSetter timeSetter) {
+ return v -> {
+ final ZenModeTimePickerFragment frag = new ZenModeTimePickerFragment(mContext, hour,
+ minute, timeSetter);
+ frag.show(mParent.getParentFragmentManager(), TAG);
+ };
+ }
+
+ protected static int[] getDaysOfWeekForLocale(Calendar c) {
+ int[] daysOfWeek = new int[7];
+ int currentDay = c.getFirstDayOfWeek();
+ for (int i = 0; i < daysOfWeek.length; i++) {
+ if (currentDay > 7) currentDay = 1;
+ daysOfWeek[i] = currentDay;
+ currentDay++;
+ }
+ return daysOfWeek;
+ }
+
+ @VisibleForTesting
+ protected void setupDayToggles(ViewGroup dayContainer, ZenModeConfig.ScheduleInfo schedule,
+ Calendar c) {
+ int[] daysOfWeek = getDaysOfWeekForLocale(c);
+
+ // Index in daysOfWeek is associated with the [idx]'th object in the list of days in the
+ // layout. Note that because the order of the days of the week may differ per locale, this
+ // is not necessarily the same as the actual value of the day number at that index.
+ for (int i = 0; i < daysOfWeek.length; i++) {
+ ToggleButton dayToggle = dayContainer.findViewById(resIdForDayIndex(i));
+ if (dayToggle == null) {
+ continue;
+ }
+
+ final int day = daysOfWeek[i];
+ c.set(Calendar.DAY_OF_WEEK, day);
+
+ // find current setting for this day
+ boolean dayEnabled = false;
+ if (schedule.days != null) {
+ for (int idx = 0; idx < schedule.days.length; idx++) {
+ if (schedule.days[idx] == day) {
+ dayEnabled = true;
+ break;
+ }
+ }
+ }
+
+ // On/off is indicated by visuals, and both states share the shortest (one-character)
+ // day label.
+ dayToggle.setTextOn(mShortDayFormat.format(c.getTime()));
+ dayToggle.setTextOff(mShortDayFormat.format(c.getTime()));
+ dayToggle.setContentDescription(mLongDayFormat.format(c.getTime()));
+
+ dayToggle.setChecked(dayEnabled);
+ dayToggle.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ if (updateScheduleDays(schedule, day, isChecked)) {
+ saveMode(updateScheduleMode(schedule));
+ }
+ });
+
+ // If display and text settings cause the text to be larger than its containing box,
+ // don't show scrollbars.
+ dayToggle.setVerticalScrollBarEnabled(false);
+ dayToggle.setHorizontalScrollBarEnabled(false);
+ }
+ }
+
+ // Updates the set of enabled days in provided schedule to either turn on or off the given day.
+ // The format of days in ZenModeConfig.ScheduleInfo is an array of days, where inclusion means
+ // the schedule is set to run on that day. Returns whether anything was changed.
+ @VisibleForTesting
+ protected static boolean updateScheduleDays(ZenModeConfig.ScheduleInfo schedule, int day,
+ boolean set) {
+ // Build a set representing the days that are currently set in mSchedule.
+ ArraySet<Integer> daySet = new ArraySet();
+ if (schedule.days != null) {
+ for (int i = 0; i < schedule.days.length; i++) {
+ daySet.add(schedule.days[i]);
+ }
+ }
+
+ if (daySet.contains(day) != set) {
+ if (set) {
+ daySet.add(day);
+ } else {
+ daySet.remove(day);
+ }
+
+ // rebuild days array for mSchedule
+ final int[] out = new int[daySet.size()];
+ for (int i = 0; i < daySet.size(); i++) {
+ out[i] = daySet.valueAt(i);
+ }
+ Arrays.sort(out);
+ schedule.days = out;
+ return true;
+ }
+ // If the setting is the same as it was before, no need to update anything.
+ return false;
+ }
+
+ protected static int resIdForDayIndex(int idx) {
+ switch (idx) {
+ case 0:
+ return R.id.day0;
+ case 1:
+ return R.id.day1;
+ case 2:
+ return R.id.day2;
+ case 3:
+ return R.id.day3;
+ case 4:
+ return R.id.day4;
+ case 5:
+ return R.id.day5;
+ case 6:
+ return R.id.day6;
+ default:
+ return 0; // unknown
+ }
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceController.java
index a3bc508..14d5d59 100644
--- a/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceController.java
@@ -16,6 +16,7 @@
package com.android.settings.notification.modes;
import static android.app.AutomaticZenRule.TYPE_SCHEDULE_CALENDAR;
+import static android.app.AutomaticZenRule.TYPE_SCHEDULE_TIME;
import static com.android.settings.notification.modes.ZenModeFragmentBase.MODE_ID;
@@ -32,13 +33,13 @@
import com.android.settingslib.PrimarySwitchPreference;
/**
- * Preference controller for the link
+ * Preference controller for the link to an individual mode's configuration page.
*/
-public class ZenModeSetTriggerLinkPreferenceController extends AbstractZenModePreferenceController {
+class ZenModeSetTriggerLinkPreferenceController extends AbstractZenModePreferenceController {
@VisibleForTesting
protected static final String AUTOMATIC_TRIGGER_PREF_KEY = "zen_automatic_trigger_settings";
- public ZenModeSetTriggerLinkPreferenceController(Context context, String key,
+ ZenModeSetTriggerLinkPreferenceController(Context context, String key,
ZenModesBackend backend) {
super(context, key, backend);
}
@@ -66,6 +67,16 @@
// TODO: b/341961712 - direct preference to app-owned intent if available
switch (zenMode.getRule().getType()) {
+ case TYPE_SCHEDULE_TIME:
+ switchPref.setTitle(R.string.zen_mode_set_schedule_link);
+ switchPref.setSummary(zenMode.getRule().getTriggerDescription());
+ switchPref.setIntent(new SubSettingLauncher(mContext)
+ .setDestination(ZenModeSetScheduleFragment.class.getName())
+ // TODO: b/332937635 - set correct metrics category
+ .setSourceMetricsCategory(0)
+ .setArguments(bundle)
+ .toIntent());
+ break;
case TYPE_SCHEDULE_CALENDAR:
switchPref.setTitle(R.string.zen_mode_set_calendar_link);
switchPref.setSummary(zenMode.getRule().getTriggerDescription());
diff --git a/src/com/android/settings/notification/modes/ZenModeSummaryHelper.java b/src/com/android/settings/notification/modes/ZenModeSummaryHelper.java
index b4075cd..bf0bac9 100644
--- a/src/com/android/settings/notification/modes/ZenModeSummaryHelper.java
+++ b/src/com/android/settings/notification/modes/ZenModeSummaryHelper.java
@@ -43,21 +43,26 @@
import android.service.notification.ZenDeviceEffects;
import android.service.notification.ZenPolicy;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
import com.android.settings.R;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
+import java.util.Set;
import java.util.function.Predicate;
class ZenModeSummaryHelper {
private final Context mContext;
- private final ZenModesBackend mBackend;
+ private final ZenHelperBackend mBackend;
- public ZenModeSummaryHelper(Context context, ZenModesBackend backend) {
+ ZenModeSummaryHelper(Context context, ZenHelperBackend backend) {
mContext = context;
mBackend = backend;
}
@@ -397,12 +402,13 @@
}
/**
- * Generates a summary to display under the top level "Apps" preference for a mode.
+ * Generates a summary to display under the top level "Apps" preference for a mode, based
+ * on the given mode and provided set of apps.
*/
- public String getAppsSummary(ZenMode zenMode) {
- // TODO: b/308819928 - Set summary using priority app list if Selected Apps Chosen.
+ public @NonNull String getAppsSummary(@NonNull ZenMode zenMode,
+ @Nullable Set<String> appsBypassing) {
if (zenMode.getPolicy().getAllowedChannels() == ZenPolicy.CHANNEL_POLICY_PRIORITY) {
- return mContext.getResources().getString(R.string.zen_mode_apps_priority_apps);
+ return formatAppsList(appsBypassing);
} else if (zenMode.getPolicy().getAllowedChannels() == ZenPolicy.CHANNEL_POLICY_NONE) {
return mContext.getResources().getString(R.string.zen_mode_apps_none_apps);
} else if (zenMode.getPolicy().getAllowedChannels() == ZenMode.CHANNEL_POLICY_ALL) {
@@ -410,4 +416,35 @@
}
return "";
}
+
+ /**
+ * Generates a formatted string declaring which apps can interrupt in the style of
+ * "App, App2, and 4 more can interrupt."
+ * Apps selected for explicit mention are selected in order from the provided set sorted
+ * alphabetically.
+ */
+ public @NonNull String formatAppsList(@Nullable Set<String> appsBypassingDnd) {
+ if (appsBypassingDnd == null) {
+ return mContext.getResources().getString(R.string.zen_mode_apps_priority_apps);
+ }
+ final int numAppsBypassingDnd = appsBypassingDnd.size();
+ String[] appsBypassingDndArr = appsBypassingDnd.toArray(new String[numAppsBypassingDnd]);
+ // Sorts the provided apps alphabetically.
+ Arrays.sort(appsBypassingDndArr);
+ MessageFormat msgFormat = new MessageFormat(
+ mContext.getString(R.string.zen_mode_apps_subtext),
+ Locale.getDefault());
+ Map<String, Object> args = new HashMap<>();
+ args.put("count", numAppsBypassingDnd);
+ if (numAppsBypassingDnd >= 1) {
+ args.put("app_1", appsBypassingDndArr[0]);
+ if (numAppsBypassingDnd >= 2) {
+ args.put("app_2", appsBypassingDndArr[1]);
+ if (numAppsBypassingDnd == 3) {
+ args.put("app_3", appsBypassingDndArr[2]);
+ }
+ }
+ }
+ return msgFormat.format(args);
+ }
}
diff --git a/src/com/android/settings/notification/modes/ZenModeTimePickerFragment.java b/src/com/android/settings/notification/modes/ZenModeTimePickerFragment.java
new file mode 100644
index 0000000..d8e1b38
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeTimePickerFragment.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.app.Dialog;
+import android.app.TimePickerDialog;
+import android.app.settings.SettingsEnums;
+import android.content.Context;
+import android.os.Bundle;
+import android.text.format.DateFormat;
+import android.widget.TimePicker;
+
+import androidx.annotation.NonNull;
+
+import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+
+/**
+ * Dialog that shows when a user selects a (start or end) time to edit for a schedule-based mode.
+ */
+public class ZenModeTimePickerFragment extends InstrumentedDialogFragment implements
+ TimePickerDialog.OnTimeSetListener {
+ private final Context mContext;
+ private final TimeSetter mTimeSetter;
+ private final int mHour;
+ private final int mMinute;
+
+ public ZenModeTimePickerFragment(Context context, int hour, int minute,
+ @NonNull TimeSetter timeSetter) {
+ super();
+ mContext = context;
+ mHour = hour;
+ mMinute = minute;
+ mTimeSetter = timeSetter;
+ }
+
+ @Override
+ public Dialog onCreateDialog(Bundle savedInstanceState) {
+ return new TimePickerDialog(mContext, this, mHour, mMinute,
+ DateFormat.is24HourFormat(mContext));
+ }
+
+ /**
+ * Calls the provided TimeSetter's setTime() method when a time is set on the TimePicker.
+ */
+ public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
+ mTimeSetter.setTime(hourOfDay, minute);
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ // TODO: b/332937635 - set correct metrics category (or decide to keep this one?)
+ return SettingsEnums.DIALOG_ZEN_TIMEPICKER;
+ }
+
+ /**
+ * Interface for a method to pass into the TimePickerFragment that specifies what to do when the
+ * time is updated.
+ */
+ public interface TimeSetter {
+ void setTime(int hour, int minute);
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModesBackend.java b/src/com/android/settings/notification/modes/ZenModesBackend.java
index 8df282b..b58e310 100644
--- a/src/com/android/settings/notification/modes/ZenModesBackend.java
+++ b/src/com/android/settings/notification/modes/ZenModesBackend.java
@@ -16,27 +16,18 @@
package com.android.settings.notification.modes;
-import static java.util.Objects.requireNonNull;
-
import android.annotation.Nullable;
import android.app.ActivityManager;
import android.app.AutomaticZenRule;
-import android.app.INotificationManager;
import android.app.NotificationManager;
import android.content.Context;
-import android.content.pm.ParceledListSlice;
-import android.database.Cursor;
import android.net.Uri;
-import android.os.ServiceManager;
-import android.provider.ContactsContract;
import android.provider.Settings;
import android.service.notification.Condition;
-import android.service.notification.ConversationChannelWrapper;
-import android.service.notification.ZenAdapters;
+import android.service.notification.SystemZenRules;
import android.service.notification.ZenModeConfig;
-
import android.util.Log;
-import androidx.annotation.VisibleForTesting;
+
import com.android.settings.R;
import java.time.Duration;
@@ -58,8 +49,6 @@
private static ZenModesBackend sInstance;
private final NotificationManager mNotificationManager;
- static INotificationManager sINM = INotificationManager.Stub.asInterface(
- ServiceManager.getService(Context.NOTIFICATION_SERVICE));
private final Context mContext;
@@ -113,71 +102,20 @@
}
}
- public ParceledListSlice<ConversationChannelWrapper> getConversations(boolean onlyImportant) {
- try {
- return sINM.getConversations(onlyImportant);
- } catch (Exception e) {
- Log.w(TAG, "Error calling NoMan", e);
- return ParceledListSlice.emptyList();
- }
- }
-
- public List<String> getStarredContacts() {
- Cursor cursor = null;
- try {
- cursor = queryStarredContactsData();
- return getStarredContacts(cursor);
- } finally {
- if (cursor != null) {
- cursor.close();
- }
- }
- }
-
- @VisibleForTesting
- List<String> getStarredContacts(Cursor cursor) {
- List<String> starredContacts = new ArrayList<>();
- if (cursor != null && cursor.moveToFirst()) {
- do {
- String contact = cursor.getString(0);
- starredContacts.add(contact != null ? contact :
- mContext.getString(R.string.zen_mode_starred_contacts_empty_name));
-
- } while (cursor.moveToNext());
- }
- return starredContacts;
- }
-
- private Cursor queryStarredContactsData() {
- return mContext.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,
- new String[]{ContactsContract.Contacts.DISPLAY_NAME_PRIMARY},
- ContactsContract.Data.STARRED + "=1", null,
- ContactsContract.Data.TIMES_CONTACTED);
- }
-
- Cursor queryAllContactsData() {
- return mContext.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,
- new String[]{ContactsContract.Contacts.DISPLAY_NAME_PRIMARY},
- null, null, null);
- }
-
private ZenMode getManualDndMode(ZenModeConfig config) {
- // TODO: b/333530553 - Read ZenDeviceEffects of manual DND.
+ ZenModeConfig.ZenRule manualRule = config.manualRule;
// TODO: b/333682392 - Replace with final strings for name & trigger description
AutomaticZenRule manualDndRule = new AutomaticZenRule.Builder(
- mContext.getString(R.string.zen_mode_settings_title), Uri.EMPTY)
- .setType(AutomaticZenRule.TYPE_OTHER)
- .setZenPolicy(ZenAdapters.notificationPolicyToZenPolicy(
- mNotificationManager.getNotificationPolicy()))
- .setDeviceEffects(null)
- .setManualInvocationAllowed(true)
+ mContext.getString(R.string.zen_mode_settings_title), manualRule.conditionId)
+ .setType(manualRule.type)
+ .setZenPolicy(manualRule.zenPolicy)
+ .setDeviceEffects(manualRule.zenDeviceEffects)
+ .setManualInvocationAllowed(manualRule.allowManualInvocation)
.setConfigurationActivity(null) // No further settings
.setInterruptionFilter(NotificationManager.INTERRUPTION_FILTER_PRIORITY)
.build();
- // Regardless of its contents, non-null manualRule means that manual rule is active.
- return ZenMode.manualDndMode(manualDndRule,
- config != null && config.manualRule != null);
+ return ZenMode.manualDndMode(manualDndRule, config != null && config.isManualActive());
}
private static boolean isRuleActive(String id, ZenModeConfig config) {
@@ -191,10 +129,16 @@
void updateMode(ZenMode mode) {
if (mode.isManualDnd()) {
- NotificationManager.Policy dndPolicy =
- new ZenModeConfig().toNotificationPolicy(requireNonNull(mode.getPolicy()));
- mNotificationManager.setNotificationPolicy(dndPolicy, /* fromUser= */ true);
- // TODO: b/333530553 - Update ZenDeviceEffects of the manual DND too.
+ try {
+ NotificationManager.Policy dndPolicy =
+ new ZenModeConfig().toNotificationPolicy(mode.getPolicy());
+ mNotificationManager.setNotificationPolicy(dndPolicy, /* fromUser= */ true);
+
+ mNotificationManager.setManualZenRuleDeviceEffects(
+ mode.getRule().getDeviceEffects());
+ } catch (Exception e) {
+ Log.w(TAG, "Error updating manual mode", e);
+ }
} else {
mNotificationManager.updateAutomaticZenRule(mode.getId(), mode.getRule(),
/* fromUser= */ true);
@@ -241,4 +185,32 @@
}
mNotificationManager.removeAutomaticZenRule(mode.getId(), /* fromUser= */ true);
}
+
+ /**
+ * Creates a new custom mode with the provided {@code name}. The mode will be "manual" (i.e.
+ * not have a schedule), this can be later updated by the user in the mode settings page.
+ *
+ * @return the created mode. Only {@code null} if creation failed due to an internal error
+ */
+ @Nullable
+ ZenMode addCustomMode(String name) {
+ ZenModeConfig.ScheduleInfo schedule = new ZenModeConfig.ScheduleInfo();
+ schedule.days = ZenModeConfig.ALL_DAYS;
+ schedule.startHour = 22;
+ schedule.endHour = 7;
+
+ // TODO: b/326442408 - Create as "manual" (i.e. no trigger) instead of schedule-time.
+ AutomaticZenRule rule = new AutomaticZenRule.Builder(name,
+ ZenModeConfig.toScheduleConditionId(schedule))
+ .setPackage(ZenModeConfig.getScheduleConditionProvider().getPackageName())
+ .setType(AutomaticZenRule.TYPE_SCHEDULE_CALENDAR)
+ .setOwner(ZenModeConfig.getScheduleConditionProvider())
+ .setTriggerDescription(SystemZenRules.getTriggerDescriptionForScheduleTime(
+ mContext, schedule))
+ .setManualInvocationAllowed(true)
+ .build();
+
+ String ruleId = mNotificationManager.addAutomaticZenRule(rule);
+ return getMode(ruleId);
+ }
}
diff --git a/src/com/android/settings/notification/modes/ZenModesFragmentBase.java b/src/com/android/settings/notification/modes/ZenModesFragmentBase.java
index 3f33b02..d99593a 100644
--- a/src/com/android/settings/notification/modes/ZenModesFragmentBase.java
+++ b/src/com/android/settings/notification/modes/ZenModesFragmentBase.java
@@ -41,6 +41,7 @@
protected Context mContext;
protected ZenModesBackend mBackend;
+ protected ZenHelperBackend mHelperBackend;
// Individual pages must implement this method based on what they should do when
// the device's zen mode state changes.
@@ -59,6 +60,7 @@
public void onAttach(@NonNull Context context) {
mContext = context;
mBackend = ZenModesBackend.getInstance(context);
+ mHelperBackend = ZenHelperBackend.getInstance(context);
super.onAttach(context);
mSettingsObserver.register();
}
diff --git a/src/com/android/settings/notification/modes/ZenModesListAddModePreferenceController.java b/src/com/android/settings/notification/modes/ZenModesListAddModePreferenceController.java
new file mode 100644
index 0000000..c229fb1
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModesListAddModePreferenceController.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+
+import androidx.preference.Preference;
+
+import com.android.settings.utils.ZenServiceListing;
+import com.android.settingslib.core.AbstractPreferenceController;
+
+import java.util.Random;
+
+class ZenModesListAddModePreferenceController extends AbstractPreferenceController {
+
+ private final ZenModesBackend mBackend;
+ private final ZenServiceListing mServiceListing;
+
+ ZenModesListAddModePreferenceController(Context context, ZenModesBackend backend,
+ ZenServiceListing serviceListing) {
+ super(context);
+ mBackend = backend;
+ mServiceListing = serviceListing;
+ }
+
+ @Override
+ public boolean isAvailable() {
+ return true;
+ }
+
+ @Override
+ public String getPreferenceKey() {
+ return "add_mode";
+ }
+
+ @Override
+ public void updateState(Preference preference) {
+ preference.setOnPreferenceClickListener(pref -> {
+ // TODO: b/326442408 - Launch the proper mode creation flow (using mServiceListing).
+ ZenMode mode = mBackend.addCustomMode("New mode #" + new Random().nextInt(1000));
+ if (mode != null) {
+ ZenSubSettingLauncher.forMode(mContext, mode.getId()).launch();
+ }
+ return true;
+ });
+ }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModesListFragment.java b/src/com/android/settings/notification/modes/ZenModesListFragment.java
index 040621e..80678f6 100644
--- a/src/com/android/settings/notification/modes/ZenModesListFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModesListFragment.java
@@ -31,12 +31,14 @@
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.search.SearchIndexable;
-import java.util.ArrayList;
+import com.google.common.collect.ImmutableList;
+
import java.util.List;
@SearchIndexable
public class ZenModesListFragment extends ZenModesFragmentBase {
- protected final ManagedServiceSettings.Config CONFIG = getConditionProviderConfig();
+
+ private static final ManagedServiceSettings.Config CONFIG = getConditionProviderConfig();
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
@@ -50,13 +52,11 @@
// We need to redefine ZenModesBackend here even though mBackend exists so that this method
// can be static; it must be static to be able to be used in SEARCH_INDEX_DATA_PROVIDER.
ZenModesBackend backend = ZenModesBackend.getInstance(context);
- List<AbstractPreferenceController> controllers = new ArrayList<>();
- controllers.add(new ZenModesListPreferenceController(
- context, parent, backend));
- // TODO: b/326442408 - Add controller for "Add Mode" preference/flow, which is what uses
- // the ZenServiceListing.
- return controllers;
+ return ImmutableList.of(
+ new ZenModesListPreferenceController(context, parent, backend),
+ new ZenModesListAddModePreferenceController(context, backend, serviceListing)
+ );
}
@Override
@@ -77,7 +77,7 @@
return SettingsEnums.NOTIFICATION_ZEN_MODE_AUTOMATION;
}
- protected static ManagedServiceSettings.Config getConditionProviderConfig() {
+ private static ManagedServiceSettings.Config getConditionProviderConfig() {
return new ManagedServiceSettings.Config.Builder()
.setTag(TAG)
.setIntentAction(ConditionProviderService.SERVICE_INTERFACE)
@@ -87,8 +87,6 @@
.build();
}
- // TODO: b/322373473 - Add 3-dot options menu with capability to delete modes.
-
/**
* For Search.
*/
diff --git a/src/com/android/settings/notification/modes/ZenModeListPreference.java b/src/com/android/settings/notification/modes/ZenModesListItemPreference.java
similarity index 62%
rename from src/com/android/settings/notification/modes/ZenModeListPreference.java
rename to src/com/android/settings/notification/modes/ZenModesListItemPreference.java
index a106bdd..7ecfb3a 100644
--- a/src/com/android/settings/notification/modes/ZenModeListPreference.java
+++ b/src/com/android/settings/notification/modes/ZenModesListItemPreference.java
@@ -15,25 +15,19 @@
*/
package com.android.settings.notification.modes;
-import static com.android.settings.notification.modes.ZenModeFragmentBase.MODE_ID;
-
-import android.app.settings.SettingsEnums;
import android.content.Context;
-import android.os.Bundle;
-import com.android.settings.core.SubSettingLauncher;
import com.android.settingslib.RestrictedPreference;
-import com.android.settingslib.Utils;
/**
* Preference representing a single mode item on the modes aggregator page. Clicking on this
* preference leads to an individual mode's configuration page.
*/
-class ZenModeListPreference extends RestrictedPreference {
+class ZenModesListItemPreference extends RestrictedPreference {
final Context mContext;
ZenMode mZenMode;
- ZenModeListPreference(Context context, ZenMode zenMode) {
+ ZenModesListItemPreference(Context context, ZenMode zenMode) {
super(context);
mContext = context;
setZenMode(zenMode);
@@ -42,13 +36,7 @@
@Override
public void onClick() {
- Bundle bundle = new Bundle();
- bundle.putString(MODE_ID, mZenMode.getId());
- new SubSettingLauncher(mContext)
- .setDestination(ZenModeFragment.class.getName())
- .setArguments(bundle)
- .setSourceMetricsCategory(SettingsEnums.NOTIFICATION_ZEN_MODE_AUTOMATION)
- .launch();
+ ZenSubSettingLauncher.forMode(mContext, mZenMode.getId()).launch();
}
public void setZenMode(ZenMode zenMode) {
@@ -59,11 +47,7 @@
FutureUtil.whenDone(
mZenMode.getIcon(mContext, IconLoader.getInstance()),
- icon -> {
- icon.setTintList(
- Utils.getColorAttr(mContext, android.R.attr.colorControlNormal));
- setIcon(icon);
- },
+ icon -> setIcon(IconUtil.applyTint(mContext, icon)),
mContext.getMainExecutor());
}
}
diff --git a/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java b/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java
index ca8fe05..5dcd9eb 100644
--- a/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java
@@ -15,7 +15,6 @@
*/
package com.android.settings.notification.modes;
-import android.app.AutomaticZenRule;
import android.app.Flags;
import android.content.Context;
import android.content.res.Resources;
@@ -74,24 +73,27 @@
// category for each rule that exists.
PreferenceCategory category = (PreferenceCategory) preference;
- Map<String, ZenModeListPreference> originalPreferences = new HashMap<>();
+ Map<String, ZenModesListItemPreference> originalPreferences = new HashMap<>();
for (int i = 0; i < category.getPreferenceCount(); i++) {
- ZenModeListPreference pref = (ZenModeListPreference) category.getPreference(i);
+ ZenModesListItemPreference pref = (ZenModesListItemPreference) category.getPreference(
+ i);
originalPreferences.put(pref.getKey(), pref);
}
// Loop through each rule, either updating the existing rule or creating the rule's
// preference
- for (ZenMode mode : mBackend.getModes()) {
- if (originalPreferences.containsKey(mode.getId())) {
+ List<ZenMode> modes = mBackend.getModes();
+ for (ZenMode mode : modes) {
+ ZenModesListItemPreference modePreference = originalPreferences.get(mode.getId());
+ if (modePreference != null) {
// existing rule; update its info if it's changed since the last display
- AutomaticZenRule rule = mode.getRule();
- originalPreferences.get(mode.getId()).setZenMode(mode);
+ modePreference.setZenMode(mode);
} else {
// new rule; create a new ZenRulePreference & add it to the preference category
- Preference pref = new ZenModeListPreference(mContext, mode);
- category.addPreference(pref);
+ modePreference = new ZenModesListItemPreference(mContext, mode);
+ category.addPreference(modePreference);
}
+ modePreference.setOrder(modes.indexOf(mode));
originalPreferences.remove(mode.getId());
}
diff --git a/src/com/android/settings/notification/modes/ZenSubSettingLauncher.java b/src/com/android/settings/notification/modes/ZenSubSettingLauncher.java
new file mode 100644
index 0000000..11f3492
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenSubSettingLauncher.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.app.settings.SettingsEnums;
+import android.content.Context;
+import android.os.Bundle;
+
+import com.android.settings.core.SubSettingLauncher;
+
+class ZenSubSettingLauncher {
+
+ static SubSettingLauncher forMode(Context context, String modeId) {
+ return forModeFragment(context, ZenModeFragment.class, modeId,
+ SettingsEnums.NOTIFICATION_ZEN_MODE_AUTOMATION);
+ }
+
+ private static SubSettingLauncher forModeFragment(Context context,
+ Class<? extends ZenModeFragmentBase> fragmentClass, String modeId,
+ int sourceMetricsCategory) {
+ Bundle bundle = new Bundle();
+ bundle.putString(ZenModeFragmentBase.MODE_ID, modeId);
+
+ return new SubSettingLauncher(context)
+ .setDestination(fragmentClass.getName())
+ .setArguments(bundle)
+ .setSourceMetricsCategory(sourceMetricsCategory);
+ }
+}
diff --git a/src/com/android/settings/notification/zen/ZenModeBackend.java b/src/com/android/settings/notification/zen/ZenModeBackend.java
index 921a5ee..426f52d 100644
--- a/src/com/android/settings/notification/zen/ZenModeBackend.java
+++ b/src/com/android/settings/notification/zen/ZenModeBackend.java
@@ -400,7 +400,7 @@
ZenPolicy setDefaultZenPolicy(ZenPolicy zenPolicy) {
int calls;
if (mPolicy.allowCalls()) {
- calls = ZenAdapters.notificationPolicySendersToZenPolicyPeopleType(
+ calls = ZenAdapters.prioritySendersToPeopleType(
mPolicy.allowCallsFrom());
} else {
calls = ZenPolicy.PEOPLE_TYPE_NONE;
@@ -408,7 +408,7 @@
int messages;
if (mPolicy.allowMessages()) {
- messages = ZenAdapters.notificationPolicySendersToZenPolicyPeopleType(
+ messages = ZenAdapters.prioritySendersToPeopleType(
mPolicy.allowMessagesFrom());
} else {
messages = ZenPolicy.PEOPLE_TYPE_NONE;
diff --git a/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java b/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java
index 30fd619..7f362c3 100644
--- a/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java
+++ b/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java
@@ -23,6 +23,8 @@
import static android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED;
import static android.view.WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS;
+import static com.android.systemui.biometrics.Utils.toBitmap;
+
import android.app.Activity;
import android.app.KeyguardManager;
import android.app.RemoteLockscreenValidationSession;
@@ -35,6 +37,7 @@
import android.content.pm.PackageManager;
import android.content.pm.UserProperties;
import android.content.res.Configuration;
+import android.graphics.Bitmap;
import android.graphics.Color;
import android.hardware.biometrics.BiometricConstants;
import android.hardware.biometrics.BiometricPrompt;
@@ -215,9 +218,10 @@
&& android.multiuser.Flags.usePrivateSpaceIconInBiometricPrompt()
&& hasSetBiometricDialogAdvanced(mContext, getLaunchedFromUid())
) {
- int iconResId = intent.getIntExtra(CUSTOM_BIOMETRIC_PROMPT_LOGO_RES_ID_KEY, 0);
+ final int iconResId = intent.getIntExtra(CUSTOM_BIOMETRIC_PROMPT_LOGO_RES_ID_KEY, 0);
if (iconResId != 0) {
- promptInfo.setLogoRes(iconResId);
+ final Bitmap iconBitmap = toBitmap(mContext.getDrawable(iconResId));
+ promptInfo.setLogo(iconResId, iconBitmap);
}
String logoDescription = intent.getStringExtra(
CUSTOM_BIOMETRIC_PROMPT_LOGO_DESCRIPTION_KEY);
diff --git a/src/com/android/settings/print/PrintSettingsPageProvider.kt b/src/com/android/settings/print/PrintSettingsPageProvider.kt
index aac0a5d..f28f0bc 100644
--- a/src/com/android/settings/print/PrintSettingsPageProvider.kt
+++ b/src/com/android/settings/print/PrintSettingsPageProvider.kt
@@ -17,16 +17,32 @@
package com.android.settings.print
import android.app.settings.SettingsEnums
+import android.content.Context
+import android.content.Intent
+import android.net.Uri
import android.os.Bundle
+import android.provider.Settings
import androidx.annotation.VisibleForTesting
import androidx.compose.foundation.Image
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.fillMaxSize
+import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
+import androidx.compose.material.icons.Icons
+import androidx.compose.material.icons.outlined.Add
+import androidx.compose.material.icons.outlined.Print
+import androidx.compose.material3.Icon
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
+import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
+import androidx.compose.ui.draw.alpha
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.unit.dp
import androidx.core.os.bundleOf
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.android.settings.R
@@ -36,13 +52,18 @@
import com.android.settings.print.PrintSettingsFragment.EXTRA_SERVICE_COMPONENT_NAME
import com.android.settings.print.PrintSettingsFragment.EXTRA_TITLE
import com.android.settingslib.spa.framework.common.SettingsPageProvider
+import com.android.settingslib.spa.framework.compose.rememberContext
import com.android.settingslib.spa.framework.compose.rememberDrawablePainter
import com.android.settingslib.spa.framework.theme.SettingsDimension
+import com.android.settingslib.spa.framework.theme.SettingsOpacity
import com.android.settingslib.spa.widget.preference.Preference
import com.android.settingslib.spa.widget.preference.PreferenceModel
import com.android.settingslib.spa.widget.scaffold.RegularScaffold
import com.android.settingslib.spa.widget.ui.Category
+import com.android.settingslib.spa.widget.ui.SettingsIcon
+import com.android.settingslib.spaprivileged.settingsprovider.settingsSecureStringFlow
import com.android.settingslib.spaprivileged.template.common.UserProfilePager
+import kotlinx.coroutines.flow.Flow
object PrintSettingsPageProvider : SettingsPageProvider {
override val name = "PrintSettings"
@@ -52,51 +73,101 @@
RegularScaffold(title = stringResource(R.string.print_settings)) {
val context = LocalContext.current
val printRepository = remember(context) { PrintRepository(context) }
- UserProfilePager {
- PrintServices(printRepository)
- }
+ UserProfilePager { PrintServices(printRepository) }
}
}
@Composable
private fun PrintServices(printRepository: PrintRepository) {
- val printServiceDisplayInfos by remember {
- printRepository.printServiceDisplayInfosFlow()
- }.collectAsStateWithLifecycle(initialValue = emptyList())
- Category(title = stringResource(R.string.print_settings_title)) {
- for (printServiceDisplayInfo in printServiceDisplayInfos) {
- PrintService(printServiceDisplayInfo)
+ val printServiceDisplayInfos by
+ remember { printRepository.printServiceDisplayInfosFlow() }
+ .collectAsStateWithLifecycle(initialValue = emptyList())
+ if (printServiceDisplayInfos.isEmpty()) {
+ NoServicesInstalled()
+ } else {
+ Category(title = stringResource(R.string.print_settings_title)) {
+ for (printServiceDisplayInfo in printServiceDisplayInfos) {
+ PrintService(printServiceDisplayInfo)
+ }
}
}
+ AddPrintService()
+ }
+
+ @Composable
+ private fun NoServicesInstalled() {
+ Column(
+ modifier = Modifier.fillMaxSize().padding(SettingsDimension.itemPaddingAround),
+ horizontalAlignment = Alignment.CenterHorizontally,
+ ) {
+ Icon(
+ imageVector = Icons.Outlined.Print,
+ contentDescription = null,
+ modifier =
+ Modifier.size(110.dp)
+ .padding(SettingsDimension.itemPaddingAround)
+ .alpha(SettingsOpacity.SurfaceTone),
+ )
+ Text(
+ text = stringResource(R.string.print_no_services_installed),
+ style = MaterialTheme.typography.titleLarge,
+ )
+ }
}
@VisibleForTesting
@Composable
fun PrintService(displayInfo: PrintServiceDisplayInfo) {
val context = LocalContext.current
- Preference(model = object : PreferenceModel {
- override val title = displayInfo.title
- override val summary = { displayInfo.summary }
- override val icon: @Composable () -> Unit = {
- Image(
- painter = rememberDrawablePainter(displayInfo.icon),
- contentDescription = null,
- modifier = Modifier.size(SettingsDimension.appIconItemSize),
- )
- }
- override val onClick = {
- SubSettingLauncher(context).apply {
- setDestination(PrintServiceSettingsFragment::class.qualifiedName)
- setArguments(
- bundleOf(
- EXTRA_CHECKED to displayInfo.isEnabled,
- EXTRA_TITLE to displayInfo.title,
- EXTRA_SERVICE_COMPONENT_NAME to displayInfo.componentName
- )
+ Preference(
+ object : PreferenceModel {
+ override val title = displayInfo.title
+ override val summary = { displayInfo.summary }
+ override val icon: @Composable () -> Unit = {
+ Image(
+ painter = rememberDrawablePainter(displayInfo.icon),
+ contentDescription = null,
+ modifier = Modifier.size(SettingsDimension.appIconItemSize),
)
- setSourceMetricsCategory(SettingsEnums.PRINT_SETTINGS)
- }.launch()
+ }
+ override val onClick = { launchPrintServiceSettings(context, displayInfo) }
}
- })
+ )
+ }
+
+ private fun launchPrintServiceSettings(context: Context, displayInfo: PrintServiceDisplayInfo) {
+ SubSettingLauncher(context)
+ .apply {
+ setDestination(PrintServiceSettingsFragment::class.qualifiedName)
+ setArguments(
+ bundleOf(
+ EXTRA_CHECKED to displayInfo.isEnabled,
+ EXTRA_TITLE to displayInfo.title,
+ EXTRA_SERVICE_COMPONENT_NAME to displayInfo.componentName
+ )
+ )
+ setSourceMetricsCategory(SettingsEnums.PRINT_SETTINGS)
+ }
+ .launch()
+ }
+
+ @Composable
+ fun AddPrintService(
+ searchUriFlow: Flow<String> = rememberContext { context ->
+ context.settingsSecureStringFlow(Settings.Secure.PRINT_SERVICE_SEARCH_URI)
+ },
+ ) {
+ val context = LocalContext.current
+ val searchUri by searchUriFlow.collectAsStateWithLifecycle("")
+ if (searchUri.isEmpty()) return
+ Preference(
+ object : PreferenceModel {
+ override val title = stringResource(R.string.print_menu_item_add_service)
+ override val icon = @Composable { SettingsIcon(imageVector = Icons.Outlined.Add) }
+ override val onClick = {
+ context.startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(searchUri)))
+ }
+ }
+ )
}
}
diff --git a/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java b/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java
index bd829b5..ad57073 100644
--- a/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java
+++ b/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java
@@ -19,6 +19,7 @@
import android.content.ClipboardManager;
import android.content.Context;
import android.provider.DeviceConfig;
+import android.provider.Settings;
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleObserver;
@@ -37,25 +38,26 @@
private static final String KEY_SHOW_CLIP_ACCESS_NOTIFICATION = "show_clip_access_notification";
- private Preference mPreference;
- private final ClipboardManager mClipboardManager;
private final DeviceConfig.OnPropertiesChangedListener mDeviceConfigListener =
- properties -> updateState(mPreference);
+ properties -> updateConfig();
+ private boolean mDefault;
+ private Preference mPreference;
public ShowClipAccessNotificationPreferenceController(Context context) {
super(context, KEY_SHOW_CLIP_ACCESS_NOTIFICATION);
- mClipboardManager = context.getSystemService(ClipboardManager.class);
- updateState(mPreference);
+ updateConfig();
}
@Override
public boolean isChecked() {
- return mClipboardManager.areClipboardAccessNotificationsEnabled();
+ return Settings.Secure.getInt(mContext.getContentResolver(),
+ Settings.Secure.CLIPBOARD_SHOW_ACCESS_NOTIFICATIONS, (mDefault ? 1 : 0)) != 0;
}
@Override
public boolean setChecked(boolean isChecked) {
- mClipboardManager.setClipboardAccessNotificationsEnabled(isChecked);
+ Settings.Secure.putInt(mContext.getContentResolver(),
+ Settings.Secure.CLIPBOARD_SHOW_ACCESS_NOTIFICATIONS, (isChecked ? 1 : 0));
return true;
}
@@ -92,4 +94,12 @@
public void onStop() {
DeviceConfig.removeOnPropertiesChangedListener(mDeviceConfigListener);
}
+
+ private void updateConfig() {
+ mDefault = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_CLIPBOARD,
+ ClipboardManager.DEVICE_CONFIG_SHOW_ACCESS_NOTIFICATIONS,
+ ClipboardManager.DEVICE_CONFIG_DEFAULT_SHOW_ACCESS_NOTIFICATIONS);
+ updateState(mPreference);
+ }
+
}
diff --git a/src/com/android/settings/privatespace/HidePrivateSpaceSettings.java b/src/com/android/settings/privatespace/HidePrivateSpaceSettings.java
index 64f2714..0c24db5 100644
--- a/src/com/android/settings/privatespace/HidePrivateSpaceSettings.java
+++ b/src/com/android/settings/privatespace/HidePrivateSpaceSettings.java
@@ -18,6 +18,15 @@
import android.app.settings.SettingsEnums;
import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.accessibility.AccessibilityNodeInfo;
+
+import androidx.annotation.NonNull;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceGroup;
+import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
@@ -25,6 +34,7 @@
public class HidePrivateSpaceSettings extends DashboardFragment {
private static final String TAG = "HidePrivateSpaceSettings";
+ private static final int IMPORTANT_FOR_ACCESSIBILITY_ITEM_COUNT = 5;
private static final String PRIVATE_SPACE_HIDE_ILLUSTRATION_KEY =
"private_space_hide_illustration";
@@ -37,6 +47,34 @@
}
@Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState) {
+ View root = super.onCreateView(inflater, container, savedInstanceState);
+ PreferenceScreen preferenceScreen = getPreferenceScreen();
+ final int itemCount = countPreferencesRecursive(preferenceScreen);
+ root.setAccessibilityDelegate(
+ new View.AccessibilityDelegate() {
+ @Override
+ public void onInitializeAccessibilityNodeInfo(
+ @NonNull View host, @NonNull AccessibilityNodeInfo info) {
+ super.onInitializeAccessibilityNodeInfo(host, info);
+ //TODO(b/346712220) - Replace the hardcoded accessibility count with
+ //value computed from xml Preference
+ info.setCollectionInfo(
+ new AccessibilityNodeInfo.CollectionInfo.Builder()
+ .setRowCount(itemCount)
+ .setColumnCount(1)
+ .setItemCount(itemCount)
+ .setImportantForAccessibilityItemCount(
+ IMPORTANT_FOR_ACCESSIBILITY_ITEM_COUNT)
+ .build()
+ );
+ }
+ });
+ return root;
+ }
+
+ @Override
public void onStart() {
super.onStart();
if (PrivateSpaceMaintainer.getInstance(getContext()).isPrivateSpaceLocked()) {
@@ -66,4 +104,15 @@
protected String getLogTag() {
return TAG;
}
+
+ private int countPreferencesRecursive(PreferenceGroup preferenceGroup) {
+ int count = preferenceGroup.getPreferenceCount();
+ for (int i = 0; i < preferenceGroup.getPreferenceCount(); i++) {
+ Preference preference = preferenceGroup.getPreference(i);
+ if (preference instanceof PreferenceGroup) {
+ count += countPreferencesRecursive((PreferenceGroup) preference);
+ }
+ }
+ return count;
+ }
}
diff --git a/src/com/android/settings/privatespace/PrivateProfileContextHelperActivity.java b/src/com/android/settings/privatespace/PrivateProfileContextHelperActivity.java
index ef33d11..cba3b77 100644
--- a/src/com/android/settings/privatespace/PrivateProfileContextHelperActivity.java
+++ b/src/com/android/settings/privatespace/PrivateProfileContextHelperActivity.java
@@ -29,6 +29,7 @@
import android.content.Intent;
import android.os.Bundle;
+import android.os.UserHandle;
import android.util.Log;
import androidx.activity.result.ActivityResult;
@@ -70,11 +71,20 @@
if (savedInstanceState == null) {
int action = getIntent().getIntExtra(EXTRA_ACTION_TYPE, -1);
if (action == ACCOUNT_LOGIN_ACTION) {
+ setContentView(R.layout.private_space_wait_screen);
PrivateSpaceLoginFeatureProvider privateSpaceLoginFeatureProvider =
FeatureFactory.getFeatureFactory().getPrivateSpaceLoginFeatureProvider();
- if (!privateSpaceLoginFeatureProvider.initiateAccountLogin(
- this, mAddAccountToPrivateProfile)) {
- setResult(RESULT_OK);
+ UserHandle userHandle =
+ PrivateSpaceMaintainer.getInstance(this).getPrivateProfileHandle();
+ if (userHandle != null) {
+ if (!privateSpaceLoginFeatureProvider.initiateAccountLogin(
+ createContextAsUser(userHandle, 0), mAddAccountToPrivateProfile)) {
+ setResult(RESULT_OK);
+ finish();
+ }
+ } else {
+ Log.w(TAG, "Private profile user handle is null");
+ setResult(RESULT_CANCELED);
finish();
}
} else if (action == SET_LOCK_ACTION) {
diff --git a/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java b/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java
index 48a5a7f..f0b960a 100644
--- a/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java
+++ b/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java
@@ -16,8 +16,12 @@
package com.android.settings.privatespace;
+import static com.android.settings.privatespace.PrivateSpaceSetupActivity.ACCOUNT_LOGIN_ACTION;
+import static com.android.settings.privatespace.PrivateSpaceSetupActivity.EXTRA_ACTION_TYPE;
+
import android.annotation.SuppressLint;
import android.app.settings.SettingsEnums;
+import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
@@ -85,8 +89,7 @@
mMetricsFeatureProvider.action(
getContext(),
SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_TRY_CREATE_ACCOUNT_AGAIN);
- NavHostFragment.findNavController(PrivateSpaceAccountLoginError.this)
- .navigate(R.id.action_advance_login_error);
+ startAccountLogin();
};
}
@@ -102,4 +105,13 @@
.navigate(R.id.action_skip_account_login);
};
}
+
+ /** Start new activity in private profile to add an account to private profile */
+ private void startAccountLogin() {
+ Intent intent = new Intent(getContext(), PrivateProfileContextHelperActivity.class);
+ intent.putExtra(EXTRA_ACTION_TYPE, ACCOUNT_LOGIN_ACTION);
+ mMetricsFeatureProvider.action(
+ getContext(), SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_ACCOUNT_LOGIN_START);
+ getActivity().startActivityForResult(intent, ACCOUNT_LOGIN_ACTION);
+ }
}
diff --git a/src/com/android/settings/privatespace/PrivateSpaceCreationFragment.java b/src/com/android/settings/privatespace/PrivateSpaceCreationFragment.java
index 1e0c65e..ce85d72 100644
--- a/src/com/android/settings/privatespace/PrivateSpaceCreationFragment.java
+++ b/src/com/android/settings/privatespace/PrivateSpaceCreationFragment.java
@@ -16,8 +16,14 @@
package com.android.settings.privatespace;
+import static com.android.settings.privatespace.PrivateSpaceSetupActivity.ACCOUNT_LOGIN_ACTION;
+import static com.android.settings.privatespace.PrivateSpaceSetupActivity.EXTRA_ACTION_TYPE;
+
import android.app.settings.SettingsEnums;
+import android.content.BroadcastReceiver;
import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
@@ -42,12 +48,31 @@
public class PrivateSpaceCreationFragment extends InstrumentedFragment {
private static final String TAG = "PrivateSpaceCreateFrag";
private static final int PRIVATE_SPACE_CREATE_POST_DELAY_MS = 1000;
+ private static final int PRIVATE_SPACE_ACCOUNT_LOGIN_POST_DELAY_MS = 5000;
private static final Handler sHandler = new Handler(Looper.getMainLooper());
private Runnable mRunnable =
() -> {
createPrivateSpace();
};
+ private Runnable mAccountLoginRunnable =
+ () -> {
+ unRegisterReceiver();
+ startAccountLogin();
+ };
+
+ final BroadcastReceiver mProfileAccessReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ final String action = intent.getAction();
+ if (action.equals(Intent.ACTION_PROFILE_ACCESSIBLE)) {
+ Log.i(TAG, "onReceive " + action);
+ sHandler.removeCallbacks(mAccountLoginRunnable);
+ sHandler.post(mAccountLoginRunnable);
+ }
+ }
+ };
+
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
if (android.os.Flags.allowPrivateProfile()
@@ -82,6 +107,7 @@
super.onResume();
// Ensures screen visibility to user by introducing a 1-second delay before creating private
// space.
+ sHandler.removeCallbacks(mRunnable);
sHandler.postDelayed(mRunnable, PRIVATE_SPACE_CREATE_POST_DELAY_MS);
}
@@ -97,8 +123,9 @@
mMetricsFeatureProvider.action(
getContext(), SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_SPACE_CREATED, true);
if (isConnectedToInternet()) {
- NavHostFragment.findNavController(PrivateSpaceCreationFragment.this)
- .navigate(R.id.action_account_intro_fragment);
+ registerReceiver();
+ sHandler.postDelayed(
+ mAccountLoginRunnable, PRIVATE_SPACE_ACCOUNT_LOGIN_POST_DELAY_MS);
} else {
NavHostFragment.findNavController(PrivateSpaceCreationFragment.this)
.navigate(R.id.action_set_lock_fragment);
@@ -127,4 +154,29 @@
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
return activeNetwork != null && activeNetwork.isConnectedOrConnecting();
}
+
+ /** Start new activity in private profile to add an account to private profile */
+ private void startAccountLogin() {
+ if (isAdded() && getContext() != null && getActivity() != null) {
+ Intent intent = new Intent(getContext(), PrivateProfileContextHelperActivity.class);
+ intent.putExtra(EXTRA_ACTION_TYPE, ACCOUNT_LOGIN_ACTION);
+ mMetricsFeatureProvider.action(
+ getContext(), SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_ACCOUNT_LOGIN_START);
+ getActivity().startActivityForResult(intent, ACCOUNT_LOGIN_ACTION);
+ }
+ }
+
+ private void registerReceiver() {
+ IntentFilter filter = new IntentFilter();
+ filter.addAction(Intent.ACTION_PROFILE_ACCESSIBLE);
+ if (getContext() != null) {
+ getContext().registerReceiver(mProfileAccessReceiver, filter);
+ }
+ }
+
+ private void unRegisterReceiver() {
+ if (mProfileAccessReceiver != null && isAdded() && getContext() != null) {
+ getContext().unregisterReceiver(mProfileAccessReceiver);
+ }
+ }
}
diff --git a/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java b/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java
index ed70030..906b01b 100644
--- a/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java
+++ b/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java
@@ -26,12 +26,10 @@
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
-import com.android.settingslib.widget.IllustrationPreference;
/** Fragment representing the Private Space dashboard in Settings. */
public class PrivateSpaceDashboardFragment extends DashboardFragment {
private static final String TAG = "PSDashboardFragment";
- private static final String PRIVATE_SPACE_ILLUSTRATION_KEY = "private_space_illustration";
@Override
public void onCreate(Bundle icicle) {
@@ -64,14 +62,6 @@
}
@Override
- public void onResume() {
- super.onResume();
- final IllustrationPreference illustrationPreference =
- getPreferenceScreen().findPreference(PRIVATE_SPACE_ILLUSTRATION_KEY);
- illustrationPreference.applyDynamicColor();
- }
-
- @Override
protected int getPreferenceScreenResId() {
return R.xml.private_space_settings;
}
diff --git a/src/com/android/settings/privatespace/PrivateSpaceGaiaEducationFragment.java b/src/com/android/settings/privatespace/PrivateSpaceGaiaEducationFragment.java
deleted file mode 100644
index 6c26186..0000000
--- a/src/com/android/settings/privatespace/PrivateSpaceGaiaEducationFragment.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (C) 2024 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.privatespace;
-
-import static com.android.settings.privatespace.PrivateSpaceSetupActivity.ACCOUNT_LOGIN_ACTION;
-import static com.android.settings.privatespace.PrivateSpaceSetupActivity.EXTRA_ACTION_TYPE;
-
-import android.app.settings.SettingsEnums;
-import android.content.Intent;
-import android.os.Bundle;
-import android.os.UserHandle;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-
-import androidx.activity.OnBackPressedCallback;
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.navigation.fragment.NavHostFragment;
-
-import com.android.settings.R;
-import com.android.settings.core.InstrumentedFragment;
-
-import com.google.android.setupcompat.template.FooterBarMixin;
-import com.google.android.setupcompat.template.FooterButton;
-import com.google.android.setupdesign.GlifLayout;
-
-/** Fragment for GAIA education screen */
-public class PrivateSpaceGaiaEducationFragment extends InstrumentedFragment {
- private static final String TAG = "PrivateSpaceGaiaEduFrag";
-
- @Override
- public void onCreate(@Nullable Bundle savedInstanceState) {
- if (android.os.Flags.allowPrivateProfile()
- && android.multiuser.Flags.enablePrivateSpaceFeatures()) {
- super.onCreate(savedInstanceState);
- }
- }
-
- @NonNull
- @Override
- public View onCreateView(
- @NonNull LayoutInflater inflater,
- @Nullable ViewGroup container,
- @Nullable Bundle savedInstanceState) {
- GlifLayout rootView =
- (GlifLayout)
- inflater.inflate(
- R.layout.private_space_gaia_education_screen, container, false);
- final FooterBarMixin mixin = rootView.getMixin(FooterBarMixin.class);
- mixin.setPrimaryButton(
- new FooterButton.Builder(getContext())
- .setText(R.string.private_space_gaia_education_got_it)
- .setListener(onStartLogin())
- .setButtonType(FooterButton.ButtonType.NEXT)
- .setTheme(com.google.android.setupdesign.R.style.SudGlifButton_Primary)
- .build());
- mixin.setSecondaryButton(
- new FooterButton.Builder(getContext())
- .setText(R.string.skip_label)
- .setListener(onSkip())
- .setButtonType(FooterButton.ButtonType.NEXT)
- .setTheme(com.google.android.setupdesign.R.style.SudGlifButton_Secondary)
- .build());
- OnBackPressedCallback callback =
- new OnBackPressedCallback(true /* enabled by default */) {
- @Override
- public void handleOnBackPressed() {
- // Handle the back button event. We intentionally don't want to allow back
- // button to work in this screen during the setup flow.
- }
- };
- requireActivity().getOnBackPressedDispatcher().addCallback(this, callback);
-
- return rootView;
- }
-
- @Override
- public int getMetricsCategory() {
- return METRICS_CATEGORY_UNKNOWN;
- }
-
- private View.OnClickListener onSkip() {
- return v -> {
- NavHostFragment.findNavController(PrivateSpaceGaiaEducationFragment.this)
- .navigate(R.id.action_account_lock_fragment);
- };
- }
-
- private View.OnClickListener onStartLogin() {
- return v -> {
- startAccountLogin();
- };
- }
-
- /** Start new activity in private profile to add an account to private profile */
- private void startAccountLogin() {
- UserHandle userHandle =
- PrivateSpaceMaintainer.getInstance(getActivity()).getPrivateProfileHandle();
- if (userHandle != null) {
- Intent intent = new Intent(getContext(), PrivateProfileContextHelperActivity.class);
- intent.putExtra(EXTRA_ACTION_TYPE, ACCOUNT_LOGIN_ACTION);
- mMetricsFeatureProvider.action(
- getContext(), SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_ACCOUNT_LOGIN_START);
- getActivity().startActivityForResultAsUser(intent, ACCOUNT_LOGIN_ACTION, userHandle);
- } else {
- Log.w(TAG, "Private profile user handle is null");
- }
- }
-}
diff --git a/src/com/android/settings/privatespace/PrivateSpaceMaintainer.java b/src/com/android/settings/privatespace/PrivateSpaceMaintainer.java
index 6b7a347..6b9252a 100644
--- a/src/com/android/settings/privatespace/PrivateSpaceMaintainer.java
+++ b/src/com/android/settings/privatespace/PrivateSpaceMaintainer.java
@@ -63,8 +63,9 @@
@GuardedBy("this")
private UserHandle mUserHandle;
private final KeyguardManager mKeyguardManager;
- /** This variable should be accessed via {@link #getBroadcastReceiver()} only. */
- @Nullable private ProfileAvailabilityBroadcastReceiver mProfileAvailabilityBroadcastReceiver;
+ /** This variable should be accessed via {@link #getProfileBroadcastReceiver()} only. */
+ @Nullable
+ private ProfileBroadcastReceiver mProfileBroadcastReceiver;
/** This is the default value for the hide private space entry point settings. */
public static final int HIDE_PRIVATE_SPACE_ENTRY_POINT_DISABLED_VAL = 0;
@@ -150,7 +151,6 @@
Log.i(TAG, "Deleting Private space with id: " + mUserHandle.getIdentifier());
if (mUserManager.removeUser(mUserHandle)) {
Log.i(TAG, "Private space deleted");
- unregisterBroadcastReceiver();
mUserHandle = null;
return ErrorDeletingPrivateSpace.DELETE_PS_ERROR_NONE;
@@ -394,13 +394,15 @@
&& android.multiuser.Flags.enablePrivateSpaceFeatures();
}
- /** {@link BroadcastReceiver} which handles the private profile's availability related
- * broadcasts.
+ /**
+ * {@link BroadcastReceiver} which handles the private profile's availability and deletion
+ * related broadcasts.
*/
- private final class ProfileAvailabilityBroadcastReceiver extends BroadcastReceiver {
+ private final class ProfileBroadcastReceiver extends BroadcastReceiver {
void register() {
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_PROFILE_UNAVAILABLE);
+ filter.addAction(Intent.ACTION_PROFILE_REMOVED);
mContext.registerReceiver(/* receiver= */ this, filter, Context.RECEIVER_NOT_EXPORTED);
}
@@ -412,6 +414,13 @@
@Override
public void onReceive(@NonNull Context context, @NonNull Intent intent) {
UserHandle userHandle = intent.getParcelableExtra(Intent.EXTRA_USER, UserHandle.class);
+ if (intent.getAction().equals(Intent.ACTION_PROFILE_REMOVED)) {
+ // This applies to all profiles getting removed, since there is no way to tell if
+ // it is a private profile that got removed.
+ removeSettingsAllTasks();
+ unregisterBroadcastReceiver();
+ return;
+ }
if (!userHandle.equals(getPrivateProfileHandle())) {
Log.d(TAG, "Ignoring intent for non-private profile with user id "
+ userHandle.getIdentifier());
@@ -428,7 +437,7 @@
|| !android.multiuser.Flags.enablePrivateSpaceFeatures()) {
return;
}
- var broadcastReceiver = getBroadcastReceiver();
+ var broadcastReceiver = getProfileBroadcastReceiver();
if (broadcastReceiver == null) {
return;
}
@@ -440,17 +449,18 @@
|| !android.multiuser.Flags.enablePrivateSpaceFeatures()) {
return;
}
- if (mProfileAvailabilityBroadcastReceiver == null) {
+ if (mProfileBroadcastReceiver == null) {
Log.w(TAG, "Requested to unregister when there is no receiver.");
return;
}
- mProfileAvailabilityBroadcastReceiver.unregister();
- mProfileAvailabilityBroadcastReceiver = null;
+ mProfileBroadcastReceiver.unregister();
+ mProfileBroadcastReceiver = null;
}
- /** Always use this getter to access {@link #mProfileAvailabilityBroadcastReceiver}. */
+ /** Always use this getter to access {@link #mProfileBroadcastReceiver}. */
@VisibleForTesting
- @Nullable synchronized ProfileAvailabilityBroadcastReceiver getBroadcastReceiver() {
+ @Nullable
+ synchronized ProfileBroadcastReceiver getProfileBroadcastReceiver() {
if (!android.os.Flags.allowPrivateProfile()
|| !android.multiuser.Flags.enablePrivateSpaceFeatures()) {
return null;
@@ -459,16 +469,16 @@
Log.e(TAG, "Cannot return a broadcast receiver when private space doesn't exist");
return null;
}
- if (mProfileAvailabilityBroadcastReceiver == null) {
- mProfileAvailabilityBroadcastReceiver = new ProfileAvailabilityBroadcastReceiver();
+ if (mProfileBroadcastReceiver == null) {
+ mProfileBroadcastReceiver = new ProfileBroadcastReceiver();
}
- return mProfileAvailabilityBroadcastReceiver;
+ return mProfileBroadcastReceiver;
}
/** This is purely for testing purpose only, and should not be used elsewhere. */
@VisibleForTesting
synchronized void resetBroadcastReceiver() {
- mProfileAvailabilityBroadcastReceiver = null;
+ mProfileBroadcastReceiver = null;
}
private void removeSettingsAllTasks() {
diff --git a/src/com/android/settings/privatespace/PrivateSpaceSetupActivity.java b/src/com/android/settings/privatespace/PrivateSpaceSetupActivity.java
index 4cbcac7..d67ce55 100644
--- a/src/com/android/settings/privatespace/PrivateSpaceSetupActivity.java
+++ b/src/com/android/settings/privatespace/PrivateSpaceSetupActivity.java
@@ -65,7 +65,7 @@
if (resultCode == RESULT_OK) {
mMetricsFeatureProvider.action(
this, SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_ACCOUNT_LOGIN_SUCCESS, true);
- mNavHostFragment.getNavController().navigate(R.id.action_account_lock_fragment);
+ mNavHostFragment.getNavController().navigate(R.id.show_set_lock_fragment);
} else {
mMetricsFeatureProvider.action(
this,
diff --git a/src/com/android/settings/privatespace/SetupPreFinishDelayFragment.java b/src/com/android/settings/privatespace/SetupPreFinishDelayFragment.java
index 4f2634e..89e2db1 100644
--- a/src/com/android/settings/privatespace/SetupPreFinishDelayFragment.java
+++ b/src/com/android/settings/privatespace/SetupPreFinishDelayFragment.java
@@ -92,7 +92,7 @@
@Nullable Bundle savedInstanceState) {
GlifLayout rootView =
(GlifLayout)
- inflater.inflate(R.layout.private_space_pre_finish_delay, container, false);
+ inflater.inflate(R.layout.private_space_wait_screen, container, false);
OnBackPressedCallback callback =
new OnBackPressedCallback(true /* enabled by default */) {
@Override
diff --git a/src/com/android/settings/privatespace/autolock/AutoLockSettingsFragment.java b/src/com/android/settings/privatespace/autolock/AutoLockSettingsFragment.java
index decca84..cb332d1 100644
--- a/src/com/android/settings/privatespace/autolock/AutoLockSettingsFragment.java
+++ b/src/com/android/settings/privatespace/autolock/AutoLockSettingsFragment.java
@@ -31,7 +31,6 @@
import com.android.settings.privatespace.PrivateSpaceMaintainer;
import com.android.settings.widget.RadioButtonPickerFragment;
import com.android.settingslib.widget.CandidateInfo;
-import com.android.settingslib.widget.FooterPreference;
import com.android.settingslib.widget.TopIntroPreference;
import java.util.ArrayList;
@@ -77,10 +76,7 @@
protected void addStaticPreferences(PreferenceScreen screen) {
final TopIntroPreference introPreference = new TopIntroPreference(screen.getContext());
introPreference.setTitle(R.string.private_space_auto_lock_page_summary);
- final FooterPreference footerPreference = new FooterPreference(screen.getContext());
- footerPreference.setSummary(R.string.private_space_auto_lock_footer_message);
screen.addPreference(introPreference);
- screen.addPreference(footerPreference);
}
@Override
diff --git a/src/com/android/settings/sim/SimDialogFragment.java b/src/com/android/settings/sim/SimDialogFragment.java
index 2e4fa49..3bb8780 100644
--- a/src/com/android/settings/sim/SimDialogFragment.java
+++ b/src/com/android/settings/sim/SimDialogFragment.java
@@ -85,6 +85,10 @@
@Override
public void dismiss() {
+ if (isStateSaved()) {
+ Log.d(TAG, "fragment saved state, so bypass dismiss");
+ return;
+ }
mChangeListener.stop();
super.dismiss();
}
diff --git a/src/com/android/settings/spa/SettingsSpaEnvironment.kt b/src/com/android/settings/spa/SettingsSpaEnvironment.kt
index 45d238a..8b48179 100644
--- a/src/com/android/settings/spa/SettingsSpaEnvironment.kt
+++ b/src/com/android/settings/spa/SettingsSpaEnvironment.kt
@@ -43,6 +43,7 @@
import com.android.settings.spa.app.specialaccess.UseFullScreenIntentAppListProvider
import com.android.settings.spa.app.specialaccess.WifiControlAppListProvider
import com.android.settings.spa.app.storage.StorageAppListPageProvider
+import com.android.settings.spa.core.instrumentation.SpaLogMetricsProvider
import com.android.settings.spa.core.instrumentation.SpaLogProvider
import com.android.settings.spa.development.UsageStatsPageProvider
import com.android.settings.spa.development.compat.PlatformCompatAppListPageProvider
@@ -127,6 +128,6 @@
override val logger = if (FeatureFlagUtils.isEnabled(
context, FeatureFlagUtils.SETTINGS_ENABLE_SPA_METRICS
)
- ) SpaLogProvider
+ ) SpaLogMetricsProvider // ToDo: Implement 'SpaLogProvider' for SPA settings.
else object : SpaLogger {}
}
diff --git a/src/com/android/settings/spa/core/instrumentation/SpaLogMetricsProvider.kt b/src/com/android/settings/spa/core/instrumentation/SpaLogMetricsProvider.kt
new file mode 100644
index 0000000..acfb957
--- /dev/null
+++ b/src/com/android/settings/spa/core/instrumentation/SpaLogMetricsProvider.kt
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.spa.core.instrumentation
+
+import android.app.settings.SettingsEnums
+import android.os.Bundle
+import android.util.Log
+import com.android.settings.overlay.FeatureFactory.Companion.featureFactory
+import com.android.settingslib.spa.framework.common.LOG_DATA_METRICS_CATEGORY
+import com.android.settingslib.spa.framework.common.LogCategory
+import com.android.settingslib.spa.framework.common.LogEvent
+import com.android.settingslib.spa.framework.common.SpaLogger
+
+/**
+ * To receive the events from spa framework and logging the these events.
+ */
+object SpaLogMetricsProvider : SpaLogger {
+ override fun event(id: String, event: LogEvent, category: LogCategory, extraData: Bundle) {
+ val metricsFeatureProvider = featureFactory.metricsFeatureProvider
+ val metricsCategoryOfPage = extraData.getInt(LOG_DATA_METRICS_CATEGORY)
+ Log.d("SpaLogMetricsProvider", "${event} page ${metricsCategoryOfPage}")
+
+ if (metricsCategoryOfPage == SettingsEnums.PAGE_UNKNOWN) {
+ return
+ }
+
+ when (event) {
+ LogEvent.PAGE_ENTER -> {
+ metricsFeatureProvider.visible(
+ null,
+ SettingsEnums.PAGE_UNKNOWN,
+ metricsCategoryOfPage,
+ 0
+ )
+ }
+
+ LogEvent.PAGE_LEAVE -> {
+ metricsFeatureProvider.hidden(
+ null,
+ metricsCategoryOfPage,
+ 0
+ )
+ }
+
+ else -> return
+ }
+ }
+}
diff --git a/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt b/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt
index 68869d8..4b9fcf4 100644
--- a/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt
+++ b/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt
@@ -16,6 +16,7 @@
package com.android.settings.spa.network
+import android.app.settings.SettingsEnums
import android.content.Context
import android.content.IntentFilter
import android.os.Bundle
@@ -46,6 +47,7 @@
import androidx.lifecycle.viewmodel.compose.viewModel
import com.android.settings.R
import com.android.settings.network.SubscriptionInfoListViewModel
+import com.android.settings.network.telephony.DataSubscriptionRepository
import com.android.settings.network.telephony.TelephonyRepository
import com.android.settings.spa.network.PrimarySimRepository.PrimarySimInfo
import com.android.settings.wifi.WifiPickerTrackerHelper
@@ -77,7 +79,7 @@
*/
open class NetworkCellularGroupProvider : SettingsPageProvider {
override val name = fileName
-
+ override val metricsCategory = SettingsEnums.MOBILE_NETWORK_LIST
private val owner = createSettingsPage()
var defaultVoiceSubId: Int = SubscriptionManager.INVALID_SUBSCRIPTION_ID
@@ -158,7 +160,7 @@
selectableSubscriptionInfoListFlow,
context.defaultVoiceSubscriptionFlow(),
context.defaultSmsSubscriptionFlow(),
- context.defaultDefaultDataSubscriptionFlow(),
+ DataSubscriptionRepository(context).defaultDataSubscriptionIdFlow(),
this::refreshUiStates,
).flowOn(Dispatchers.Default)
@@ -370,15 +372,6 @@
).map { SubscriptionManager.getDefaultSmsSubscriptionId() }
.conflate().flowOn(Dispatchers.Default)
-private fun Context.defaultDefaultDataSubscriptionFlow(): Flow<Int> =
- merge(
- flowOf(null), // kick an initial value
- broadcastReceiverFlow(
- IntentFilter(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED)
- ),
- ).map { SubscriptionManager.getDefaultDataSubscriptionId() }
- .conflate().flowOn(Dispatchers.Default)
-
suspend fun setDefaultVoice(
subscriptionManager: SubscriptionManager?,
subId: Int
diff --git a/src/com/android/settings/users/UserDetailsSettings.java b/src/com/android/settings/users/UserDetailsSettings.java
index 1f0d824..b48c717 100644
--- a/src/com/android/settings/users/UserDetailsSettings.java
+++ b/src/com/android/settings/users/UserDetailsSettings.java
@@ -127,7 +127,7 @@
public void onResume() {
super.onResume();
mSwitchUserPref.setEnabled(canSwitchUserNow());
- if (mGuestUserAutoCreated) {
+ if (mUserInfo.isGuest() && mGuestUserAutoCreated) {
mRemoveUserPref.setEnabled((mUserInfo.flags & UserInfo.FLAG_INITIALIZED) != 0);
}
}
diff --git a/src/com/android/settings/wifi/WifiSummaryRepository.kt b/src/com/android/settings/wifi/WifiSummaryRepository.kt
new file mode 100644
index 0000000..6e34cf5
--- /dev/null
+++ b/src/com/android/settings/wifi/WifiSummaryRepository.kt
@@ -0,0 +1,71 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi
+
+import android.content.Context
+import android.net.wifi.WifiInfo
+import com.android.settings.wifi.repository.SharedConnectivityRepository
+import com.android.settings.wifi.repository.WifiPickerRepository
+import com.android.settings.wifi.repository.WifiStatusRepository
+import com.android.settingslib.R
+import com.android.settingslib.wifi.WifiStatusTracker
+import com.android.wifitrackerlib.HotspotNetworkEntry
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.combine
+import kotlinx.coroutines.flow.conflate
+import kotlinx.coroutines.flow.flowOn
+import kotlinx.coroutines.flow.map
+
+/** Repository that listeners to wifi callback and provide wifi summary flow to client. */
+class WifiSummaryRepository(
+ private val context: Context,
+ private val wifiStatusRepository: WifiStatusRepository = WifiStatusRepository(context),
+ private val wifiPickerRepository: WifiPickerRepository? =
+ if (SharedConnectivityRepository.isDeviceConfigEnabled()) WifiPickerRepository(context)
+ else null,
+) {
+
+ fun summaryFlow(): Flow<String> {
+ if (wifiPickerRepository == null) return wifiStatusSummaryFlow()
+ return combine(
+ wifiStatusSummaryFlow(),
+ wifiPickerRepository.connectedWifiEntryFlow(),
+ ) { wifiStatusSummary, wifiEntry ->
+ if (wifiEntry is HotspotNetworkEntry) wifiEntry.alternateSummary else wifiStatusSummary
+ }
+ }
+
+ private fun wifiStatusSummaryFlow() =
+ wifiStatusRepository
+ .wifiStatusTrackerFlow()
+ .map { wifiStatusTracker -> wifiStatusTracker.getSummary() }
+ .conflate()
+ .flowOn(Dispatchers.Default)
+
+ private fun WifiStatusTracker.getSummary(): String {
+ if (!enabled) return context.getString(com.android.settings.R.string.switch_off_text)
+ if (!connected) return context.getString(com.android.settings.R.string.disconnected)
+ val sanitizedSsid = WifiInfo.sanitizeSsid(ssid) ?: ""
+ if (statusLabel.isNullOrEmpty()) return sanitizedSsid
+ return context.getString(
+ R.string.preference_summary_default_combination,
+ sanitizedSsid,
+ statusLabel,
+ )
+ }
+}
diff --git a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java
index b67c848..9992cc0 100644
--- a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java
+++ b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java
@@ -555,6 +555,9 @@
int deviceType = ((HotspotNetworkEntry) wifiEntry).getDeviceType();
return mContext.getDrawable(getHotspotIconResource(deviceType));
}
+ if (mWifiEntry.getLevel() == WifiEntry.WIFI_LEVEL_UNREACHABLE) {
+ return mContext.getDrawable(R.drawable.empty_icon);
+ }
return mIconInjector.getIcon(wifiEntry.shouldShowXLevelIcon(), wifiEntry.getLevel());
}
diff --git a/src/com/android/settings/wifi/repository/WifiPickerRepository.kt b/src/com/android/settings/wifi/repository/WifiPickerRepository.kt
new file mode 100644
index 0000000..791fa4b
--- /dev/null
+++ b/src/com/android/settings/wifi/repository/WifiPickerRepository.kt
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi.repository
+
+import android.content.Context
+import android.os.Handler
+import android.os.HandlerThread
+import android.os.Looper
+import android.os.Process
+import android.os.SystemClock
+import android.util.Log
+import com.android.settings.overlay.FeatureFactory.Companion.featureFactory
+import com.android.wifitrackerlib.WifiEntry
+import com.android.wifitrackerlib.WifiPickerTracker
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.channels.awaitClose
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.callbackFlow
+import kotlinx.coroutines.flow.conflate
+import kotlinx.coroutines.flow.flowOn
+import kotlinx.coroutines.flow.onEach
+
+/** Repository that listeners to wifi picker callback and provide wifi picker flow to client. */
+class WifiPickerRepository(
+ private val context: Context,
+ private val createWifiPickerTracker:
+ (
+ workerThread: HandlerThread, callback: WifiPickerTracker.WifiPickerTrackerCallback
+ ) -> WifiPickerTracker =
+ { workerThread, callback ->
+ featureFactory.wifiTrackerLibProvider.createWifiPickerTracker(
+ null,
+ context,
+ Handler(Looper.getMainLooper()),
+ workerThread.getThreadHandler(),
+ SystemClock.elapsedRealtimeClock(),
+ MAX_SCAN_AGE_MILLIS,
+ SCAN_INTERVAL_MILLIS,
+ callback,
+ )
+ }
+) {
+
+ fun connectedWifiEntryFlow(): Flow<WifiEntry?> =
+ callbackFlow {
+ val workerThread =
+ HandlerThread(
+ /* name = */ "$TAG{${Integer.toHexString(System.identityHashCode(this))}}",
+ /* priority = */ Process.THREAD_PRIORITY_BACKGROUND,
+ )
+ workerThread.start()
+ var tracker: WifiPickerTracker? = null
+ val callback =
+ object : WifiPickerTracker.WifiPickerTrackerCallback {
+ override fun onWifiEntriesChanged() {
+ trySend(tracker?.connectedWifiEntry)
+ }
+
+ override fun onWifiStateChanged() {}
+
+ override fun onNumSavedNetworksChanged() {}
+
+ override fun onNumSavedSubscriptionsChanged() {}
+ }
+
+ tracker = createWifiPickerTracker(workerThread, callback)
+ tracker.onStart()
+
+ awaitClose {
+ tracker.onStop()
+ tracker.onDestroy()
+ workerThread.quit()
+ }
+ }
+ .conflate()
+ .onEach { Log.d(TAG, "connectedWifiEntryFlow: $it") }
+ .flowOn(Dispatchers.Default)
+
+ companion object {
+ private const val TAG = "WifiPickerRepository"
+
+ /** Max age of tracked WifiEntries */
+ private const val MAX_SCAN_AGE_MILLIS: Long = 15000
+ /** Interval between initiating WifiPickerTracker scans */
+ private const val SCAN_INTERVAL_MILLIS: Long = 10000
+ }
+}
diff --git a/src/com/android/settings/wifi/repository/WifiRepository.kt b/src/com/android/settings/wifi/repository/WifiRepository.kt
new file mode 100644
index 0000000..77f0b1b
--- /dev/null
+++ b/src/com/android/settings/wifi/repository/WifiRepository.kt
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi.repository
+
+import android.content.Context
+import android.content.Intent
+import android.content.IntentFilter
+import android.net.wifi.WifiManager
+import android.util.Log
+import com.android.settingslib.spaprivileged.framework.common.broadcastReceiverFlow
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.map
+import kotlinx.coroutines.flow.onEach
+
+class WifiRepository(
+ private val context: Context,
+ private val wifiStateChangedActionFlow: Flow<Intent> =
+ context.broadcastReceiverFlow(IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION)),
+) {
+
+ fun wifiStateFlow() = wifiStateChangedActionFlow
+ .map { intent ->
+ intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE, WifiManager.WIFI_STATE_UNKNOWN)
+ }
+ .onEach { Log.d(TAG, "wifiStateFlow: $it") }
+
+ private companion object {
+ private const val TAG = "WifiRepository"
+ }
+}
diff --git a/src/com/android/settings/wifi/repository/WifiStatusRepository.kt b/src/com/android/settings/wifi/repository/WifiStatusRepository.kt
new file mode 100644
index 0000000..f97ed49
--- /dev/null
+++ b/src/com/android/settings/wifi/repository/WifiStatusRepository.kt
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi.repository
+
+import android.content.Context
+import android.content.IntentFilter
+import android.net.ConnectivityManager
+import android.net.NetworkScoreManager
+import android.net.wifi.WifiManager
+import com.android.settingslib.spaprivileged.framework.common.broadcastReceiverFlow
+import com.android.settingslib.wifi.WifiStatusTracker
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.channels.awaitClose
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.callbackFlow
+import kotlinx.coroutines.flow.conflate
+import kotlinx.coroutines.flow.flowOn
+import kotlinx.coroutines.flow.launchIn
+import kotlinx.coroutines.flow.onEach
+
+/** Repository that listeners to wifi callback and provide wifi status flow to client. */
+class WifiStatusRepository(
+ private val context: Context,
+ private val wifiStatusTrackerFactory: (callback: Runnable) -> WifiStatusTracker = { callback ->
+ WifiStatusTracker(
+ context,
+ context.getSystemService(WifiManager::class.java),
+ context.getSystemService(NetworkScoreManager::class.java),
+ context.getSystemService(ConnectivityManager::class.java),
+ callback,
+ )
+ },
+) {
+ fun wifiStatusTrackerFlow(): Flow<WifiStatusTracker> =
+ callbackFlow {
+ var wifiStatusTracker: WifiStatusTracker? = null
+ wifiStatusTracker = wifiStatusTrackerFactory { wifiStatusTracker?.let(::trySend) }
+
+ context
+ .broadcastReceiverFlow(INTENT_FILTER)
+ .onEach { intent -> wifiStatusTracker.handleBroadcast(intent) }
+ .launchIn(this)
+
+ wifiStatusTracker.setListening(true)
+ wifiStatusTracker.fetchInitialState()
+ trySend(wifiStatusTracker)
+
+ awaitClose { wifiStatusTracker.setListening(false) }
+ }
+ .conflate()
+ .flowOn(Dispatchers.Default)
+
+ private companion object {
+ val INTENT_FILTER =
+ IntentFilter().apply {
+ addAction(WifiManager.WIFI_STATE_CHANGED_ACTION)
+ addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION)
+ addAction(WifiManager.RSSI_CHANGED_ACTION)
+ }
+ }
+}
diff --git a/tests/Enable16KbTests/Android.bp b/tests/Enable16KbTests/Android.bp
index 57c6ef6..781ea8f 100644
--- a/tests/Enable16KbTests/Android.bp
+++ b/tests/Enable16KbTests/Android.bp
@@ -17,7 +17,7 @@
default_team: "trendy_team_android_kernel",
}
-android_test_helper_app {
+android_test {
name: "test_16kb_app",
srcs: ["test_16kb_app/src/**/*.java"],
manifest: "test_16kb_app/test_16kb_app.xml",
@@ -33,7 +33,7 @@
],
platform_apis: true,
certificate: "platform",
- test_suites: ["general-tests"],
+ test_suites: ["device-tests"],
libs: [
"android.test.runner",
"android.test.base",
@@ -57,6 +57,6 @@
data: [
":test_16kb_app",
],
- test_suites: ["general-tests"],
+ test_suites: ["device-tests"],
test_config: "AndroidTest.xml",
}
diff --git a/tests/Enable16KbTests/TEST_MAPPING b/tests/Enable16KbTests/TEST_MAPPING
new file mode 100644
index 0000000..fbe6fe1
--- /dev/null
+++ b/tests/Enable16KbTests/TEST_MAPPING
@@ -0,0 +1,8 @@
+{
+ "postsubmit": [
+ {
+ "name": "Enable16KbTest"
+ }
+ ]
+}
+
diff --git a/tests/Enable16KbTests/test_16kb_app/test_16kb_app.xml b/tests/Enable16KbTests/test_16kb_app/test_16kb_app.xml
index 8fe9ad5..3ca786a 100644
--- a/tests/Enable16KbTests/test_16kb_app/test_16kb_app.xml
+++ b/tests/Enable16KbTests/test_16kb_app/test_16kb_app.xml
@@ -16,8 +16,8 @@
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.android.settings.development.test"
- android:sharedUserId="android.uid.systemui">
+ android:installLocation="internalOnly"
+ package="com.android.settings.development.test">
<application>
<uses-library android:name="android.test.runner"/>
</application>
diff --git a/tests/robotests/Android.bp b/tests/robotests/Android.bp
index 3088c55..d6210e7 100644
--- a/tests/robotests/Android.bp
+++ b/tests/robotests/Android.bp
@@ -47,36 +47,8 @@
android_robolectric_test {
name: "SettingsRoboTests",
srcs: [
- "src/com/android/settings/*.java",
- "src/com/android/settings/accessibility/**/*.java",
- "src/com/android/settings/accounts/**/*.java",
- "src/com/android/settings/applications/**/*.java",
- "src/com/android/settings/backup/**/*.java",
- "src/com/android/settings/bluetooth/**/*.java",
- "src/com/android/settings/bluetooth/**/*.kt",
- "src/com/android/settings/bugreporthandler/**/*.java",
- "src/com/android/settings/communal/**/*.java",
- "src/com/android/settings/connecteddevice/**/*.java",
- //"src/com/android/settings/core/**/*.java",
- "src/com/android/settings/dashboard/**/*.java",
- "src/com/android/settings/datausage/**/*.java",
- "src/com/android/settings/datetime/**/*.java",
- "src/com/android/settings/deletionhelper/**/*.java",
- //"src/com/android/settings/development/**/*.java",
- "src/com/android/settings/deviceinfo/**/*.java",
- "src/com/android/settings/devicelock/**/*.java",
- "src/com/android/settings/display/**/*.java",
- "src/com/android/settings/dream/**/*.java",
- "src/com/android/settings/emergency/**/*.java",
- "src/com/android/settings/enterprise/**/*.java",
- "src/com/android/settings/flashlight/**/*.java",
- "src/com/android/settings/fuelgauge/**/*.java",
- "src/com/android/settings/gestures/**/*.java",
- //"src/com/android/settings/homepage/**/*.java",
- "src/com/android/settings/inputmethod/**/*.java",
- "src/com/android/settings/network/ShadowServiceManagerExtend.java",
- "src/com/android/settings/search/DatabaseIndexingUtils.java",
- "src/com/android/settings/testutils/**/*.java",
+ "src/**/*.java",
+ "src/**/*.kt",
],
// test_suites attribute is not needed. This module will be configured in ATP GCL file.
@@ -100,6 +72,7 @@
"notification_flags_lib",
"platform-test-annotations",
"testables",
+ "android.app.flags-aconfig-java",
],
libs: [
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceControllerTest.java
index 743f884..97faa63 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityHearingAidPreferenceControllerTest.java
@@ -19,6 +19,7 @@
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
@@ -60,6 +61,7 @@
import org.robolectric.annotation.Config;
import org.robolectric.shadow.api.Shadow;
import org.robolectric.shadows.ShadowApplication;
+import org.robolectric.shadows.ShadowLooper;
import java.util.ArrayList;
import java.util.HashSet;
@@ -81,6 +83,8 @@
private BluetoothAdapter mBluetoothAdapter;
private ShadowBluetoothAdapter mShadowBluetoothAdapter;
private BluetoothDevice mBluetoothDevice;
+
+ private BluetoothDevice mSubBluetoothDevice;
private final Context mContext = ApplicationProvider.getApplicationContext();
private Preference mHearingAidPreference;
@@ -132,6 +136,7 @@
Intent intent = new Intent(BluetoothHearingAid.ACTION_CONNECTION_STATE_CHANGED);
intent.putExtra(BluetoothHearingAid.EXTRA_STATE, BluetoothHearingAid.STATE_CONNECTED);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString().contentEquals(
"TEST_HEARING_AID_BT_DEVICE_NAME / Right only")).isTrue();
@@ -141,14 +146,15 @@
public void getSummary_connectedAshaHearingAidBothSide_connectedBothSideSummary() {
when(mCachedBluetoothDevice.getDeviceSide()).thenReturn(
HearingAidInfo.DeviceSide.SIDE_LEFT);
- when(mCachedSubBluetoothDevice.isConnected()).thenReturn(true);
when(mCachedBluetoothDevice.getSubDevice()).thenReturn(mCachedSubBluetoothDevice);
+ when(mSubBluetoothDevice.isConnected()).thenReturn(true);
when(mHearingAidProfile.getConnectedDevices()).thenReturn(generateHearingAidDeviceList());
mPreferenceController.onStart();
Intent intent = new Intent(BluetoothHearingAid.ACTION_CONNECTION_STATE_CHANGED);
intent.putExtra(BluetoothHearingAid.EXTRA_STATE, BluetoothHearingAid.STATE_CONNECTED);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString().contentEquals(
"TEST_HEARING_AID_BT_DEVICE_NAME / Left and right")).isTrue();
@@ -165,6 +171,7 @@
Intent intent = new Intent(BluetoothHapClient.ACTION_HAP_CONNECTION_STATE_CHANGED);
intent.putExtra(BluetoothHearingAid.EXTRA_STATE, BluetoothHapClient.STATE_CONNECTED);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString().contentEquals(
"TEST_HEARING_AID_BT_DEVICE_NAME / Left only")).isTrue();
@@ -181,6 +188,7 @@
Intent intent = new Intent(BluetoothHapClient.ACTION_HAP_CONNECTION_STATE_CHANGED);
intent.putExtra(BluetoothHearingAid.EXTRA_STATE, BluetoothHapClient.STATE_CONNECTED);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString().contentEquals(
"TEST_HEARING_AID_BT_DEVICE_NAME / Right only")).isTrue();
@@ -197,6 +205,7 @@
Intent intent = new Intent(BluetoothHapClient.ACTION_HAP_CONNECTION_STATE_CHANGED);
intent.putExtra(BluetoothHearingAid.EXTRA_STATE, BluetoothHapClient.STATE_CONNECTED);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString().contentEquals(
"TEST_HEARING_AID_BT_DEVICE_NAME / Left and right")).isTrue();
@@ -205,13 +214,14 @@
@Test
public void getSummary_connectedLeAudioHearingAidBothSide_connectedBothSideSummary() {
when(mCachedBluetoothDevice.getMemberDevice()).thenReturn(generateMemberDevices());
- when(mCachedSubBluetoothDevice.isConnected()).thenReturn(true);
when(mHapClientProfile.getConnectedDevices()).thenReturn(generateHearingAidDeviceList());
+ when(mSubBluetoothDevice.isConnected()).thenReturn(true);
mPreferenceController.onStart();
Intent intent = new Intent(BluetoothHapClient.ACTION_HAP_CONNECTION_STATE_CHANGED);
intent.putExtra(BluetoothHearingAid.EXTRA_STATE, BluetoothHapClient.STATE_CONNECTED);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString()).isEqualTo(
"TEST_HEARING_AID_BT_DEVICE_NAME / Left and right");
@@ -228,6 +238,7 @@
Intent intent = new Intent(BluetoothHearingAid.ACTION_CONNECTION_STATE_CHANGED);
intent.putExtra(BluetoothHearingAid.EXTRA_STATE, BluetoothHearingAid.STATE_CONNECTED);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString().contentEquals(
"TEST_HEARING_AID_BT_DEVICE_NAME +1 more")).isTrue();
@@ -239,6 +250,7 @@
Intent intent = new Intent(BluetoothAdapter.ACTION_STATE_CHANGED);
intent.putExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.STATE_OFF);
sendIntent(intent);
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary()).isEqualTo(
mContext.getText(R.string.accessibility_hearingaid_not_connected_summary));
@@ -252,6 +264,7 @@
mPreferenceController.onStart();
mPreferenceController.onServiceConnected();
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString()).isEqualTo(
"TEST_HEARING_AID_BT_DEVICE_NAME / Left only");
@@ -265,6 +278,7 @@
mPreferenceController.onStart();
mPreferenceController.onServiceConnected();
+ ShadowLooper.idleMainLooper();
assertThat(mHearingAidPreference.getSummary().toString()).isEqualTo(
"TEST_HEARING_AID_BT_DEVICE_NAME / Right only");
@@ -277,7 +291,8 @@
mShadowBluetoothAdapter = Shadow.extract(mBluetoothAdapter);
mShadowBluetoothAdapter.addSupportedProfiles(BluetoothProfile.HEARING_AID);
mShadowBluetoothAdapter.addSupportedProfiles(BluetoothProfile.HAP_CLIENT);
- mBluetoothDevice = mBluetoothAdapter.getRemoteDevice(TEST_DEVICE_ADDRESS);
+ mBluetoothDevice = spy(mBluetoothAdapter.getRemoteDevice(TEST_DEVICE_ADDRESS));
+ mSubBluetoothDevice = spy(mBluetoothAdapter.getRemoteDevice(TEST_DEVICE_ADDRESS_2));
mBluetoothAdapter.enable();
doReturn(mEventManager).when(mLocalBluetoothManager).getEventManager();
@@ -288,8 +303,12 @@
when(mHearingAidProfile.isProfileReady()).thenReturn(true);
when(mHapClientProfile.isProfileReady()).thenReturn(true);
when(mCachedDeviceManager.findDevice(mBluetoothDevice)).thenReturn(mCachedBluetoothDevice);
+ when(mCachedBluetoothDevice.getDevice()).thenReturn(mBluetoothDevice);
when(mCachedBluetoothDevice.getAddress()).thenReturn(TEST_DEVICE_ADDRESS);
when(mCachedBluetoothDevice.getName()).thenReturn(TEST_DEVICE_NAME);
+ when(mCachedDeviceManager.findDevice(mSubBluetoothDevice)).thenReturn(
+ mCachedSubBluetoothDevice);
+ when(mCachedSubBluetoothDevice.getDevice()).thenReturn(mSubBluetoothDevice);
}
private void sendIntent(Intent intent) {
@@ -308,7 +327,7 @@
// Generates different Bluetooth devices for testing multiple devices
final List<BluetoothDevice> deviceList = new ArrayList<>(2);
deviceList.add(mBluetoothDevice);
- deviceList.add(mBluetoothAdapter.getRemoteDevice(TEST_DEVICE_ADDRESS_2));
+ deviceList.add(mSubBluetoothDevice);
return deviceList;
}
diff --git a/tests/robotests/src/com/android/settings/accessibility/RestrictedPreferenceHelperTest.java b/tests/robotests/src/com/android/settings/accessibility/RestrictedPreferenceHelperTest.java
index bc9c1d8..b4f4dc1 100644
--- a/tests/robotests/src/com/android/settings/accessibility/RestrictedPreferenceHelperTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/RestrictedPreferenceHelperTest.java
@@ -137,7 +137,7 @@
final List<AccessibilityShortcutInfo> infoList = new ArrayList<>(
singletonList(mShortcutInfo));
- final List<RestrictedPreference> preferenceList =
+ final List<AccessibilityActivityPreference> preferenceList =
mHelper.createAccessibilityActivityPreferenceList(infoList);
final RestrictedPreference preference = preferenceList.get(0);
diff --git a/tests/robotests/src/com/android/settings/biometrics/fingerprint2/fragment/FingerprintEnrollIntroFragmentTest.kt b/tests/robotests/src/com/android/settings/biometrics/fingerprint2/fragment/FingerprintEnrollIntroFragmentTest.kt
index e30819b..9286880 100644
--- a/tests/robotests/src/com/android/settings/biometrics/fingerprint2/fragment/FingerprintEnrollIntroFragmentTest.kt
+++ b/tests/robotests/src/com/android/settings/biometrics/fingerprint2/fragment/FingerprintEnrollIntroFragmentTest.kt
@@ -67,7 +67,6 @@
private val gatekeeperViewModel =
FingerprintGatekeeperViewModel(
- GatekeeperInfo.GatekeeperPasswordInfo(byteArrayOf(1, 2, 3), 100L),
interactor
)
private val backgroundDispatcher = StandardTestDispatcher()
@@ -86,13 +85,10 @@
.toFingerprintSensor()
var enrollFlow = Default
- val flowViewModel = FingerprintFlowViewModel(enrollFlow)
+ val flowViewModel = FingerprintFlowViewModel()
private val navigationViewModel =
FingerprintNavigationViewModel(
- Introduction(),
- false,
- flowViewModel,
interactor
)
@@ -124,6 +120,11 @@
}
}
+ gatekeeperViewModel.onConfirmDevice(true, 100L, false)
+ flowViewModel.updateFlowType(enrollFlow)
+ navigationViewModel.hasConfirmedDeviceCredential(true)
+ navigationViewModel.updateFingerprintFlow(enrollFlow)
+
fragmentScenario =
launchFragmentInContainer(Bundle(), R.style.SudThemeGlif) {
FingerprintEnrollIntroV2Fragment(factory)
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java
index a35ef45..d28ab3b 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java
@@ -27,9 +27,12 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import android.bluetooth.BluetoothDevice;
import android.content.Context;
import android.content.pm.PackageManager;
import android.hardware.input.InputManager;
+import android.platform.test.annotations.EnableFlags;
+import android.platform.test.flag.junit.SetFlagsRule;
import android.util.FeatureFlagUtils;
import android.view.InputDevice;
@@ -39,13 +42,23 @@
import androidx.preference.PreferenceScreen;
import com.android.settings.bluetooth.ConnectedBluetoothDeviceUpdater;
+import com.android.settings.bluetooth.Utils;
import com.android.settings.connecteddevice.dock.DockUpdater;
import com.android.settings.connecteddevice.stylus.StylusDeviceUpdater;
import com.android.settings.connecteddevice.usb.ConnectedUsbDeviceUpdater;
import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.flags.Flags;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
+import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager;
+import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.search.SearchIndexableRaw;
+
+import com.google.common.collect.ImmutableList;
import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -57,11 +70,16 @@
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowApplicationPackageManager;
+import java.util.ArrayList;
+import java.util.List;
+
@RunWith(RobolectricTestRunner.class)
-@Config(shadows = {ShadowApplicationPackageManager.class, ShadowBluetoothAdapter.class})
+@Config(shadows = {ShadowApplicationPackageManager.class, ShadowBluetoothUtils.class,
+ ShadowBluetoothAdapter.class})
public class ConnectedDeviceGroupControllerTest {
private static final String PREFERENCE_KEY_1 = "pref_key_1";
+ private static final String DEVICE_NAME = "device";
@Mock
private DashboardFragment mDashboardFragment;
@@ -79,6 +97,14 @@
private PreferenceManager mPreferenceManager;
@Mock
private InputManager mInputManager;
+ @Mock
+ private CachedBluetoothDeviceManager mCachedDeviceManager;
+ @Mock
+ private LocalBluetoothManager mLocalBluetoothManager;
+ @Mock
+ private CachedBluetoothDevice mCachedDevice;
+ @Mock
+ private BluetoothDevice mDevice;
private ShadowApplicationPackageManager mPackageManager;
private PreferenceGroup mPreferenceGroup;
@@ -86,6 +112,9 @@
private Preference mPreference;
private ConnectedDeviceGroupController mConnectedDeviceGroupController;
+ @Rule
+ public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
@@ -102,11 +131,20 @@
when(mContext.getSystemService(InputManager.class)).thenReturn(mInputManager);
when(mInputManager.getInputDeviceIds()).thenReturn(new int[]{});
+ ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBluetoothManager;
+ mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
+ when(mLocalBluetoothManager.getCachedDeviceManager()).thenReturn(mCachedDeviceManager);
+
mConnectedDeviceGroupController = new ConnectedDeviceGroupController(mContext);
mConnectedDeviceGroupController.init(mConnectedBluetoothDeviceUpdater,
mConnectedUsbDeviceUpdater, mConnectedDockUpdater, mStylusDeviceUpdater);
mConnectedDeviceGroupController.mPreferenceGroup = mPreferenceGroup;
+ when(mCachedDevice.getName()).thenReturn(DEVICE_NAME);
+ when(mCachedDevice.getDevice()).thenReturn(mDevice);
+ when(mCachedDeviceManager.getCachedDevicesCopy()).thenReturn(
+ ImmutableList.of(mCachedDevice));
+
FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_SHOW_STYLUS_PREFERENCES,
true);
}
@@ -267,4 +305,27 @@
mConnectedDeviceGroupController.onStart();
mConnectedDeviceGroupController.onStop();
}
+
+ @Test
+ @EnableFlags(Flags.FLAG_ENABLE_BONDED_BLUETOOTH_DEVICE_SEARCHABLE)
+ public void updateDynamicRawDataToIndex_deviceNotBonded_deviceIsNotSearchable() {
+ when(mDevice.getBondState()).thenReturn(BluetoothDevice.BOND_NONE);
+ List<SearchIndexableRaw> searchData = new ArrayList<>();
+
+ mConnectedDeviceGroupController.updateDynamicRawDataToIndex(searchData);
+
+ assertThat(searchData).isEmpty();
+ }
+
+ @Test
+ @EnableFlags(Flags.FLAG_ENABLE_BONDED_BLUETOOTH_DEVICE_SEARCHABLE)
+ public void updateDynamicRawDataToIndex_deviceBonded_deviceIsSearchable() {
+ when(mDevice.getBondState()).thenReturn(BluetoothDevice.BOND_BONDED);
+ List<SearchIndexableRaw> searchData = new ArrayList<>();
+
+ mConnectedDeviceGroupController.updateDynamicRawDataToIndex(searchData);
+
+ assertThat(searchData).isNotEmpty();
+ assertThat(searchData.get(0).key).contains(DEVICE_NAME);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingBluetoothDeviceUpdaterTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingBluetoothDeviceUpdaterTest.java
index 23be208..785b1dc 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingBluetoothDeviceUpdaterTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingBluetoothDeviceUpdaterTest.java
@@ -58,6 +58,7 @@
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -143,6 +144,12 @@
mDeviceUpdater.setPrefContext(mContext);
}
+ @After
+ public void tearDown() {
+ ShadowThreadUtils.reset();
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void onProfileConnectionStateChanged_leaDeviceConnected_flagOff_removesPref() {
setupPreferenceMapWithDevice();
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioDialogFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioDialogFragmentTest.java
index 979f149..7f0c1c9 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioDialogFragmentTest.java
@@ -33,6 +33,7 @@
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -66,16 +67,16 @@
private Fragment mParent;
private AudioSharingCallAudioDialogFragment mFragment;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
@Before
public void setUp() {
ShadowAlertDialogCompat.reset();
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
mFragment = new AudioSharingCallAudioDialogFragment();
mParent = new Fragment();
@@ -83,6 +84,11 @@
mParent, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
}
+ @After
+ public void tearDown() {
+ ShadowAlertDialogCompat.reset();
+ }
+
@Test
public void getMetricsCategory_correctValue() {
assertThat(mFragment.getMetricsCategory())
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceControllerTest.java
index bdfc71f..c72b5a5 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCallAudioPreferenceControllerTest.java
@@ -23,15 +23,19 @@
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.times;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothCsipSetCoordinator;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcastAssistant;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.bluetooth.BluetoothLeBroadcastReceiveState;
import android.bluetooth.BluetoothProfile;
import android.bluetooth.BluetoothStatusCodes;
@@ -41,7 +45,12 @@
import android.os.Looper;
import android.platform.test.flag.junit.SetFlagsRule;
import android.provider.Settings;
+import android.view.View;
+import android.widget.CheckedTextView;
+import androidx.appcompat.app.AlertDialog;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
import androidx.lifecycle.LifecycleOwner;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
@@ -49,6 +58,8 @@
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.shadow.ShadowAlertDialogCompat;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
import com.android.settings.testutils.shadow.ShadowThreadUtils;
@@ -65,7 +76,9 @@
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Iterables;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -77,6 +90,7 @@
import org.robolectric.RobolectricTestRunner;
import org.robolectric.annotation.Config;
import org.robolectric.shadow.api.Shadow;
+import org.robolectric.shadows.androidx.fragment.FragmentController;
import java.util.ArrayList;
import java.util.List;
@@ -87,6 +101,7 @@
ShadowBluetoothAdapter.class,
ShadowBluetoothUtils.class,
ShadowThreadUtils.class,
+ ShadowAlertDialogCompat.class,
})
public class AudioSharingCallAudioPreferenceControllerTest {
private static final String PREF_KEY = "calls_and_alarms";
@@ -117,17 +132,20 @@
@Mock private CachedBluetoothDevice mCachedDevice2;
@Mock private CachedBluetoothDevice mCachedDevice3;
@Mock private BluetoothLeBroadcastReceiveState mState;
+ @Mock private BluetoothLeBroadcastMetadata mSource;
@Mock private ContentResolver mContentResolver;
private AudioSharingCallAudioPreferenceController mController;
@Spy private ContentObserver mContentObserver;
private ShadowBluetoothAdapter mShadowBluetoothAdapter;
- private LocalBluetoothManager mBtManager;
+ private FakeFeatureFactory mFeatureFactory;
private Lifecycle mLifecycle;
private LifecycleOwner mLifecycleOwner;
private Preference mPreference;
+ private Fragment mParentFragment;
@Before
public void setUp() {
+ ShadowAlertDialogCompat.reset();
mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
mShadowBluetoothAdapter.setEnabled(true);
mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
@@ -136,11 +154,18 @@
BluetoothStatusCodes.FEATURE_SUPPORTED);
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
+ mParentFragment = new Fragment();
+ FragmentController.setupFragment(
+ mParentFragment,
+ FragmentActivity.class,
+ 0 /* containerViewId */,
+ null /* bundle */);
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
- mBtManager = Utils.getLocalBtManager(mContext);
- when(mBtManager.getEventManager()).thenReturn(mBtEventManager);
- when(mBtManager.getProfileManager()).thenReturn(mBtProfileManager);
- when(mBtManager.getCachedDeviceManager()).thenReturn(mCacheManager);
+ LocalBluetoothManager btManager = Utils.getLocalBtManager(mContext);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
+ when(btManager.getEventManager()).thenReturn(mBtEventManager);
+ when(btManager.getProfileManager()).thenReturn(mBtProfileManager);
+ when(btManager.getCachedDeviceManager()).thenReturn(mCacheManager);
when(mBtProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
when(mBtProfileManager.getLeAudioBroadcastAssistantProfile()).thenReturn(mAssistant);
when(mBtProfileManager.getVolumeControlProfile()).thenReturn(mVolumeControl);
@@ -158,17 +183,24 @@
when(mScreen.findPreference(PREF_KEY)).thenReturn(mPreference);
}
+ @After
+ public void tearDown() {
+ ShadowAlertDialogCompat.reset();
+ ShadowThreadUtils.reset();
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void onStart_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStart(mLifecycleOwner);
- verify(mBtEventManager, times(0)).registerCallback(mController);
- verify(mContentResolver, times(0))
+ verify(mBtEventManager, never()).registerCallback(mController);
+ verify(mContentResolver, never())
.registerContentObserver(
Settings.Secure.getUriFor(SETTINGS_KEY_FALLBACK_DEVICE_GROUP_ID),
false,
mContentObserver);
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.registerServiceCallBack(any(), any(BluetoothLeBroadcastAssistant.Callback.class));
}
@@ -191,9 +223,9 @@
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.setCallbacksRegistered(true);
mController.onStop(mLifecycleOwner);
- verify(mBtEventManager, times(0)).unregisterCallback(mController);
- verify(mContentResolver, times(0)).unregisterContentObserver(mContentObserver);
- verify(mAssistant, times(0))
+ verify(mBtEventManager, never()).unregisterCallback(mController);
+ verify(mContentResolver, never()).unregisterContentObserver(mContentObserver);
+ verify(mAssistant, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
}
@@ -202,9 +234,9 @@
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.setCallbacksRegistered(false);
mController.onStop(mLifecycleOwner);
- verify(mBtEventManager, times(0)).unregisterCallback(mController);
- verify(mContentResolver, times(0)).unregisterContentObserver(mContentObserver);
- verify(mAssistant, times(0))
+ verify(mBtEventManager, never()).unregisterCallback(mController);
+ verify(mContentResolver, never()).unregisterContentObserver(mContentObserver);
+ verify(mAssistant, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
}
@@ -378,4 +410,181 @@
shadowOf(Looper.getMainLooper()).idle();
assertThat(mPreference.getSummary().toString()).isEmpty();
}
+
+ @Test
+ public void displayPreference_clickToShowCorrectDialog() {
+ AlertDialog latestAlertDialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ if (latestAlertDialog != null) {
+ latestAlertDialog.dismiss();
+ ShadowAlertDialogCompat.reset();
+ }
+ Settings.Secure.putInt(mContentResolver, TEST_SETTINGS_KEY, TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
+ when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
+ when(mCachedDevice2.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID2);
+ when(mCachedDevice2.getName()).thenReturn(TEST_DEVICE_NAME2);
+ when(mCachedDevice2.getDevice()).thenReturn(mDevice2);
+ when(mCacheManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
+ when(mCacheManager.findDevice(mDevice2)).thenReturn(mCachedDevice2);
+ mShadowBluetoothAdapter.setMostRecentlyConnectedDevices(List.of(mDevice1, mDevice2));
+ when(mBroadcast.isEnabled(any())).thenReturn(true);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(ImmutableList.of(mDevice1, mDevice2));
+ when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of(mState));
+ mController.init(mParentFragment);
+ mController.displayPreference(mScreen);
+ shadowOf(Looper.getMainLooper()).idle();
+ mPreference.performClick();
+ shadowOf(Looper.getMainLooper()).idle();
+ AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog.isShowing()).isTrue();
+ assertThat(dialog.getListView().getCount()).isEqualTo(2);
+ ArrayList<View> outViews = new ArrayList<>();
+ dialog.getListView()
+ .findViewsWithText(outViews, TEST_DEVICE_NAME1, View.FIND_VIEWS_WITH_TEXT);
+ assertThat(outViews.size()).isEqualTo(1);
+ View view = Iterables.getOnlyElement(outViews);
+ assertThat(view instanceof CheckedTextView).isTrue();
+ assertThat(((CheckedTextView) view).isChecked()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .visible(
+ /* context= */ eq(null),
+ /* source= */ anyInt(),
+ eq(SettingsEnums.DIALOG_AUDIO_SHARING_CALL_AUDIO),
+ /* latency= */ anyInt());
+ }
+
+ @Test
+ public void logCallAudioDeviceChange_changeCallAudioToEarlierConnectedDevice() {
+ when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
+ when(mCachedDevice2.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID2);
+ when(mCachedDevice2.getDevice()).thenReturn(mDevice2);
+ when(mCacheManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
+ when(mCacheManager.findDevice(mDevice2)).thenReturn(mCachedDevice2);
+ mShadowBluetoothAdapter.setMostRecentlyConnectedDevices(List.of(mDevice1, mDevice2));
+ mController.logCallAudioDeviceChange(TEST_DEVICE_GROUP_ID1, mCachedDevice2);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_CHANGE_CALL_AUDIO,
+ AudioSharingCallAudioPreferenceController.ChangeCallAudioType
+ .CONNECTED_EARLIER
+ .ordinal());
+ }
+
+ @Test
+ public void logCallAudioDeviceChange_changeCallAudioToLaterConnectedDevice() {
+ when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
+ when(mCachedDevice2.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID2);
+ when(mCachedDevice2.getDevice()).thenReturn(mDevice2);
+ when(mCacheManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
+ when(mCacheManager.findDevice(mDevice2)).thenReturn(mCachedDevice2);
+ mShadowBluetoothAdapter.setMostRecentlyConnectedDevices(List.of(mDevice1, mDevice2));
+ mController.logCallAudioDeviceChange(TEST_DEVICE_GROUP_ID2, mCachedDevice1);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_CHANGE_CALL_AUDIO,
+ AudioSharingCallAudioPreferenceController.ChangeCallAudioType
+ .CONNECTED_LATER
+ .ordinal());
+ }
+
+ @Test
+ public void logCallAudioDeviceChange_deviceNotFoundInRecentList_unknownChangeType() {
+ when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
+ when(mCachedDevice2.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID2);
+ when(mCachedDevice2.getDevice()).thenReturn(mDevice2);
+ when(mCacheManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
+ when(mCacheManager.findDevice(mDevice2)).thenReturn(mCachedDevice2);
+ mShadowBluetoothAdapter.setMostRecentlyConnectedDevices(List.of(mDevice1));
+ mController.logCallAudioDeviceChange(TEST_DEVICE_GROUP_ID1, mCachedDevice2);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_CHANGE_CALL_AUDIO,
+ AudioSharingCallAudioPreferenceController.ChangeCallAudioType.UNKNOWN
+ .ordinal());
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_updateSummary() {
+ when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
+ when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
+ when(mCacheManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
+ Settings.Secure.putInt(
+ mContentResolver, TEST_SETTINGS_KEY, BluetoothCsipSetCoordinator.GROUP_ID_INVALID);
+ when(mBroadcast.isEnabled(any())).thenReturn(true);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(ImmutableList.of());
+ mController.displayPreference(mScreen);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.getSummary().toString()).isEmpty();
+
+ // onReceiveStateChanged will update summary
+ Settings.Secure.putInt(mContentResolver, TEST_SETTINGS_KEY, TEST_DEVICE_GROUP_ID1);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(ImmutableList.of(mDevice1));
+ when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of(mState));
+ mController.mBroadcastAssistantCallback.onReceiveStateChanged(
+ mDevice1, /* sourceId= */ 1, mState);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.getSummary().toString())
+ .isEqualTo(
+ mContext.getString(
+ R.string.audio_sharing_call_audio_description, TEST_DEVICE_NAME1));
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_doNothing() {
+ when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
+ when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
+ when(mCacheManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
+ Settings.Secure.putInt(
+ mContentResolver, TEST_SETTINGS_KEY, BluetoothCsipSetCoordinator.GROUP_ID_INVALID);
+ when(mBroadcast.isEnabled(any())).thenReturn(true);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(ImmutableList.of());
+ mController.displayPreference(mScreen);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.getSummary().toString()).isEmpty();
+
+ Settings.Secure.putInt(mContentResolver, TEST_SETTINGS_KEY, TEST_DEVICE_GROUP_ID1);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(ImmutableList.of(mDevice1));
+ when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of(mState));
+ mController.mBroadcastAssistantCallback.onSearchStarted(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStartFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopped(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceAdded(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceAddFailed(
+ mDevice1, mSource, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceRemoved(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceRemoveFailed(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModified(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModifyFailed(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceFound(mSource);
+ mController.mBroadcastAssistantCallback.onSourceLost(/* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ // Above callbacks won't update summary.
+ assertThat(mPreference.getSummary().toString()).isEmpty();
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceControllerTest.java
index 1a9d09e..74210cd 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceControllerTest.java
@@ -25,6 +25,7 @@
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoInteractions;
@@ -34,6 +35,7 @@
import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothLeBroadcast;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.bluetooth.BluetoothStatusCodes;
import android.content.Context;
import android.os.Looper;
@@ -59,6 +61,7 @@
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -94,28 +97,28 @@
@Mock private LocalBluetoothLeBroadcastAssistant mAssistant;
@Mock private VolumeControlProfile mVolumeControl;
@Mock private TwoStatePreference mPreference;
+ @Mock private BluetoothLeBroadcastMetadata mMetadata;
private AudioSharingCompatibilityPreferenceController mController;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
- private LocalBluetoothManager mLocalBluetoothManager;
private FakeFeatureFactory mFeatureFactory;
private Lifecycle mLifecycle;
private LifecycleOwner mLifecycleOwner;
@Before
public void setUp() {
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
- mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
+ LocalBluetoothManager localBluetoothManager = Utils.getLocalBtManager(mContext);
mFeatureFactory = FakeFeatureFactory.setupForTest();
- when(mLocalBluetoothManager.getEventManager()).thenReturn(mBtEventManager);
- when(mLocalBluetoothManager.getProfileManager()).thenReturn(mBtProfileManager);
+ when(localBluetoothManager.getEventManager()).thenReturn(mBtEventManager);
+ when(localBluetoothManager.getProfileManager()).thenReturn(mBtProfileManager);
when(mBtProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
when(mBtProfileManager.getLeAudioBroadcastAssistantProfile()).thenReturn(mAssistant);
when(mBtProfileManager.getVolumeControlProfile()).thenReturn(mVolumeControl);
@@ -126,6 +129,12 @@
when(mScreen.findPreference(PREF_KEY)).thenReturn(mPreference);
}
+ @After
+ public void tearDown() {
+ ShadowThreadUtils.reset();
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void onStart_flagOn_registerCallback() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
@@ -133,7 +142,7 @@
verify(mBroadcast)
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcast.Callback.class));
- verify(mBtProfileManager, times(0)).addServiceListener(mController);
+ verify(mBtProfileManager, never()).addServiceListener(mController);
}
@Test
@@ -141,7 +150,7 @@
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
when(mBroadcast.isProfileReady()).thenReturn(false);
mController.onStart(mLifecycleOwner);
- verify(mBroadcast, times(0))
+ verify(mBroadcast, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcast.Callback.class));
verify(mBtProfileManager).addServiceListener(mController);
@@ -151,7 +160,7 @@
public void onStart_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStart(mLifecycleOwner);
- verify(mBroadcast, times(0))
+ verify(mBroadcast, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcast.Callback.class));
}
@@ -170,9 +179,9 @@
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.setCallbacksRegistered(true);
mController.onStop(mLifecycleOwner);
- verify(mBroadcast, times(0))
+ verify(mBroadcast, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcast.Callback.class));
- verify(mBtProfileManager, times(0)).removeServiceListener(mController);
+ verify(mBtProfileManager, never()).removeServiceListener(mController);
}
@Test
@@ -224,11 +233,10 @@
mController.displayPreference(mScreen);
shadowOf(Looper.getMainLooper()).idle();
verify(mPreference).setEnabled(false);
- verify(mPreference)
- .setSummary(
- eq(mContext.getString(
- R.string
- .audio_sharing_stream_compatibility_disabled_description)));
+ String expected =
+ mContext.getString(
+ R.string.audio_sharing_stream_compatibility_disabled_description);
+ verify(mPreference).setSummary(eq(expected));
}
@Test
@@ -237,10 +245,9 @@
mController.displayPreference(mScreen);
shadowOf(Looper.getMainLooper()).idle();
verify(mPreference).setEnabled(true);
- verify(mPreference)
- .setSummary(
- eq(mContext.getString(
- R.string.audio_sharing_stream_compatibility_description)));
+ String expected =
+ mContext.getString(R.string.audio_sharing_stream_compatibility_description);
+ verify(mPreference).setSummary(eq(expected));
}
@Test
@@ -272,8 +279,73 @@
public void setCheckedToCurrentValue_returnsFalse() {
when(mBroadcast.getImproveCompatibility()).thenReturn(true);
boolean setChecked = mController.setChecked(true);
- verify(mBroadcast, times(0)).setImproveCompatibility(anyBoolean());
+ verify(mBroadcast, never()).setImproveCompatibility(anyBoolean());
verifyNoInteractions(mFeatureFactory.metricsFeatureProvider);
assertThat(setChecked).isFalse();
}
+
+ @Test
+ public void testBluetoothLeBroadcastCallbacks_refreshPreference() {
+ when(mBroadcast.isEnabled(any())).thenReturn(false);
+ mController.displayPreference(mScreen);
+ shadowOf(Looper.getMainLooper()).idle();
+ verify(mPreference).setEnabled(true);
+ String expected =
+ mContext.getString(R.string.audio_sharing_stream_compatibility_description);
+ verify(mPreference).setSummary(eq(expected));
+
+ when(mBroadcast.isEnabled(any())).thenReturn(true);
+ mController.mBroadcastCallback.onBroadcastStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ verify(mPreference).setEnabled(false);
+ expected =
+ mContext.getString(
+ R.string.audio_sharing_stream_compatibility_disabled_description);
+ verify(mPreference).setSummary(eq(expected));
+
+ when(mBroadcast.isEnabled(any())).thenReturn(false);
+ mController.mBroadcastCallback.onBroadcastStopped(/* reason= */ 1, /* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ // Verify one extra setEnabled/setSummary is called other than the first call in
+ // displayPreference.
+ verify(mPreference, times(2)).setEnabled(true);
+ expected = mContext.getString(R.string.audio_sharing_stream_compatibility_description);
+ verify(mPreference, times(2)).setSummary(eq(expected));
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastCallbacks_doNothing() {
+ when(mBroadcast.isEnabled(any())).thenReturn(false);
+ mController.displayPreference(mScreen);
+ shadowOf(Looper.getMainLooper()).idle();
+ verify(mPreference).setEnabled(true);
+ String expected =
+ mContext.getString(R.string.audio_sharing_stream_compatibility_description);
+ verify(mPreference).setSummary(eq(expected));
+
+ // Verify no extra setEnabled/setSummary is called other than call in displayPreference.
+ mController.mBroadcastCallback.onBroadcastMetadataChanged(/* reason= */ 1, mMetadata);
+ verify(mPreference).setEnabled(anyBoolean());
+ verify(mPreference).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastUpdated(/* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference).setEnabled(anyBoolean());
+ verify(mPreference).setSummary(any());
+ mController.mBroadcastCallback.onPlaybackStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference).setEnabled(anyBoolean());
+ verify(mPreference).setSummary(any());
+ mController.mBroadcastCallback.onPlaybackStopped(/* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference).setEnabled(anyBoolean());
+ verify(mPreference).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastStartFailed(/* reason= */ 1);
+ verify(mPreference).setEnabled(anyBoolean());
+ verify(mPreference).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastStopFailed(/* reason= */ 1);
+ verify(mPreference).setEnabled(anyBoolean());
+ verify(mPreference).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastUpdateFailed(
+ /* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference).setEnabled(anyBoolean());
+ verify(mPreference).setSummary(any());
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingConfirmDialogFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingConfirmDialogFragmentTest.java
new file mode 100644
index 0000000..32f666f
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingConfirmDialogFragmentTest.java
@@ -0,0 +1,121 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.robolectric.shadows.ShadowLooper.shadowMainLooper;
+
+import android.app.settings.SettingsEnums;
+import android.bluetooth.BluetoothAdapter;
+import android.bluetooth.BluetoothStatusCodes;
+import android.platform.test.flag.junit.SetFlagsRule;
+import android.view.View;
+
+import androidx.appcompat.app.AlertDialog;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
+
+import com.android.settings.testutils.shadow.ShadowAlertDialogCompat;
+import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
+import com.android.settingslib.flags.Flags;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadow.api.Shadow;
+import org.robolectric.shadows.androidx.fragment.FragmentController;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(
+ shadows = {
+ ShadowAlertDialogCompat.class,
+ ShadowBluetoothAdapter.class,
+ })
+public class AudioSharingConfirmDialogFragmentTest {
+ @Rule public final MockitoRule mocks = MockitoJUnit.rule();
+ @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+
+ private Fragment mParent;
+ private AudioSharingConfirmDialogFragment mFragment;
+
+ @Before
+ public void setUp() {
+ ShadowAlertDialogCompat.reset();
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mFragment = new AudioSharingConfirmDialogFragment();
+ mParent = new Fragment();
+ FragmentController.setupFragment(
+ mParent, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ }
+
+ @After
+ public void tearDown() {
+ ShadowAlertDialogCompat.reset();
+ }
+
+ @Test
+ public void getMetricsCategory_correctValue() {
+ assertThat(mFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_SHARING_CONFIRMATION);
+ }
+
+ @Test
+ public void onCreateDialog_flagOff_dialogNotExist() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+ AudioSharingConfirmDialogFragment.show(mParent);
+ shadowMainLooper().idle();
+ AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNull();
+ }
+
+ @Test
+ public void onCreateDialog_flagOn_showDialog() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+ AudioSharingConfirmDialogFragment.show(mParent);
+ shadowMainLooper().idle();
+ AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
+ assertThat(dialog.isShowing()).isTrue();
+ }
+
+ @Test
+ public void onCreateDialog_clickOk_dialogDismiss() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+ AudioSharingConfirmDialogFragment.show(mParent);
+ shadowMainLooper().idle();
+ AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(android.R.id.button1);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
+ shadowMainLooper().idle();
+ assertThat(dialog.isShowing()).isFalse();
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragmentTest.java
index c1afeaa..8e4915c 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDashboardFragmentTest.java
@@ -18,22 +18,45 @@
import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+
import android.app.settings.SettingsEnums;
+import android.content.Context;
+import android.os.Bundle;
+
+import androidx.test.core.app.ApplicationProvider;
import com.android.settings.R;
+import com.android.settings.SettingsActivity;
+import com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsCategoryController;
+import com.android.settings.testutils.shadow.ShadowFragment;
+import com.android.settings.widget.SettingsMainSwitchBar;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.mockito.Mock;
import org.mockito.junit.MockitoJUnit;
import org.mockito.junit.MockitoRule;
import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
@RunWith(RobolectricTestRunner.class)
+@Config(shadows = {ShadowFragment.class})
public class AudioSharingDashboardFragmentTest {
@Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+
+ @Mock private SettingsActivity mActivity;
+ @Mock private SettingsMainSwitchBar mSwitchBar;
+ @Mock private AudioSharingDeviceVolumeGroupController mVolumeGroupController;
+ @Mock private AudioSharingCallAudioPreferenceController mCallAudioController;
+ @Mock private AudioSharingPlaySoundPreferenceController mPlaySoundController;
+ @Mock private AudioStreamsCategoryController mStreamsCategoryController;
+ private final Context mContext = ApplicationProvider.getApplicationContext();
private AudioSharingDashboardFragment mFragment;
@Before
@@ -59,7 +82,42 @@
@Test
public void getHelpResource_returnsCorrectResource() {
- assertThat(mFragment.getHelpResource())
- .isEqualTo(R.string.help_url_audio_sharing);
+ assertThat(mFragment.getHelpResource()).isEqualTo(R.string.help_url_audio_sharing);
+ }
+
+ @Test
+ public void onActivityCreated_showSwitchBar() {
+ doReturn(mSwitchBar).when(mActivity).getSwitchBar();
+ mFragment = spy(new AudioSharingDashboardFragment());
+ doReturn(mActivity).when(mFragment).getActivity();
+ doReturn(mContext).when(mFragment).getContext();
+ mFragment.onAttach(mContext);
+ mFragment.onActivityCreated(new Bundle());
+ verify(mSwitchBar).show();
+ }
+
+ @Test
+ public void onAudioSharingStateChanged_updateVisibilityForControllers() {
+ mFragment.setControllers(
+ mVolumeGroupController,
+ mCallAudioController,
+ mPlaySoundController,
+ mStreamsCategoryController);
+ mFragment.onAudioSharingStateChanged();
+ verify(mVolumeGroupController).updateVisibility();
+ verify(mCallAudioController).updateVisibility();
+ verify(mPlaySoundController).updateVisibility();
+ verify(mStreamsCategoryController).updateVisibility();
+ }
+
+ @Test
+ public void onAudioSharingProfilesConnected_registerCallbacksForVolumeGroupController() {
+ mFragment.setControllers(
+ mVolumeGroupController,
+ mCallAudioController,
+ mPlaySoundController,
+ mStreamsCategoryController);
+ mFragment.onAudioSharingProfilesConnected();
+ verify(mVolumeGroupController).onAudioSharingProfilesConnected();
}
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceItemTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceItemTest.java
index 1bae3d1..b23882d 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceItemTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceItemTest.java
@@ -63,4 +63,19 @@
public void creator_newArray() {
assertThat(AudioSharingDeviceItem.CREATOR.newArray(2)).hasLength(2);
}
+
+ @Test
+ public void creator_createFromParcel() {
+ AudioSharingDeviceItem item =
+ new AudioSharingDeviceItem(TEST_NAME, TEST_GROUP_ID, TEST_IS_ACTIVE);
+ Parcel parcel = Parcel.obtain();
+ item.writeToParcel(parcel, 0);
+ parcel.setDataPosition(0);
+ AudioSharingDeviceItem itemFromParcel =
+ AudioSharingDeviceItem.CREATOR.createFromParcel(parcel);
+ parcel.recycle();
+ assertThat(itemFromParcel.getName()).isEqualTo(TEST_NAME);
+ assertThat(itemFromParcel.getGroupId()).isEqualTo(TEST_GROUP_ID);
+ assertThat(itemFromParcel.isActive()).isEqualTo(TEST_IS_ACTIVE);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceControllerTest.java
index 14bca08..f3f32ae 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceControllerTest.java
@@ -25,16 +25,21 @@
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoInteractions;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcastAssistant;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
+import android.bluetooth.BluetoothLeBroadcastReceiveState;
import android.bluetooth.BluetoothProfile;
import android.bluetooth.BluetoothStatusCodes;
import android.content.Context;
@@ -54,6 +59,7 @@
import com.android.settings.SettingsActivity;
import com.android.settings.bluetooth.Utils;
import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
import com.android.settings.testutils.shadow.ShadowFragment;
@@ -74,6 +80,7 @@
import com.google.common.collect.ImmutableList;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -85,6 +92,8 @@
import org.robolectric.annotation.Config;
import org.robolectric.shadow.api.Shadow;
+import java.util.ArrayList;
+import java.util.List;
import java.util.concurrent.Executor;
@RunWith(RobolectricTestRunner.class)
@@ -113,6 +122,8 @@
@Mock private LocalBluetoothLeBroadcast mBroadcast;
@Mock private LocalBluetoothLeBroadcastAssistant mAssistant;
@Mock private VolumeControlProfile mVolumeControl;
+ @Mock private BluetoothLeBroadcastReceiveState mState;
+ @Mock private BluetoothLeBroadcastMetadata mSource;
@Mock private PreferenceScreen mScreen;
@Mock private AudioSharingDialogHandler mDialogHandler;
@Mock private DashboardFragment mFragment;
@@ -128,6 +139,7 @@
private LifecycleOwner mLifecycleOwner;
private PreferenceCategory mPreferenceGroup;
private Preference mAudioSharingPreference;
+ private FakeFeatureFactory mFeatureFactory;
@Before
public void setUp() {
@@ -140,6 +152,7 @@
BluetoothStatusCodes.FEATURE_SUPPORTED);
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
mLocalBtManager = Utils.getLocalBtManager(mContext);
when(mLocalBtManager.getEventManager()).thenReturn(mEventManager);
@@ -167,23 +180,29 @@
.thenReturn(mAudioSharingPreference);
when(mScreen.findPreference(KEY)).thenReturn(mPreferenceGroup);
mController = new AudioSharingDevicePreferenceController(mContext);
+ mController.init(mFragment);
mController.setBluetoothDeviceUpdater(mBluetoothDeviceUpdater);
mController.setDialogHandler(mDialogHandler);
doReturn(mActivity).when(mFragment).getActivity();
mController.setHostFragment(mFragment);
}
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void onStart_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStart(mLifecycleOwner);
- verify(mEventManager, times(0)).registerCallback(any(BluetoothCallback.class));
- verify(mDialogHandler, times(0)).registerCallbacks(any(Executor.class));
- verify(mAssistant, times(0))
+ verify(mEventManager, never()).registerCallback(any(BluetoothCallback.class));
+ verify(mDialogHandler, never()).registerCallbacks(any(Executor.class));
+ verify(mAssistant, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mBluetoothDeviceUpdater, times(0)).registerCallback();
- verify(mBluetoothDeviceUpdater, times(0)).refreshPreference();
+ verify(mBluetoothDeviceUpdater, never()).registerCallback();
+ verify(mBluetoothDeviceUpdater, never()).refreshPreference();
}
@Test
@@ -203,11 +222,11 @@
public void onStop_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStop(mLifecycleOwner);
- verify(mEventManager, times(0)).unregisterCallback(any(BluetoothCallback.class));
- verify(mDialogHandler, times(0)).unregisterCallbacks();
- verify(mAssistant, times(0))
+ verify(mEventManager, never()).unregisterCallback(any(BluetoothCallback.class));
+ verify(mDialogHandler, never()).unregisterCallbacks();
+ verify(mAssistant, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mBluetoothDeviceUpdater, times(0)).unregisterCallback();
+ verify(mBluetoothDeviceUpdater, never()).unregisterCallback();
}
@Test
@@ -227,7 +246,7 @@
mController.displayPreference(mScreen);
assertThat(mPreferenceGroup.isVisible()).isFalse();
assertThat(mAudioSharingPreference.isVisible()).isFalse();
- verify(mBluetoothDeviceUpdater, times(0)).forceUpdate();
+ verify(mBluetoothDeviceUpdater, never()).forceUpdate();
}
@Test
@@ -401,8 +420,8 @@
doReturn(intent).when(mActivity).getIntent();
mController.displayPreference(mScreen);
- verify(mDeviceManager, times(0)).findDevice(any(BluetoothDevice.class));
- verify(mDialogHandler, times(0))
+ verify(mDeviceManager, never()).findDevice(any(BluetoothDevice.class));
+ verify(mDialogHandler, never())
.handleDeviceConnected(any(CachedBluetoothDevice.class), anyBoolean());
}
@@ -418,8 +437,8 @@
when(mDevice.isConnected()).thenReturn(false);
mController.displayPreference(mScreen);
- verify(mDeviceManager, times(0)).findDevice(any(BluetoothDevice.class));
- verify(mDialogHandler, times(0))
+ verify(mDeviceManager, never()).findDevice(any(BluetoothDevice.class));
+ verify(mDialogHandler, never())
.handleDeviceConnected(any(CachedBluetoothDevice.class), anyBoolean());
}
@@ -436,8 +455,8 @@
mController.setIntentHandled(true);
mController.displayPreference(mScreen);
- verify(mDeviceManager, times(0)).findDevice(any(BluetoothDevice.class));
- verify(mDialogHandler, times(0))
+ verify(mDeviceManager, never()).findDevice(any(BluetoothDevice.class));
+ verify(mDialogHandler, never())
.handleDeviceConnected(any(CachedBluetoothDevice.class), anyBoolean());
}
@@ -484,4 +503,72 @@
verify(mDialogHandler).handleDeviceConnected(mCachedDevice, true);
}
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_updateGroup() {
+ // onReceiveStateChanged with unconnected state will do nothing
+ when(mState.getBisSyncState()).thenReturn(new ArrayList<>());
+ mController.mBroadcastAssistantCallback.onReceiveStateChanged(
+ mDevice, /* sourceId= */ 1, mState);
+ shadowOf(Looper.getMainLooper()).idle();
+ verify(mBluetoothDeviceUpdater, never()).forceUpdate();
+ verify(mDialogHandler, never()).closeOpeningDialogsForLeaDevice(mCachedDevice);
+
+ // onReceiveStateChanged with connected state will update group preference and handle
+ // stale dialogs
+ List<Long> bisSyncState = new ArrayList<>();
+ bisSyncState.add(1L);
+ when(mState.getBisSyncState()).thenReturn(bisSyncState);
+ mController.mBroadcastAssistantCallback.onReceiveStateChanged(
+ mDevice, /* sourceId= */ 1, mState);
+ shadowOf(Looper.getMainLooper()).idle();
+ verify(mBluetoothDeviceUpdater).forceUpdate();
+ verify(mDialogHandler).closeOpeningDialogsForLeaDevice(mCachedDevice);
+
+ // onSourceRemoved will update group preference
+ mController.mBroadcastAssistantCallback.onSourceRemoved(
+ mDevice, /* sourceId= */ 1, /* reason= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ verify(mBluetoothDeviceUpdater, times(2)).forceUpdate();
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_logAction() {
+ mController.mBroadcastAssistantCallback.onSourceAddFailed(
+ mDevice, mSource, /* reason= */ 1);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_JOIN_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
+
+ mController.mBroadcastAssistantCallback.onSourceRemoveFailed(
+ mDevice, /* sourceId= */ 1, /* reason= */ 1);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_LEAVE_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_doNothing() {
+ mController.mBroadcastAssistantCallback.onSearchStarted(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStartFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopped(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceAdded(
+ mDevice, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModified(
+ mDevice, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModifyFailed(
+ mDevice, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceFound(mSource);
+ mController.mBroadcastAssistantCallback.onSourceLost(/* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ // Above callbacks won't update group preference and log actions
+ verify(mBluetoothDeviceUpdater, never()).forceUpdate();
+ verifyNoMoreInteractions(mFeatureFactory.metricsFeatureProvider);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeControlUpdaterTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeControlUpdaterTest.java
index 7a21f02..e7cfb85 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeControlUpdaterTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeControlUpdaterTest.java
@@ -22,6 +22,7 @@
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoInteractions;
@@ -41,6 +42,7 @@
import androidx.preference.Preference;
import androidx.test.core.app.ApplicationProvider;
+import com.android.settings.bluetooth.BluetoothDevicePreference;
import com.android.settings.bluetooth.Utils;
import com.android.settings.connecteddevice.DevicePreferenceCallback;
import com.android.settings.testutils.FakeFeatureFactory;
@@ -56,6 +58,7 @@
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -80,6 +83,9 @@
private static final String TEST_SETTINGS_KEY =
"bluetooth_le_broadcast_fallback_active_group_id";
private static final int TEST_DEVICE_GROUP_ID = 1;
+ private static final int TEST_VOLUME_VALUE = 255;
+ private static final int TEST_MAX_STREAM_VALUE = 10;
+ private static final int TEST_MIN_STREAM_VALUE = 0;
@Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
@@ -131,6 +137,11 @@
mDeviceUpdater.setPrefContext(mContext);
}
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void onProfileConnectionStateChanged_leaDeviceConnected_noSharing_removesPref() {
setupPreferenceMapWithDevice();
@@ -249,10 +260,11 @@
(AudioSharingDeviceVolumePreference) captor.getValue();
SeekBar seekBar = mock(SeekBar.class);
- when(seekBar.getProgress()).thenReturn(255);
+ when(seekBar.getProgress()).thenReturn(TEST_VOLUME_VALUE);
preference.onStopTrackingTouch(seekBar);
- verify(mVolumeControl).setDeviceVolume(mBluetoothDevice, 255, true);
+ verify(mVolumeControl)
+ .setDeviceVolume(mBluetoothDevice, TEST_VOLUME_VALUE, /* isGroupOp= */ true);
verifyNoInteractions(mAudioManager);
verify(mFeatureFactory.metricsFeatureProvider)
.action(
@@ -273,14 +285,17 @@
Settings.Secure.putInt(
mContext.getContentResolver(), TEST_SETTINGS_KEY, TEST_DEVICE_GROUP_ID);
- when(mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC)).thenReturn(10);
- when(mAudioManager.getStreamMinVolume(AudioManager.STREAM_MUSIC)).thenReturn(0);
+ when(mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC))
+ .thenReturn(TEST_MAX_STREAM_VALUE);
+ when(mAudioManager.getStreamMinVolume(AudioManager.STREAM_MUSIC))
+ .thenReturn(TEST_MIN_STREAM_VALUE);
SeekBar seekBar = mock(SeekBar.class);
- when(seekBar.getProgress()).thenReturn(255);
+ when(seekBar.getProgress()).thenReturn(TEST_VOLUME_VALUE);
preference.onStopTrackingTouch(seekBar);
verifyNoInteractions(mVolumeControl);
- verify(mAudioManager).setStreamVolume(AudioManager.STREAM_MUSIC, 10, 0);
+ verify(mAudioManager)
+ .setStreamVolume(AudioManager.STREAM_MUSIC, TEST_MAX_STREAM_VALUE, /* flags= */ 0);
verify(mFeatureFactory.metricsFeatureProvider)
.action(
mContext,
@@ -289,6 +304,22 @@
}
@Test
+ public void testOnSeekBarChangeListener_doNothing() {
+ ArgumentCaptor<Preference> captor = ArgumentCaptor.forClass(Preference.class);
+ setupPreferenceMapWithDevice();
+
+ verify(mDevicePreferenceCallback).onDeviceAdded(captor.capture());
+ assertThat(captor.getValue() instanceof AudioSharingDeviceVolumePreference).isTrue();
+ AudioSharingDeviceVolumePreference preference =
+ (AudioSharingDeviceVolumePreference) captor.getValue();
+ SeekBar seekBar = mock(SeekBar.class);
+ preference.onProgressChanged(seekBar, TEST_VOLUME_VALUE, /* fromUser= */ false);
+
+ verifyNoInteractions(mAudioManager);
+ verifyNoInteractions(mVolumeControl);
+ }
+
+ @Test
public void getLogTag_returnsCorrectTag() {
assertThat(mDeviceUpdater.getLogTag()).isEqualTo(TAG);
}
@@ -298,6 +329,35 @@
assertThat(mDeviceUpdater.getPreferenceKey()).isEqualTo(PREF_KEY);
}
+ @Test
+ public void addPreferenceWithSortType_doNothing() {
+ mDeviceUpdater.addPreference(
+ mCachedBluetoothDevice, BluetoothDevicePreference.SortType.TYPE_DEFAULT);
+ // Verify AudioSharingDeviceVolumeControlUpdater overrides BluetoothDeviceUpdater and won't
+ // trigger add preference.
+ verifyNoInteractions(mDevicePreferenceCallback);
+ }
+
+ @Test
+ public void launchDeviceDetails_doNothing() {
+ Preference preference = mock(Preference.class);
+ mDeviceUpdater.launchDeviceDetails(preference);
+ // Verify AudioSharingDeviceVolumeControlUpdater overrides BluetoothDeviceUpdater and won't
+ // launch device details
+ verifyNoInteractions(preference);
+ }
+
+ @Test
+ public void refreshPreference_doNothing() {
+ setupPreferenceMapWithDevice();
+ verify(mDevicePreferenceCallback).onDeviceAdded(any(Preference.class));
+ when(mCachedDeviceManager.getCachedDevicesCopy()).thenReturn(ImmutableList.of());
+ mDeviceUpdater.refreshPreference();
+ // Verify AudioSharingDeviceVolumeControlUpdater overrides BluetoothDeviceUpdater and won't
+ // refresh preference map
+ verify(mDevicePreferenceCallback, never()).onDeviceRemoved(any(Preference.class));
+ }
+
private void setupPreferenceMapWithDevice() {
// Add device to preferenceMap
when(mBroadcast.isEnabled(null)).thenReturn(true);
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupControllerTest.java
index 7c8709c..f2f0a2f 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDeviceVolumeGroupControllerTest.java
@@ -25,6 +25,7 @@
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@@ -34,6 +35,8 @@
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcastAssistant;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
+import android.bluetooth.BluetoothLeBroadcastReceiveState;
import android.bluetooth.BluetoothStatusCodes;
import android.bluetooth.BluetoothVolumeControl;
import android.content.ContentResolver;
@@ -69,6 +72,7 @@
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -81,6 +85,8 @@
import org.robolectric.annotation.Config;
import org.robolectric.shadow.api.Shadow;
+import java.util.ArrayList;
+import java.util.List;
import java.util.concurrent.Executor;
@RunWith(RobolectricTestRunner.class)
@@ -114,6 +120,8 @@
@Mock private LocalBluetoothProfileManager mProfileManager;
@Mock private LocalBluetoothLeBroadcast mBroadcast;
@Mock private LocalBluetoothLeBroadcastAssistant mAssistant;
+ @Mock private BluetoothLeBroadcastReceiveState mState;
+ @Mock private BluetoothLeBroadcastMetadata mSource;
@Mock private AudioSharingDeviceVolumeControlUpdater mDeviceUpdater;
@Mock private VolumeControlProfile mVolumeControl;
@Mock private PreferenceScreen mScreen;
@@ -164,6 +172,7 @@
doReturn(TEST_DEVICE_GROUP_ID1).when(mCachedDevice1).getGroupId();
doReturn(mDevice1).when(mCachedDevice1).getDevice();
doReturn(ImmutableSet.of()).when(mCachedDevice1).getMemberDevice();
+ when(mCachedDeviceManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
when(mPreference1.getCachedDevice()).thenReturn(mCachedDevice1);
doReturn(TEST_DEVICE_NAME2).when(mCachedDevice2).getName();
doReturn(TEST_DEVICE_GROUP_ID2).when(mCachedDevice2).getGroupId();
@@ -181,17 +190,23 @@
mContentObserver = mController.getSettingsObserver();
}
+ @After
+ public void tearDown() {
+ ShadowThreadUtils.reset();
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void onStart_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStart(mLifecycleOwner);
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mDeviceUpdater, times(0)).registerCallback();
- verify(mVolumeControl, times(0))
+ verify(mDeviceUpdater, never()).registerCallback();
+ verify(mVolumeControl, never())
.registerCallback(any(Executor.class), any(BluetoothVolumeControl.Callback.class));
- verify(mContentResolver, times(0))
+ verify(mContentResolver, never())
.registerContentObserver(
Settings.Secure.getUriFor(SETTINGS_KEY_FALLBACK_DEVICE_GROUP_ID),
false,
@@ -216,15 +231,32 @@
}
@Test
+ public void onAudioSharingProfilesConnected_flagOn_registerCallbacks() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+ mController.onAudioSharingProfilesConnected();
+ verify(mAssistant)
+ .registerServiceCallBack(
+ any(Executor.class), any(BluetoothLeBroadcastAssistant.Callback.class));
+ verify(mDeviceUpdater).registerCallback();
+ verify(mVolumeControl)
+ .registerCallback(any(Executor.class), any(BluetoothVolumeControl.Callback.class));
+ verify(mContentResolver)
+ .registerContentObserver(
+ Settings.Secure.getUriFor(SETTINGS_KEY_FALLBACK_DEVICE_GROUP_ID),
+ false,
+ mContentObserver);
+ }
+
+ @Test
public void onStop_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStop(mLifecycleOwner);
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mDeviceUpdater, times(0)).unregisterCallback();
- verify(mVolumeControl, times(0))
+ verify(mDeviceUpdater, never()).unregisterCallback();
+ verify(mVolumeControl, never())
.unregisterCallback(any(BluetoothVolumeControl.Callback.class));
- verify(mContentResolver, times(0)).unregisterContentObserver(mContentObserver);
+ verify(mContentResolver, never()).unregisterContentObserver(mContentObserver);
}
@Test
@@ -232,12 +264,12 @@
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.setCallbacksRegistered(false);
mController.onStop(mLifecycleOwner);
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mDeviceUpdater, times(0)).unregisterCallback();
- verify(mVolumeControl, times(0))
+ verify(mDeviceUpdater, never()).unregisterCallback();
+ verify(mVolumeControl, never())
.unregisterCallback(any(BluetoothVolumeControl.Callback.class));
- verify(mContentResolver, times(0)).unregisterContentObserver(mContentObserver);
+ verify(mContentResolver, never()).unregisterContentObserver(mContentObserver);
}
@Test
@@ -257,7 +289,7 @@
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.displayPreference(mScreen);
assertThat(mPreferenceGroup.isVisible()).isFalse();
- verify(mDeviceUpdater, times(0)).forceUpdate();
+ verify(mDeviceUpdater, never()).forceUpdate();
}
@Test
@@ -324,7 +356,7 @@
mPreferenceGroup.addPreference(mPreference1);
mController.setPreferenceGroup(mPreferenceGroup);
mController.onDeviceRemoved(mPreference1);
- verify(mPreferenceGroup, times(0)).setVisible(false);
+ verify(mPreferenceGroup, never()).setVisible(false);
assertThat(mPreferenceGroup.isVisible()).isTrue();
}
@@ -344,7 +376,7 @@
mController.updateVisibility();
shadowOf(Looper.getMainLooper()).idle();
- verify(mPreferenceGroup, times(0)).setVisible(anyBoolean());
+ verify(mPreferenceGroup, never()).setVisible(anyBoolean());
}
@Test
@@ -411,4 +443,64 @@
verify(mPreference1).setOrder(0);
verify(mPreference2).setOrder(1);
}
+
+ @Test
+ public void onDeviceVolumeChanged_updatePreference() {
+ when(mPreference1.getProgress()).thenReturn(TEST_MAX_VOLUME_VALUE);
+ mController.setPreferenceGroup(mPreferenceGroup);
+ mController.onDeviceAdded(mPreference1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreferenceGroup.getPreferenceCount()).isEqualTo(1);
+
+ mController.mVolumeControlCallback.onDeviceVolumeChanged(mDevice1, TEST_VOLUME_VALUE);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ verify(mPreference1).setProgress(TEST_VOLUME_VALUE);
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_updateGroup() {
+ when(mState.getBisSyncState()).thenReturn(new ArrayList<>());
+ // onReceiveStateChanged with unconnected state will do nothing
+ mController.mBroadcastAssistantCallback.onReceiveStateChanged(
+ mDevice1, /* sourceId= */ 1, mState);
+ verify(mDeviceUpdater, never()).forceUpdate();
+
+ // onReceiveStateChanged with connected state will update group preference
+ List<Long> bisSyncState = new ArrayList<>();
+ bisSyncState.add(1L);
+ when(mState.getBisSyncState()).thenReturn(bisSyncState);
+ mController.mBroadcastAssistantCallback.onReceiveStateChanged(
+ mDevice1, /* sourceId= */ 1, mState);
+ verify(mDeviceUpdater).forceUpdate();
+
+ // onSourceRemoved will update group preference
+ mController.mBroadcastAssistantCallback.onSourceRemoved(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ verify(mDeviceUpdater, times(2)).forceUpdate();
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_doNothing() {
+ mController.mBroadcastAssistantCallback.onSearchStarted(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStartFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopped(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceAdded(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceAddFailed(
+ mDevice1, mSource, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceRemoveFailed(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModified(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModifyFailed(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceFound(mSource);
+ mController.mBroadcastAssistantCallback.onSourceLost(/* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ // Above callbacks won't update group preference
+ verify(mDeviceUpdater, never()).forceUpdate();
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragmentTest.java
index 4336e77..39709c1 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogFragmentTest.java
@@ -18,11 +18,17 @@
import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.verify;
import static org.robolectric.shadows.ShadowLooper.shadowMainLooper;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothStatusCodes;
+import android.content.Context;
import android.platform.test.flag.junit.SetFlagsRule;
+import android.util.Pair;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
@@ -34,10 +40,12 @@
import androidx.recyclerview.widget.RecyclerView;
import com.android.settings.R;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowAlertDialogCompat;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -72,30 +80,55 @@
new AudioSharingDeviceItem(TEST_DEVICE_NAME2, /* groupId= */ 2, /* isActive= */ false);
private static final AudioSharingDeviceItem TEST_DEVICE_ITEM3 =
new AudioSharingDeviceItem(TEST_DEVICE_NAME3, /* groupId= */ 3, /* isActive= */ false);
+ private static final AudioSharingDialogFragment.DialogEventListener EMPTY_EVENT_LISTENER =
+ new AudioSharingDialogFragment.DialogEventListener() {
+ @Override
+ public void onItemClick(AudioSharingDeviceItem item) {}
+
+ @Override
+ public void onCancelClick() {}
+ };
+ private static final Pair<Integer, Object> TEST_EVENT_DATA = Pair.create(1, 1);
+ private static final Pair<Integer, Object>[] TEST_EVENT_DATA_LIST =
+ new Pair[] {TEST_EVENT_DATA};
private Fragment mParent;
private AudioSharingDialogFragment mFragment;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
+ private FakeFeatureFactory mFeatureFactory;
@Before
public void setUp() {
ShadowAlertDialogCompat.reset();
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
mFragment = new AudioSharingDialogFragment();
mParent = new Fragment();
FragmentController.setupFragment(
mParent, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
}
+ @After
+ public void tearDown() {
+ ShadowAlertDialogCompat.reset();
+ }
+
+ @Test
+ public void getMetricsCategory_correctValue() {
+ assertThat(mFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_SHARING_ADD_DEVICE);
+ }
+
@Test
public void onCreateDialog_flagOff_dialogNotExist() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, new ArrayList<>(), (item) -> {});
+ AudioSharingDialogFragment.show(
+ mParent, new ArrayList<>(), EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
@@ -105,14 +138,20 @@
@Test
public void onCreateDialog_flagOn_noConnectedDevice() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, new ArrayList<>(), (item) -> {});
+ AudioSharingDialogFragment.show(
+ mParent, new ArrayList<>(), EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
TextView description = dialog.findViewById(R.id.description_text);
+ assertThat(description).isNotNull();
ImageView image = dialog.findViewById(R.id.description_image);
+ assertThat(image).isNotNull();
Button shareBtn = dialog.findViewById(R.id.positive_btn);
+ assertThat(shareBtn).isNotNull();
Button cancelBtn = dialog.findViewById(R.id.negative_btn);
+ assertThat(cancelBtn).isNotNull();
assertThat(dialog.isShowing()).isTrue();
assertThat(description.getVisibility()).isEqualTo(View.VISIBLE);
assertThat(description.getText().toString())
@@ -125,13 +164,22 @@
@Test
public void onCreateDialog_noConnectedDevice_dialogDismiss() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, new ArrayList<>(), (item) -> {});
+ AudioSharingDialogFragment.show(
+ mParent, new ArrayList<>(), EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(android.R.id.button2).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(android.R.id.button2);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
shadowMainLooper().idle();
assertThat(dialog.isShowing()).isFalse();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
@@ -139,15 +187,21 @@
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
ArrayList<AudioSharingDeviceItem> list = new ArrayList<>();
list.add(TEST_DEVICE_ITEM1);
- mFragment.show(mParent, list, (item) -> {});
+ AudioSharingDialogFragment.show(mParent, list, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
TextView title = dialog.findViewById(R.id.title_text);
+ assertThat(title).isNotNull();
TextView description = dialog.findViewById(R.id.description_text);
+ assertThat(description).isNotNull();
ImageView image = dialog.findViewById(R.id.description_image);
+ assertThat(image).isNotNull();
Button shareBtn = dialog.findViewById(R.id.positive_btn);
+ assertThat(shareBtn).isNotNull();
Button cancelBtn = dialog.findViewById(R.id.negative_btn);
+ assertThat(cancelBtn).isNotNull();
assertThat(dialog.isShowing()).isTrue();
assertThat(title.getText().toString())
.isEqualTo(
@@ -166,12 +220,22 @@
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
ArrayList<AudioSharingDeviceItem> list = new ArrayList<>();
list.add(TEST_DEVICE_ITEM1);
- mFragment.show(mParent, list, (item) -> {});
+ AudioSharingDialogFragment.show(mParent, list, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(R.id.negative_btn).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(R.id.negative_btn);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
+ shadowMainLooper().idle();
+
assertThat(dialog.isShowing()).isFalse();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
@@ -180,13 +244,35 @@
ArrayList<AudioSharingDeviceItem> list = new ArrayList<>();
list.add(TEST_DEVICE_ITEM1);
AtomicBoolean isShareBtnClicked = new AtomicBoolean(false);
- mFragment.show(mParent, list, (item) -> isShareBtnClicked.set(true));
+ AudioSharingDialogFragment.show(
+ mParent,
+ list,
+ new AudioSharingDialogFragment.DialogEventListener() {
+ @Override
+ public void onItemClick(AudioSharingDeviceItem item) {
+ isShareBtnClicked.set(true);
+ }
+
+ @Override
+ public void onCancelClick() {}
+ },
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(R.id.positive_btn).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(R.id.positive_btn);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
+ shadowMainLooper().idle();
+
assertThat(dialog.isShowing()).isFalse();
assertThat(isShareBtnClicked.get()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
@@ -196,15 +282,21 @@
list.add(TEST_DEVICE_ITEM1);
list.add(TEST_DEVICE_ITEM2);
list.add(TEST_DEVICE_ITEM3);
- mFragment.show(mParent, list, (item) -> {});
+ AudioSharingDialogFragment.show(mParent, list, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
TextView description = dialog.findViewById(R.id.description_text);
+ assertThat(description).isNotNull();
ImageView image = dialog.findViewById(R.id.description_image);
+ assertThat(image).isNotNull();
Button shareBtn = dialog.findViewById(R.id.positive_btn);
+ assertThat(shareBtn).isNotNull();
Button cancelBtn = dialog.findViewById(R.id.negative_btn);
+ assertThat(cancelBtn).isNotNull();
RecyclerView recyclerView = dialog.findViewById(R.id.device_btn_list);
+ assertThat(recyclerView).isNotNull();
assertThat(dialog.isShowing()).isTrue();
assertThat(description.getVisibility()).isEqualTo(View.VISIBLE);
assertThat(description.getText().toString())
@@ -223,11 +315,35 @@
list.add(TEST_DEVICE_ITEM1);
list.add(TEST_DEVICE_ITEM2);
list.add(TEST_DEVICE_ITEM3);
- mFragment.show(mParent, list, (item) -> {});
+ AtomicBoolean isCancelBtnClicked = new AtomicBoolean(false);
+ AudioSharingDialogFragment.show(
+ mParent,
+ list,
+ new AudioSharingDialogFragment.DialogEventListener() {
+ @Override
+ public void onItemClick(AudioSharingDeviceItem item) {}
+
+ @Override
+ public void onCancelClick() {
+ isCancelBtnClicked.set(true);
+ }
+ },
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(R.id.negative_btn).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(R.id.negative_btn);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
+ shadowMainLooper().idle();
+
assertThat(dialog.isShowing()).isFalse();
+ assertThat(isCancelBtnClicked.get()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandlerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandlerTest.java
index 570af1f..a7e6f56 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandlerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDialogHandlerTest.java
@@ -19,26 +19,35 @@
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.times;
+import static org.mockito.ArgumentMatchers.anyBoolean;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothLeBroadcast;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.bluetooth.BluetoothLeBroadcastReceiveState;
import android.bluetooth.BluetoothProfile;
import android.bluetooth.BluetoothStatusCodes;
import android.content.Context;
import android.os.Looper;
import android.platform.test.flag.junit.SetFlagsRule;
+import android.util.Pair;
import androidx.fragment.app.DialogFragment;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentActivity;
-import androidx.test.core.app.ApplicationProvider;
import com.android.settings.bluetooth.Utils;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
@@ -51,8 +60,10 @@
import com.android.settingslib.flags.Flags;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.Iterables;
import com.google.common.truth.Correspondence;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -67,6 +78,7 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.concurrent.Executor;
@RunWith(RobolectricTestRunner.class)
@Config(
@@ -78,6 +90,7 @@
@Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
@Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+ private static final int TEST_SOURCE_ID = 1;
private static final String TEST_DEVICE_NAME1 = "test1";
private static final String TEST_DEVICE_NAME2 = "test2";
private static final String TEST_DEVICE_NAME3 = "test3";
@@ -87,6 +100,7 @@
Correspondence.from(
(Fragment fragment, String tag) ->
fragment instanceof DialogFragment
+ && ((DialogFragment) fragment).getTag() != null
&& ((DialogFragment) fragment).getTag().equals(tag),
"is equal to");
@@ -104,23 +118,32 @@
@Mock private BluetoothDevice mDevice3;
@Mock private BluetoothDevice mDevice4;
@Mock private LeAudioProfile mLeAudioProfile;
- private Fragment mParentFragment;
@Mock private BluetoothLeBroadcastReceiveState mState;
+ @Mock private BluetoothLeBroadcastMetadata mMetadata;
+ private Fragment mParentFragment;
private Context mContext;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
private AudioSharingDialogHandler mHandler;
+ private FakeFeatureFactory mFeatureFactory;
@Before
public void setup() {
- mContext = ApplicationProvider.getApplicationContext();
+ mParentFragment = new Fragment();
+ FragmentController.setupFragment(
+ mParentFragment,
+ FragmentActivity.class,
+ 0 /* containerViewId */,
+ null /* bundle */);
+ mContext = mParentFragment.getContext();
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
mLocalBtManager = Utils.getLocalBtManager(mContext);
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
when(mLocalBtManager.getProfileManager()).thenReturn(mLocalBtProfileManager);
when(mLocalBtProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
@@ -128,6 +151,7 @@
List<Long> bisSyncState = new ArrayList<>();
bisSyncState.add(1L);
when(mState.getBisSyncState()).thenReturn(bisSyncState);
+ when(mState.getSourceId()).thenReturn(TEST_SOURCE_ID);
when(mLeAudioProfile.isEnabled(any())).thenReturn(true);
when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
@@ -151,15 +175,14 @@
when(mCacheManager.findDevice(mDevice2)).thenReturn(mCachedDevice2);
when(mCacheManager.findDevice(mDevice3)).thenReturn(mCachedDevice3);
when(mCacheManager.findDevice(mDevice4)).thenReturn(mCachedDevice4);
- mParentFragment = new Fragment();
- FragmentController.setupFragment(
- mParentFragment,
- FragmentActivity.class,
- 0 /* containerViewId */,
- null /* bundle */);
mHandler = new AudioSharingDialogHandler(mContext, mParentFragment);
}
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void handleUserTriggeredNonLeaDeviceConnected_noSharing_setActive() {
setUpBroadcast(false);
@@ -183,9 +206,33 @@
when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of(mState));
mHandler.handleDeviceConnected(mCachedDevice2, /* userTriggered= */ true);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingStopDialogFragment.tag());
+
+ AudioSharingStopDialogFragment fragment =
+ (AudioSharingStopDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_STOP_AUDIO_SHARING),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 0));
}
@Test
@@ -211,9 +258,39 @@
when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of());
mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ true);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingJoinDialogFragment.tag());
+
+ AudioSharingJoinDialogFragment fragment =
+ (AudioSharingJoinDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_START_AUDIO_SHARING),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 0),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 2));
+ AudioSharingJoinDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onShareClick();
+ verify(mBroadcast).startPrivateBroadcast();
+ listener.onCancelClick();
+ verify(mCachedDevice1).setActive();
}
@Test
@@ -227,9 +304,39 @@
when(mAssistant.getAllSources(mDevice3)).thenReturn(ImmutableList.of(mState));
mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ true);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingJoinDialogFragment.tag());
+
+ AudioSharingJoinDialogFragment fragment =
+ (AudioSharingJoinDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_AUDIO_SHARING_ADD_DEVICE),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 1));
+ AudioSharingJoinDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onCancelClick();
+ verify(mAssistant, never()).addSource(mDevice1, mMetadata, /* isGroupOp= */ false);
+ listener.onShareClick();
+ verify(mAssistant).addSource(mDevice1, mMetadata, /* isGroupOp= */ false);
}
@Test
@@ -245,9 +352,38 @@
when(mAssistant.getAllSources(mDevice4)).thenReturn(ImmutableList.of(mState));
mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ true);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingDisconnectDialogFragment.tag());
+
+ AudioSharingDisconnectDialogFragment fragment =
+ (AudioSharingDisconnectDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 2),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 1));
+ AudioSharingDisconnectDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onItemClick(AudioSharingUtils.buildAudioSharingDeviceItem(mCachedDevice3));
+ verify(mAssistant).removeSource(mDevice3, TEST_SOURCE_ID);
+ verify(mAssistant).addSource(mDevice1, mMetadata, /* isGroupOp= */ false);
}
@Test
@@ -260,22 +396,46 @@
when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of());
mHandler.handleDeviceConnected(mCachedDevice2, /* userTriggered= */ false);
shadowOf(Looper.getMainLooper()).idle();
- verify(mCachedDevice2, times(0)).setActive();
+ verify(mCachedDevice2, never()).setActive();
}
@Test
public void handleNonLeaDeviceConnected_sharing_showStopDialog() {
setUpBroadcast(true);
- ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice2);
+ ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice1);
when(mAssistant.getDevicesMatchingConnectionStates(
new int[] {BluetoothProfile.STATE_CONNECTED}))
.thenReturn(deviceList);
when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of(mState));
mHandler.handleDeviceConnected(mCachedDevice2, /* userTriggered= */ false);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingStopDialogFragment.tag());
+
+ AudioSharingStopDialogFragment fragment =
+ (AudioSharingStopDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_STOP_AUDIO_SHARING),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 0),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 0));
}
@Test
@@ -288,7 +448,7 @@
when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of());
mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ false);
shadowOf(Looper.getMainLooper()).idle();
- verify(mCachedDevice1, times(0)).setActive();
+ verify(mCachedDevice1, never()).setActive();
}
@Test
@@ -301,9 +461,39 @@
when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of());
mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ false);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingJoinDialogFragment.tag());
+
+ AudioSharingJoinDialogFragment fragment =
+ (AudioSharingJoinDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_START_AUDIO_SHARING),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 0),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 0),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 2));
+ AudioSharingJoinDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onShareClick();
+ verify(mBroadcast).startPrivateBroadcast();
+ listener.onCancelClick();
+ verify(mCachedDevice1, never()).setActive();
}
@Test
@@ -317,9 +507,39 @@
when(mAssistant.getAllSources(mDevice3)).thenReturn(ImmutableList.of(mState));
mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ false);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingJoinDialogFragment.tag());
+
+ AudioSharingJoinDialogFragment fragment =
+ (AudioSharingJoinDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_AUDIO_SHARING_ADD_DEVICE),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 0),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 1));
+ AudioSharingJoinDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onCancelClick();
+ verify(mAssistant, never()).addSource(mDevice1, mMetadata, /* isGroupOp= */ false);
+ listener.onShareClick();
+ verify(mAssistant).addSource(mDevice1, mMetadata, /* isGroupOp= */ false);
}
@Test
@@ -334,9 +554,38 @@
when(mAssistant.getAllSources(mDevice4)).thenReturn(ImmutableList.of(mState));
mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ false);
shadowOf(Looper.getMainLooper()).idle();
- assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
.comparingElementsUsing(TAG_EQUALS)
.containsExactly(AudioSharingDisconnectDialogFragment.tag());
+
+ AudioSharingDisconnectDialogFragment fragment =
+ (AudioSharingDisconnectDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 0),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 2),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 1));
+ AudioSharingDisconnectDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onItemClick(AudioSharingUtils.buildAudioSharingDeviceItem(mCachedDevice3));
+ verify(mAssistant).removeSource(mDevice3, TEST_SOURCE_ID);
+ verify(mAssistant).addSource(mDevice1, mMetadata, /* isGroupOp= */ false);
}
@Test
@@ -357,13 +606,45 @@
mHandler.closeOpeningDialogsForLeaDevice(mCachedDevice1);
shadowOf(Looper.getMainLooper()).idle();
assertThat(mParentFragment.getChildFragmentManager().getFragments()).isEmpty();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS,
+ SettingsEnums.DIALOG_START_AUDIO_SHARING);
+ }
+
+ @Test
+ public void closeOpeningDialogsForLeaDevice_closeDisconnectDialog() {
+ // Show disconnect dialog
+ setUpBroadcast(true);
+ ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice1, mDevice3, mDevice4);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(deviceList);
+ when(mAssistant.getAllSources(mDevice1)).thenReturn(ImmutableList.of());
+ when(mAssistant.getAllSources(mDevice3)).thenReturn(ImmutableList.of(mState));
+ when(mAssistant.getAllSources(mDevice4)).thenReturn(ImmutableList.of(mState));
+ mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ false);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mParentFragment.getChildFragmentManager().getFragments())
+ .comparingElementsUsing(TAG_EQUALS)
+ .containsExactly(AudioSharingDisconnectDialogFragment.tag());
+ // Close opening dialogs
+ mHandler.closeOpeningDialogsForLeaDevice(mCachedDevice1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mParentFragment.getChildFragmentManager().getFragments()).isEmpty();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS,
+ SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE);
}
@Test
public void closeOpeningDialogsForNonLeaDevice_closeStopDialog() {
// Show stop dialog
setUpBroadcast(true);
- ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice2);
+ ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice1);
when(mAssistant.getDevicesMatchingConnectionStates(
new int[] {BluetoothProfile.STATE_CONNECTED}))
.thenReturn(deviceList);
@@ -377,9 +658,168 @@
mHandler.closeOpeningDialogsForNonLeaDevice(mCachedDevice2);
shadowOf(Looper.getMainLooper()).idle();
assertThat(mParentFragment.getChildFragmentManager().getFragments()).isEmpty();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS,
+ SettingsEnums.DIALOG_STOP_AUDIO_SHARING);
+ }
+
+ @Test
+ public void closeOpeningDialogsOtherThan() {
+ setUpBroadcast(true);
+ ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice3);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(deviceList);
+ when(mAssistant.getAllSources(mDevice3)).thenReturn(ImmutableList.of(mState));
+ mHandler.handleDeviceConnected(mCachedDevice2, /* userTriggered= */ true);
+ shadowOf(Looper.getMainLooper()).idle();
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
+ .comparingElementsUsing(TAG_EQUALS)
+ .containsExactly(AudioSharingStopDialogFragment.tag());
+
+ deviceList = ImmutableList.of(mDevice1, mDevice3);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(deviceList);
+ when(mAssistant.getAllSources(mDevice1)).thenReturn(ImmutableList.of());
+ mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ false);
+ shadowOf(Looper.getMainLooper()).idle();
+ childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
+ .comparingElementsUsing(TAG_EQUALS)
+ .containsExactly(AudioSharingJoinDialogFragment.tag());
+
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS,
+ SettingsEnums.DIALOG_STOP_AUDIO_SHARING);
+ }
+
+ @Test
+ public void registerCallbacks() {
+ Executor executor = mock(Executor.class);
+ mHandler.registerCallbacks(executor);
+ verify(mBroadcast)
+ .registerServiceCallBack(eq(executor), any(BluetoothLeBroadcast.Callback.class));
+ }
+
+ @Test
+ public void unregisterCallbacks() {
+ mHandler.unregisterCallbacks();
+ verify(mBroadcast).unregisterServiceCallBack(any(BluetoothLeBroadcast.Callback.class));
+ }
+
+ @Test
+ public void onBroadcastStartFailed_logAction() {
+ setUpBroadcast(false);
+ ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice1, mDevice3);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(deviceList);
+ when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of());
+ mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ false);
+ shadowOf(Looper.getMainLooper()).idle();
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
+ .comparingElementsUsing(TAG_EQUALS)
+ .containsExactly(AudioSharingJoinDialogFragment.tag());
+ AudioSharingJoinDialogFragment fragment =
+ (AudioSharingJoinDialogFragment) Iterables.getOnlyElement(childFragments);
+ AudioSharingJoinDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onShareClick();
+
+ mHandler.mBroadcastCallback.onBroadcastStartFailed(/* reason= */ 1);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_START_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
+ }
+
+ @Test
+ public void onPlaybackStarted_addSource() {
+ setUpBroadcast(false);
+ ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice1, mDevice3);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(deviceList);
+ when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of());
+ mHandler.handleDeviceConnected(mCachedDevice1, /* userTriggered= */ true);
+ shadowOf(Looper.getMainLooper()).idle();
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
+ .comparingElementsUsing(TAG_EQUALS)
+ .containsExactly(AudioSharingJoinDialogFragment.tag());
+ AudioSharingJoinDialogFragment fragment =
+ (AudioSharingJoinDialogFragment) Iterables.getOnlyElement(childFragments);
+ AudioSharingJoinDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onShareClick();
+
+ setUpBroadcast(true);
+ mHandler.mBroadcastCallback.onPlaybackStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ verify(mAssistant).addSource(mDevice1, mMetadata, /* isGroupOp= */ false);
+ verify(mAssistant).addSource(mDevice3, mMetadata, /* isGroupOp= */ false);
+ }
+
+ @Test
+ public void onBroadcastStopFailed_logAction() {
+ setUpBroadcast(true);
+ ImmutableList<BluetoothDevice> deviceList = ImmutableList.of(mDevice1);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(deviceList);
+ when(mAssistant.getAllSources(any())).thenReturn(ImmutableList.of(mState));
+ mHandler.handleDeviceConnected(mCachedDevice2, /* userTriggered= */ false);
+ shadowOf(Looper.getMainLooper()).idle();
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
+ .comparingElementsUsing(TAG_EQUALS)
+ .containsExactly(AudioSharingStopDialogFragment.tag());
+
+ AudioSharingStopDialogFragment fragment =
+ (AudioSharingStopDialogFragment) Iterables.getOnlyElement(childFragments);
+ AudioSharingStopDialogFragment.DialogEventListener listener = fragment.getListener();
+ assertThat(listener).isNotNull();
+ listener.onStopSharingClick();
+
+ mHandler.mBroadcastCallback.onBroadcastStopFailed(/* reason= */ 1);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_STOP_FAILED,
+ SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastCallbacks_doNothing() {
+ mHandler.mBroadcastCallback.onBroadcastStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ mHandler.mBroadcastCallback.onBroadcastMetadataChanged(/* reason= */ 1, mMetadata);
+ mHandler.mBroadcastCallback.onBroadcastUpdated(/* reason= */ 1, /* broadcastId= */ 1);
+ mHandler.mBroadcastCallback.onPlaybackStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ mHandler.mBroadcastCallback.onPlaybackStopped(/* reason= */ 1, /* broadcastId= */ 1);
+ mHandler.mBroadcastCallback.onBroadcastUpdateFailed(/* reason= */ 1, /* broadcastId= */ 1);
+
+ verify(mAssistant, never())
+ .addSource(
+ any(BluetoothDevice.class),
+ any(BluetoothLeBroadcastMetadata.class),
+ anyBoolean());
+ verify(mAssistant, never()).removeSource(any(BluetoothDevice.class), anyInt());
+ verifyNoMoreInteractions(mFeatureFactory.metricsFeatureProvider);
}
private void setUpBroadcast(boolean isBroadcasting) {
when(mBroadcast.isEnabled(any())).thenReturn(isBroadcasting);
+ if (isBroadcasting) {
+ when(mBroadcast.getLatestBluetoothLeBroadcastMetadata()).thenReturn(mMetadata);
+ }
}
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragmentTest.java
index 348efbe..6b984af 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDisconnectDialogFragmentTest.java
@@ -18,13 +18,21 @@
import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.robolectric.shadows.ShadowLooper.shadowMainLooper;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothStatusCodes;
+import android.content.Context;
import android.platform.test.flag.junit.SetFlagsRule;
+import android.util.Pair;
+import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AlertDialog;
@@ -33,11 +41,13 @@
import androidx.recyclerview.widget.RecyclerView;
import com.android.settings.R;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowAlertDialogCompat;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -78,30 +88,32 @@
new AudioSharingDeviceItem(TEST_DEVICE_NAME2, TEST_GROUP_ID2, /* isActive= */ false);
private static final AudioSharingDeviceItem TEST_DEVICE_ITEM3 =
new AudioSharingDeviceItem(TEST_DEVICE_NAME3, TEST_GROUP_ID3, /* isActive= */ false);
+ private static final AudioSharingDisconnectDialogFragment.DialogEventListener
+ EMPTY_EVENT_LISTENER = (AudioSharingDeviceItem item) -> {};
+ private static final Pair<Integer, Object> TEST_EVENT_DATA = Pair.create(1, 1);
+ private static final Pair<Integer, Object>[] TEST_EVENT_DATA_LIST =
+ new Pair[] {TEST_EVENT_DATA};
@Mock private BluetoothDevice mDevice1;
@Mock private BluetoothDevice mDevice3;
-
@Mock private CachedBluetoothDevice mCachedDevice1;
@Mock private CachedBluetoothDevice mCachedDevice3;
+ private FakeFeatureFactory mFeatureFactory;
private Fragment mParent;
private AudioSharingDisconnectDialogFragment mFragment;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
private ArrayList<AudioSharingDeviceItem> mDeviceItems = new ArrayList<>();
@Before
public void setUp() {
- AlertDialog latestAlertDialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- if (latestAlertDialog != null) {
- latestAlertDialog.dismiss();
- ShadowAlertDialogCompat.reset();
- }
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowAlertDialogCompat.reset();
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
when(mDevice1.getAnonymizedAddress()).thenReturn(TEST_ADDRESS1);
when(mDevice3.getAnonymizedAddress()).thenReturn(TEST_ADDRESS3);
when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
@@ -116,13 +128,25 @@
mParent, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
}
+ @After
+ public void tearDown() {
+ ShadowAlertDialogCompat.reset();
+ }
+
+ @Test
+ public void getMetricsCategory_correctValue() {
+ assertThat(mFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE);
+ }
+
@Test
public void onCreateDialog_flagOff_dialogNotExist() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mDeviceItems = new ArrayList<>();
mDeviceItems.add(TEST_DEVICE_ITEM1);
mDeviceItems.add(TEST_DEVICE_ITEM2);
- mFragment.show(mParent, mDeviceItems, mCachedDevice3, (item) -> {});
+ AudioSharingDisconnectDialogFragment.show(
+ mParent, mDeviceItems, mCachedDevice3, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
@@ -135,12 +159,15 @@
mDeviceItems = new ArrayList<>();
mDeviceItems.add(TEST_DEVICE_ITEM1);
mDeviceItems.add(TEST_DEVICE_ITEM2);
- mFragment.show(mParent, mDeviceItems, mCachedDevice3, (item) -> {});
+ AudioSharingDisconnectDialogFragment.show(
+ mParent, mDeviceItems, mCachedDevice3, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
RecyclerView view = dialog.findViewById(R.id.device_btn_list);
+ assertThat(view).isNotNull();
assertThat(view.getAdapter().getItemCount()).isEqualTo(2);
}
@@ -150,12 +177,14 @@
mDeviceItems = new ArrayList<>();
mDeviceItems.add(TEST_DEVICE_ITEM1);
mDeviceItems.add(TEST_DEVICE_ITEM2);
- mFragment.show(mParent, mDeviceItems, mCachedDevice3, (item) -> {});
+ AudioSharingDisconnectDialogFragment.show(
+ mParent, mDeviceItems, mCachedDevice3, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
- AtomicBoolean isItemBtnClicked = new AtomicBoolean(false);
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
RecyclerView view = dialog.findViewById(R.id.device_btn_list);
+ assertThat(view).isNotNull();
assertThat(view.getAdapter().getItemCount()).isEqualTo(2);
Button btn1 =
view.findViewHolderForAdapterPosition(0).itemView.findViewById(R.id.device_button);
@@ -173,37 +202,71 @@
TEST_DEVICE_NAME2));
// Update dialog content for device with same group
- mFragment.show(mParent, mDeviceItems, mCachedDevice3, (item) -> isItemBtnClicked.set(true));
+ AtomicBoolean isItemBtnClicked = new AtomicBoolean(false);
+ AudioSharingDisconnectDialogFragment.show(
+ mParent,
+ mDeviceItems,
+ mCachedDevice3,
+ (AudioSharingDeviceItem item) -> isItemBtnClicked.set(true),
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog.isShowing()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider, times(0))
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS),
+ eq(SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE));
+
btn1 = view.findViewHolderForAdapterPosition(0).itemView.findViewById(R.id.device_button);
btn1.performClick();
+ shadowMainLooper().idle();
+ assertThat(dialog.isShowing()).isFalse();
assertThat(isItemBtnClicked.get()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
- public void onCreateDialog_dialogIsShowingForNewGroup_updateDialog() {
+ public void onCreateDialog_dialogIsShowingForNewGroup_showNewDialog() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mDeviceItems = new ArrayList<>();
mDeviceItems.add(TEST_DEVICE_ITEM1);
mDeviceItems.add(TEST_DEVICE_ITEM2);
- mFragment.show(mParent, mDeviceItems, mCachedDevice3, (item) -> {});
+ AudioSharingDisconnectDialogFragment.show(
+ mParent, mDeviceItems, mCachedDevice3, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
RecyclerView view = dialog.findViewById(R.id.device_btn_list);
+ assertThat(view).isNotNull();
assertThat(view.getAdapter().getItemCount()).isEqualTo(2);
// Show new dialog for device with new group
ArrayList<AudioSharingDeviceItem> newDeviceItems = new ArrayList<>();
newDeviceItems.add(TEST_DEVICE_ITEM2);
newDeviceItems.add(TEST_DEVICE_ITEM3);
- mFragment.show(mParent, newDeviceItems, mCachedDevice1, (item) -> {});
+ AudioSharingDisconnectDialogFragment.show(
+ mParent,
+ newDeviceItems,
+ mCachedDevice1,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog.isShowing()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS),
+ eq(SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE));
+
view = dialog.findViewById(R.id.device_btn_list);
+ assertThat(view).isNotNull();
assertThat(view.getAdapter().getItemCount()).isEqualTo(2);
Button btn1 =
view.findViewHolderForAdapterPosition(0).itemView.findViewById(R.id.device_button);
@@ -227,12 +290,27 @@
mDeviceItems = new ArrayList<>();
mDeviceItems.add(TEST_DEVICE_ITEM1);
mDeviceItems.add(TEST_DEVICE_ITEM2);
- mFragment.show(mParent, mDeviceItems, mCachedDevice3, (item) -> {});
+ AudioSharingDisconnectDialogFragment.show(
+ mParent, mDeviceItems, mCachedDevice3, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
+ shadowMainLooper().idle();
+ AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
+ assertThat(dialog).isNotNull();
+ assertThat(dialog.isShowing()).isTrue();
+ View btnView = dialog.findViewById(R.id.negative_btn);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
shadowMainLooper().idle();
- AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- assertThat(dialog.isShowing()).isTrue();
- dialog.findViewById(R.id.negative_btn).performClick();
assertThat(dialog.isShowing()).isFalse();
+ verify(mFeatureFactory.metricsFeatureProvider, times(0))
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS),
+ eq(SettingsEnums.DIALOG_AUDIO_SHARING_SWITCH_DEVICE));
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragmentTest.java
index 2d55d97..13ea965 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingJoinDialogFragmentTest.java
@@ -18,13 +18,19 @@
import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.robolectric.shadows.ShadowLooper.shadowMainLooper;
import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothStatusCodes;
+import android.content.Context;
import android.platform.test.flag.junit.SetFlagsRule;
+import android.util.Pair;
+import android.view.View;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
@@ -32,6 +38,7 @@
import com.android.settings.R;
import com.android.settings.bluetooth.Utils;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowAlertDialogCompat;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
@@ -41,6 +48,7 @@
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -82,6 +90,9 @@
@Override
public void onCancelClick() {}
};
+ private static final Pair<Integer, Object> TEST_EVENT_DATA = Pair.create(1, 1);
+ private static final Pair<Integer, Object>[] TEST_EVENT_DATA_LIST =
+ new Pair[] {TEST_EVENT_DATA};
@Mock private CachedBluetoothDevice mCachedDevice1;
@Mock private CachedBluetoothDevice mCachedDevice2;
@@ -90,21 +101,19 @@
@Mock private LocalBluetoothLeBroadcast mBroadcast;
private Fragment mParent;
private AudioSharingJoinDialogFragment mFragment;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
+ private FakeFeatureFactory mFeatureFactory;
@Before
public void setUp() {
- AlertDialog latestAlertDialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- if (latestAlertDialog != null) {
- latestAlertDialog.dismiss();
- ShadowAlertDialogCompat.reset();
- }
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowAlertDialogCompat.reset();
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
when(mCachedDevice2.getName()).thenReturn(TEST_DEVICE_NAME2);
mFragment = new AudioSharingJoinDialogFragment();
@@ -117,6 +126,12 @@
mParent, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
}
+ @After
+ public void tearDown() {
+ ShadowAlertDialogCompat.reset();
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void getMetricsCategory_notInSharing_correctValue() {
when(mBroadcast.isEnabled(null)).thenReturn(false);
@@ -137,7 +152,12 @@
@Test
public void onCreateDialog_flagOff_dialogNotExist() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, new ArrayList<>(), mCachedDevice2, EMPTY_EVENT_LISTENER);
+ AudioSharingJoinDialogFragment.show(
+ mParent,
+ new ArrayList<>(),
+ mCachedDevice2,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNull();
@@ -146,7 +166,12 @@
@Test
public void onCreateDialog_flagOn_dialogShowTextForSingleDevice() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, new ArrayList<>(), mCachedDevice2, EMPTY_EVENT_LISTENER);
+ AudioSharingJoinDialogFragment.show(
+ mParent,
+ new ArrayList<>(),
+ mCachedDevice2,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
@@ -160,7 +185,8 @@
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
ArrayList<AudioSharingDeviceItem> list = new ArrayList<>();
list.add(TEST_DEVICE_ITEM1);
- mFragment.show(mParent, list, mCachedDevice2, EMPTY_EVENT_LISTENER);
+ AudioSharingJoinDialogFragment.show(
+ mParent, list, mCachedDevice2, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
@@ -179,7 +205,8 @@
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
ArrayList<AudioSharingDeviceItem> list = new ArrayList<>();
list.add(TEST_DEVICE_ITEM1);
- mFragment.show(mParent, list, mCachedDevice2, EMPTY_EVENT_LISTENER);
+ AudioSharingJoinDialogFragment.show(
+ mParent, list, mCachedDevice2, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
@@ -188,7 +215,8 @@
// Update the content
ArrayList<AudioSharingDeviceItem> list2 = new ArrayList<>();
list2.add(TEST_DEVICE_ITEM2);
- mFragment.show(mParent, list2, mCachedDevice1, EMPTY_EVENT_LISTENER);
+ AudioSharingJoinDialogFragment.show(
+ mParent, list2, mCachedDevice1, EMPTY_EVENT_LISTENER, TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
@@ -205,11 +233,25 @@
@Test
public void onCreateDialog_clickCancel_dialogDismiss() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, new ArrayList<>(), mCachedDevice2, EMPTY_EVENT_LISTENER);
+ AudioSharingJoinDialogFragment.show(
+ mParent,
+ new ArrayList<>(),
+ mCachedDevice2,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(R.id.negative_btn).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(R.id.negative_btn);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
+ shadowMainLooper().idle();
assertThat(dialog.isShowing()).isFalse();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
@@ -228,12 +270,22 @@
@Override
public void onCancelClick() {}
- });
+ },
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(R.id.positive_btn).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(R.id.positive_btn);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
+ shadowMainLooper().idle();
assertThat(dialog.isShowing()).isFalse();
assertThat(isShareBtnClicked.get()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
@@ -252,11 +304,21 @@
public void onCancelClick() {
isCancelBtnClicked.set(true);
}
- });
+ },
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(R.id.negative_btn).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(R.id.negative_btn);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
+ shadowMainLooper().idle();
assertThat(dialog.isShowing()).isFalse();
assertThat(isCancelBtnClicked.get()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceControllerTest.java
index b8bee1a..d9c883e 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingPreferenceControllerTest.java
@@ -25,12 +25,15 @@
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothLeBroadcast;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.bluetooth.BluetoothStatusCodes;
import android.content.Context;
import android.os.Looper;
@@ -53,6 +56,7 @@
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -84,48 +88,74 @@
@Mock private BluetoothEventManager mBtEventManager;
@Mock private LocalBluetoothProfileManager mLocalBtProfileManager;
@Mock private LocalBluetoothLeBroadcast mBroadcast;
+ @Mock private BluetoothLeBroadcastMetadata mMetadata;
private AudioSharingPreferenceController mController;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
- private LocalBluetoothManager mLocalBluetoothManager;
private Lifecycle mLifecycle;
private LifecycleOwner mLifecycleOwner;
- private Preference mPreference;
+ @Spy private Preference mPreference;
@Before
public void setUp() {
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
- mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
- when(mLocalBluetoothManager.getEventManager()).thenReturn(mBtEventManager);
- when(mLocalBluetoothManager.getProfileManager()).thenReturn(mLocalBtProfileManager);
+ LocalBluetoothManager localBluetoothManager = Utils.getLocalBtManager(mContext);
+ when(localBluetoothManager.getEventManager()).thenReturn(mBtEventManager);
+ when(localBluetoothManager.getProfileManager()).thenReturn(mLocalBtProfileManager);
when(mLocalBtProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
mController = new AudioSharingPreferenceController(mContext, PREF_KEY);
- mPreference = new Preference(mContext);
+ mPreference = spy(new Preference(mContext));
when(mScreen.findPreference(PREF_KEY)).thenReturn(mPreference);
}
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ ShadowThreadUtils.reset();
+ }
+
@Test
- public void onStart_registerCallback() {
+ public void onStart_flagOn_registerCallback() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStart(mLifecycleOwner);
verify(mBtEventManager).registerCallback(mController);
verify(mBroadcast).registerServiceCallBack(any(), any(BluetoothLeBroadcast.Callback.class));
}
@Test
- public void onStop_unregisterCallback() {
+ public void onStart_flagOff_skipRegisterCallback() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+ mController.onStart(mLifecycleOwner);
+ verify(mBtEventManager, never()).registerCallback(mController);
+ verify(mBroadcast, never())
+ .registerServiceCallBack(any(), any(BluetoothLeBroadcast.Callback.class));
+ }
+
+ @Test
+ public void onStop_flagOn_unregisterCallback() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStop(mLifecycleOwner);
verify(mBtEventManager).unregisterCallback(mController);
verify(mBroadcast).unregisterServiceCallBack(any(BluetoothLeBroadcast.Callback.class));
}
@Test
+ public void onStop_flagOff_skipUnregisterCallback() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+ mController.onStop(mLifecycleOwner);
+ verify(mBtEventManager, never()).unregisterCallback(mController);
+ verify(mBroadcast, never())
+ .unregisterServiceCallBack(any(BluetoothLeBroadcast.Callback.class));
+ }
+
+ @Test
public void getAvailabilityStatus_flagOn() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
@@ -166,4 +196,42 @@
assertThat(mPreference.getSummary().toString())
.isEqualTo(mContext.getString(R.string.audio_sharing_summary_off));
}
+
+ @Test
+ public void testBluetoothLeBroadcastCallbacks_refreshSummary() {
+ mController.displayPreference(mScreen);
+
+ when(mBroadcast.isEnabled(any())).thenReturn(true);
+ mController.mBroadcastCallback.onBroadcastStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.getSummary().toString())
+ .isEqualTo(mContext.getString(R.string.audio_sharing_summary_on));
+
+ when(mBroadcast.isEnabled(any())).thenReturn(false);
+ mController.mBroadcastCallback.onBroadcastStopped(/* reason= */ 1, /* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.getSummary().toString())
+ .isEqualTo(mContext.getString(R.string.audio_sharing_summary_off));
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastCallbacks_doNothing() {
+ mController.displayPreference(mScreen);
+
+ mController.mBroadcastCallback.onBroadcastMetadataChanged(/* reason= */ 1, mMetadata);
+ verify(mPreference, never()).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastUpdated(/* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference, never()).setSummary(any());
+ mController.mBroadcastCallback.onPlaybackStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference, never()).setSummary(any());
+ mController.mBroadcastCallback.onPlaybackStopped(/* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference, never()).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastStartFailed(/* reason= */ 1);
+ verify(mPreference, never()).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastStopFailed(/* reason= */ 1);
+ verify(mPreference, never()).setSummary(any());
+ mController.mBroadcastCallback.onBroadcastUpdateFailed(
+ /* reason= */ 1, /* broadcastId= */ 1);
+ verify(mPreference, never()).setSummary(any());
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingReceiverTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingReceiverTest.java
index d542b98..deed229 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingReceiverTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingReceiverTest.java
@@ -50,6 +50,7 @@
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -103,6 +104,11 @@
mFeatureFactory = FakeFeatureFactory.setupForTest();
}
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void broadcastReceiver_isRegistered() {
List<ShadowApplication.Wrapper> registeredReceivers =
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragmentTest.java
index 84d7a31..b6babfb 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingStopDialogFragmentTest.java
@@ -18,13 +18,21 @@
import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.robolectric.shadows.ShadowLooper.shadowMainLooper;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothStatusCodes;
+import android.content.Context;
import android.platform.test.flag.junit.SetFlagsRule;
+import android.util.Pair;
+import android.view.View;
import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
@@ -32,6 +40,7 @@
import androidx.fragment.app.FragmentActivity;
import com.android.settings.R;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowAlertDialogCompat;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
@@ -39,6 +48,7 @@
import com.google.common.collect.ImmutableList;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -76,28 +86,31 @@
private static final AudioSharingDeviceItem TEST_DEVICE_ITEM3 =
new AudioSharingDeviceItem(
TEST_DEVICE_NAME3, TEST_DEVICE_GROUP_ID3, /* isActive= */ false);
+ private static final AudioSharingStopDialogFragment.DialogEventListener EMPTY_EVENT_LISTENER =
+ () -> {};
+ private static final Pair<Integer, Object> TEST_EVENT_DATA = Pair.create(1, 1);
+ private static final Pair<Integer, Object>[] TEST_EVENT_DATA_LIST =
+ new Pair[] {TEST_EVENT_DATA};
@Mock private CachedBluetoothDevice mCachedDevice1;
@Mock private CachedBluetoothDevice mCachedDevice2;
@Mock private BluetoothDevice mDevice1;
@Mock private BluetoothDevice mDevice2;
+ private FakeFeatureFactory mFeatureFactory;
private Fragment mParent;
private AudioSharingStopDialogFragment mFragment;
- private ShadowBluetoothAdapter mShadowBluetoothAdapter;
@Before
public void setUp() {
- AlertDialog latestAlertDialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- if (latestAlertDialog != null) {
- latestAlertDialog.dismiss();
- ShadowAlertDialogCompat.reset();
- }
- mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
- mShadowBluetoothAdapter.setEnabled(true);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ ShadowAlertDialogCompat.reset();
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
- mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
@@ -110,10 +123,26 @@
mParent, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
}
+ @After
+ public void tearDown() {
+ ShadowAlertDialogCompat.reset();
+ }
+
+ @Test
+ public void getMetricsCategory_correctValue() {
+ assertThat(mFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_STOP_AUDIO_SHARING);
+ }
+
@Test
public void onCreateDialog_flagOff_dialogNotExist() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, ImmutableList.of(), mCachedDevice1, () -> {});
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(),
+ mCachedDevice1,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNull();
@@ -122,12 +151,18 @@
@Test
public void onCreateDialog_oneDeviceInSharing_showDialogWithCorrectMessage() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, ImmutableList.of(TEST_DEVICE_ITEM2), mCachedDevice1, () -> {});
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(TEST_DEVICE_ITEM2),
+ mCachedDevice1,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
TextView view = dialog.findViewById(R.id.description_text);
+ assertThat(view).isNotNull();
assertThat(view.getText().toString())
.isEqualTo(
mParent.getString(
@@ -137,16 +172,18 @@
@Test
public void onCreateDialog_twoDeviceInSharing_showDialogWithCorrectMessage() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(
+ AudioSharingStopDialogFragment.show(
mParent,
ImmutableList.of(TEST_DEVICE_ITEM2, TEST_DEVICE_ITEM3),
mCachedDevice1,
- () -> {});
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
TextView view = dialog.findViewById(R.id.description_text);
+ assertThat(view).isNotNull();
assertThat(view.getText().toString())
.isEqualTo(
mParent.getString(
@@ -158,57 +195,99 @@
@Test
public void onCreateDialog_dialogIsShowingForSameDevice_updateDialog() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, ImmutableList.of(), mCachedDevice1, () -> {});
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(),
+ mCachedDevice1,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
TextView view = dialog.findViewById(R.id.description_text);
+ assertThat(view).isNotNull();
assertThat(view.getText().toString())
.isEqualTo(mParent.getString(R.string.audio_sharing_stop_dialog_with_more_content));
// Update the content
AtomicBoolean isStopBtnClicked = new AtomicBoolean(false);
- mFragment.show(
- mParent, ImmutableList.of(), mCachedDevice1, () -> isStopBtnClicked.set(true));
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(),
+ mCachedDevice1,
+ () -> isStopBtnClicked.set(true),
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider, times(0))
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS),
+ eq(SettingsEnums.DIALOG_STOP_AUDIO_SHARING));
- dialog.findViewById(android.R.id.button1).performClick();
+ View btnView = dialog.findViewById(android.R.id.button1);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
shadowMainLooper().idle();
assertThat(dialog.isShowing()).isFalse();
assertThat(isStopBtnClicked.get()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
public void onCreateDialog_dialogIsShowingForNewDevice_showNewDialog() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, ImmutableList.of(), mCachedDevice1, () -> {});
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(),
+ mCachedDevice1,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
TextView view = dialog.findViewById(R.id.description_text);
+ assertThat(view).isNotNull();
assertThat(view.getText().toString())
.isEqualTo(mParent.getString(R.string.audio_sharing_stop_dialog_with_more_content));
TextView title = dialog.findViewById(R.id.title_text);
+ assertThat(title).isNotNull();
assertThat(title.getText().toString())
.isEqualTo(
mParent.getString(
R.string.audio_sharing_stop_dialog_title, TEST_DEVICE_NAME1));
// Show new dialog
- mFragment.show(mParent, ImmutableList.of(), mCachedDevice2, () -> {});
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(),
+ mCachedDevice2,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
assertThat(dialog.isShowing()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS),
+ eq(SettingsEnums.DIALOG_STOP_AUDIO_SHARING));
+
view = dialog.findViewById(R.id.description_text);
+ assertThat(view).isNotNull();
assertThat(view.getText().toString())
.isEqualTo(mParent.getString(R.string.audio_sharing_stop_dialog_with_more_content));
title = dialog.findViewById(R.id.title_text);
+ assertThat(title).isNotNull();
assertThat(title.getText().toString())
.isEqualTo(
mParent.getString(
@@ -218,25 +297,60 @@
@Test
public void onCreateDialog_clickCancel_dialogDismiss() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
- mFragment.show(mParent, ImmutableList.of(), mCachedDevice1, () -> {});
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(),
+ mCachedDevice1,
+ EMPTY_EVENT_LISTENER,
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(android.R.id.button2).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(android.R.id.button2);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
shadowMainLooper().idle();
assertThat(dialog.isShowing()).isFalse();
+ verify(mFeatureFactory.metricsFeatureProvider, times(0))
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS),
+ eq(SettingsEnums.DIALOG_STOP_AUDIO_SHARING));
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_NEGATIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
@Test
public void onCreateDialog_clickShare_callbackTriggered() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
AtomicBoolean isStopBtnClicked = new AtomicBoolean(false);
- mFragment.show(
- mParent, ImmutableList.of(), mCachedDevice1, () -> isStopBtnClicked.set(true));
+ AudioSharingStopDialogFragment.show(
+ mParent,
+ ImmutableList.of(),
+ mCachedDevice1,
+ () -> isStopBtnClicked.set(true),
+ TEST_EVENT_DATA_LIST);
shadowMainLooper().idle();
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
- dialog.findViewById(android.R.id.button1).performClick();
+ assertThat(dialog).isNotNull();
+ View btnView = dialog.findViewById(android.R.id.button1);
+ assertThat(btnView).isNotNull();
+ btnView.performClick();
shadowMainLooper().idle();
assertThat(dialog.isShowing()).isFalse();
assertThat(isStopBtnClicked.get()).isTrue();
+ verify(mFeatureFactory.metricsFeatureProvider, times(0))
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_AUTO_DISMISS),
+ eq(SettingsEnums.DIALOG_STOP_AUDIO_SHARING));
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ any(Context.class),
+ eq(SettingsEnums.ACTION_AUDIO_SHARING_DIALOG_POSITIVE_BTN_CLICKED),
+ eq(TEST_EVENT_DATA));
}
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarControllerTest.java
index 0ead2d5..d68b68b 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarControllerTest.java
@@ -22,18 +22,25 @@
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
+import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothLeBroadcast;
import android.bluetooth.BluetoothLeBroadcastAssistant;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
+import android.bluetooth.BluetoothLeBroadcastReceiveState;
import android.bluetooth.BluetoothProfile;
import android.bluetooth.BluetoothStatusCodes;
import android.content.BroadcastReceiver;
@@ -43,12 +50,17 @@
import android.os.Looper;
import android.platform.test.flag.junit.SetFlagsRule;
import android.util.FeatureFlagUtils;
+import android.util.Pair;
import android.widget.CompoundButton;
+import androidx.fragment.app.DialogFragment;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
import androidx.lifecycle.LifecycleOwner;
import androidx.test.core.app.ApplicationProvider;
import com.android.settings.bluetooth.Utils;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
import com.android.settings.testutils.shadow.ShadowThreadUtils;
@@ -65,7 +77,10 @@
import com.android.settingslib.flags.Flags;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.Iterables;
+import com.google.common.truth.Correspondence;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -77,7 +92,9 @@
import org.robolectric.RobolectricTestRunner;
import org.robolectric.annotation.Config;
import org.robolectric.shadow.api.Shadow;
+import org.robolectric.shadows.androidx.fragment.FragmentController;
+import java.util.List;
import java.util.concurrent.Executor;
@RunWith(RobolectricTestRunner.class)
@@ -88,6 +105,18 @@
ShadowThreadUtils.class,
})
public class AudioSharingSwitchBarControllerTest {
+ private static final String TEST_DEVICE_NAME1 = "test1";
+ private static final String TEST_DEVICE_NAME2 = "test2";
+ private static final int TEST_DEVICE_GROUP_ID1 = 1;
+ private static final int TEST_DEVICE_GROUP_ID2 = 2;
+ private static final Correspondence<Fragment, String> TAG_EQUALS =
+ Correspondence.from(
+ (Fragment fragment, String tag) ->
+ fragment instanceof DialogFragment
+ && ((DialogFragment) fragment).getTag() != null
+ && ((DialogFragment) fragment).getTag().equals(tag),
+ "is equal to");
+
@Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
@Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
@@ -99,17 +128,19 @@
@Mock private LocalBluetoothLeBroadcastAssistant mAssistant;
@Mock private VolumeControlProfile mVolumeControl;
@Mock private CompoundButton mBtnView;
- @Mock private CachedBluetoothDevice mCachedDevice;
- @Mock private BluetoothDevice mDevice;
+ @Mock private CachedBluetoothDevice mCachedDevice1;
+ @Mock private CachedBluetoothDevice mCachedDevice2;
+ @Mock private BluetoothDevice mDevice1;
+ @Mock private BluetoothDevice mDevice2;
private SettingsMainSwitchBar mSwitchBar;
private AudioSharingSwitchBarController mController;
- private AudioSharingSwitchBarController.OnAudioSharingStateChangedListener mListener;
+ private FakeFeatureFactory mFeatureFactory;
private Lifecycle mLifecycle;
private LifecycleOwner mLifecycleOwner;
private boolean mOnAudioSharingStateChanged;
private boolean mOnAudioSharingServiceConnected;
private ShadowBluetoothAdapter mShadowBluetoothAdapter;
- private LocalBluetoothManager mLocalBluetoothManager;
+ private Fragment mParentFragment;
@Before
public void setUp() {
@@ -122,13 +153,20 @@
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
- mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
- when(mLocalBluetoothManager.getProfileManager()).thenReturn(mBtProfileManager);
- when(mLocalBluetoothManager.getCachedDeviceManager()).thenReturn(mDeviceManager);
- when(mDeviceManager.findDevice(mDevice)).thenReturn(mCachedDevice);
- when(mCachedDevice.getDevice()).thenReturn(mDevice);
- when(mCachedDevice.getGroupId()).thenReturn(1);
- when(mCachedDevice.getName()).thenReturn("test");
+ LocalBluetoothManager localBluetoothManager = Utils.getLocalBtManager(mContext);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
+ when(localBluetoothManager.getProfileManager()).thenReturn(mBtProfileManager);
+ when(localBluetoothManager.getCachedDeviceManager()).thenReturn(mDeviceManager);
+ when(mDeviceManager.findDevice(mDevice1)).thenReturn(mCachedDevice1);
+ when(mCachedDevice1.getDevice()).thenReturn(mDevice1);
+ when(mCachedDevice1.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID1);
+ when(mCachedDevice1.getName()).thenReturn(TEST_DEVICE_NAME1);
+ when(mCachedDevice1.isActiveDevice(BluetoothProfile.LE_AUDIO)).thenReturn(false);
+ when(mDeviceManager.findDevice(mDevice2)).thenReturn(mCachedDevice2);
+ when(mCachedDevice2.getDevice()).thenReturn(mDevice2);
+ when(mCachedDevice2.getGroupId()).thenReturn(TEST_DEVICE_GROUP_ID2);
+ when(mCachedDevice2.getName()).thenReturn(TEST_DEVICE_NAME2);
+ when(mCachedDevice2.isActiveDevice(BluetoothProfile.LE_AUDIO)).thenReturn(true);
when(mBtProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
when(mBtProfileManager.getLeAudioBroadcastAssistantProfile()).thenReturn(mAssistant);
when(mBtProfileManager.getVolumeControlProfile()).thenReturn(mVolumeControl);
@@ -149,11 +187,11 @@
doNothing()
.when(mAssistant)
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
- mSwitchBar = new SettingsMainSwitchBar(mContext);
+ mSwitchBar = spy(new SettingsMainSwitchBar(mContext));
mSwitchBar.setDisabledByAdmin(mock(RestrictedLockUtils.EnforcedAdmin.class));
mOnAudioSharingStateChanged = false;
mOnAudioSharingServiceConnected = false;
- mListener =
+ AudioSharingSwitchBarController.OnAudioSharingStateChangedListener listener =
new AudioSharingSwitchBarController.OnAudioSharingStateChangedListener() {
@Override
public void onAudioSharingStateChanged() {
@@ -165,7 +203,20 @@
mOnAudioSharingServiceConnected = true;
}
};
- mController = new AudioSharingSwitchBarController(mContext, mSwitchBar, mListener);
+ mController = new AudioSharingSwitchBarController(mContext, mSwitchBar, listener);
+ mParentFragment = new Fragment();
+ FragmentController.setupFragment(
+ mParentFragment,
+ FragmentActivity.class,
+ 0 /* containerViewId */,
+ null /* bundle */);
+ mController.init(mParentFragment);
+ }
+
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ ShadowThreadUtils.reset();
}
@Test
@@ -219,15 +270,15 @@
public void onStart_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStart(mLifecycleOwner);
- verify(mContext, times(0))
+ verify(mContext, never())
.registerReceiver(any(BroadcastReceiver.class), any(IntentFilter.class), anyInt());
- verify(mBroadcast, times(0))
+ verify(mBroadcast, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcast.Callback.class));
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mBtProfileManager, times(0)).addServiceListener(mController);
+ verify(mBtProfileManager, never()).addServiceListener(mController);
}
@Test
@@ -240,10 +291,10 @@
verify(mContext)
.registerReceiver(any(BroadcastReceiver.class), any(IntentFilter.class), anyInt());
- verify(mBroadcast, times(0))
+ verify(mBroadcast, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcast.Callback.class));
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcastAssistant.Callback.class));
verify(mBtProfileManager).addServiceListener(mController);
@@ -266,7 +317,7 @@
verify(mAssistant)
.registerServiceCallBack(
any(Executor.class), any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mBtProfileManager, times(0)).addServiceListener(mController);
+ verify(mBtProfileManager, never()).addServiceListener(mController);
assertThat(mSwitchBar.isChecked()).isTrue();
assertThat(mSwitchBar.isEnabled()).isTrue();
}
@@ -275,12 +326,12 @@
public void onStop_flagOff_doNothing() {
mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
mController.onStop(mLifecycleOwner);
- verify(mContext, times(0)).unregisterReceiver(any(BroadcastReceiver.class));
- verify(mBroadcast, times(0))
+ verify(mContext, never()).unregisterReceiver(any(BroadcastReceiver.class));
+ verify(mBroadcast, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcast.Callback.class));
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
- verify(mBtProfileManager, times(0)).removeServiceListener(mController);
+ verify(mBtProfileManager, never()).removeServiceListener(mController);
}
@Test
@@ -292,9 +343,9 @@
verify(mContext).unregisterReceiver(any(BroadcastReceiver.class));
verify(mBtProfileManager).removeServiceListener(mController);
- verify(mBroadcast, times(0))
+ verify(mBroadcast, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcast.Callback.class));
- verify(mAssistant, times(0))
+ verify(mAssistant, never())
.unregisterServiceCallBack(any(BluetoothLeBroadcastAssistant.Callback.class));
}
@@ -319,7 +370,7 @@
when(mBtnView.isEnabled()).thenReturn(true);
when(mBroadcast.isEnabled(null)).thenReturn(true);
mController.onCheckedChanged(mBtnView, /* isChecked= */ true);
- verify(mBroadcast, times(0)).startPrivateBroadcast();
+ verify(mBroadcast, never()).startPrivateBroadcast();
}
@Test
@@ -333,7 +384,7 @@
doNothing().when(mBroadcast).startPrivateBroadcast();
mController.onCheckedChanged(mBtnView, /* isChecked= */ true);
assertThat(mSwitchBar.isChecked()).isFalse();
- verify(mBroadcast, times(0)).startPrivateBroadcast();
+ verify(mBroadcast, never()).startPrivateBroadcast();
}
@Test
@@ -356,7 +407,7 @@
when(mBtnView.isEnabled()).thenReturn(true);
when(mAssistant.getDevicesMatchingConnectionStates(
new int[] {BluetoothProfile.STATE_CONNECTED}))
- .thenReturn(ImmutableList.of(mDevice));
+ .thenReturn(ImmutableList.of(mDevice1));
doNothing().when(mBroadcast).startPrivateBroadcast();
mController.onCheckedChanged(mBtnView, /* isChecked= */ true);
verify(mBroadcast).startPrivateBroadcast();
@@ -368,7 +419,7 @@
when(mBroadcast.isEnabled(null)).thenReturn(false);
when(mBroadcast.getLatestBroadcastId()).thenReturn(1);
mController.onCheckedChanged(mBtnView, /* isChecked= */ false);
- verify(mBroadcast, times(0)).stopBroadcast(anyInt());
+ verify(mBroadcast, never()).stopBroadcast(anyInt());
}
@Test
@@ -380,4 +431,173 @@
mController.onCheckedChanged(mBtnView, /* isChecked= */ false);
verify(mBroadcast).stopBroadcast(1);
}
+
+ @Test
+ public void onPlaybackStarted_notInit_noDialog() {
+ FeatureFlagUtils.setEnabled(
+ mContext, FeatureFlagUtils.SETTINGS_NEED_CONNECTED_BLE_DEVICE_FOR_BROADCAST, true);
+ when(mBtnView.isEnabled()).thenReturn(true);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(ImmutableList.of(mDevice2, mDevice1));
+ doNothing().when(mBroadcast).startPrivateBroadcast();
+ mController =
+ new AudioSharingSwitchBarController(
+ mContext,
+ mSwitchBar,
+ new AudioSharingSwitchBarController.OnAudioSharingStateChangedListener() {
+ @Override
+ public void onAudioSharingStateChanged() {}
+
+ @Override
+ public void onAudioSharingProfilesConnected() {}
+ });
+ mController.onCheckedChanged(mBtnView, /* isChecked= */ true);
+ verify(mBroadcast).startPrivateBroadcast();
+ mController.mBroadcastCallback.onPlaybackStarted(0, 0);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(any(Context.class), eq(SettingsEnums.ACTION_AUTO_JOIN_AUDIO_SHARING));
+
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments).isEmpty();
+ }
+
+ @Test
+ public void onPlaybackStarted_showJoinAudioSharingDialog() {
+ FeatureFlagUtils.setEnabled(
+ mContext, FeatureFlagUtils.SETTINGS_NEED_CONNECTED_BLE_DEVICE_FOR_BROADCAST, true);
+ when(mBtnView.isEnabled()).thenReturn(true);
+ when(mAssistant.getDevicesMatchingConnectionStates(
+ new int[] {BluetoothProfile.STATE_CONNECTED}))
+ .thenReturn(ImmutableList.of(mDevice2, mDevice1));
+ doNothing().when(mBroadcast).startPrivateBroadcast();
+ mController.onCheckedChanged(mBtnView, /* isChecked= */ true);
+ verify(mBroadcast).startPrivateBroadcast();
+ mController.mBroadcastCallback.onPlaybackStarted(0, 0);
+ shadowOf(Looper.getMainLooper()).idle();
+
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(any(Context.class), eq(SettingsEnums.ACTION_AUTO_JOIN_AUDIO_SHARING));
+
+ List<Fragment> childFragments = mParentFragment.getChildFragmentManager().getFragments();
+ assertThat(childFragments)
+ .comparingElementsUsing(TAG_EQUALS)
+ .containsExactly(AudioSharingDialogFragment.tag());
+
+ AudioSharingDialogFragment fragment =
+ (AudioSharingDialogFragment) Iterables.getOnlyElement(childFragments);
+ Pair<Integer, Object>[] eventData = fragment.getEventData();
+ assertThat(eventData)
+ .asList()
+ .containsExactly(
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_SOURCE_PAGE_ID.ordinal(),
+ SettingsEnums.AUDIO_SHARING_SETTINGS),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_PAGE_ID.ordinal(),
+ SettingsEnums.DIALOG_AUDIO_SHARING_ADD_DEVICE),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_USER_TRIGGERED.ordinal(), 0),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_DEVICE_COUNT_IN_SHARING
+ .ordinal(),
+ 1),
+ Pair.create(
+ AudioSharingUtils.MetricKey.METRIC_KEY_CANDIDATE_DEVICE_COUNT
+ .ordinal(),
+ 1));
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastCallbacks_updateSwitch() {
+ mOnAudioSharingStateChanged = false;
+ mSwitchBar.setChecked(false);
+ when(mBroadcast.isEnabled(any())).thenReturn(false);
+ mController.mBroadcastCallback.onBroadcastStartFailed(/* reason= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mSwitchBar.isChecked()).isFalse();
+ assertThat(mOnAudioSharingStateChanged).isFalse();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_START_FAILED,
+ SettingsEnums.AUDIO_SHARING_SETTINGS);
+
+ when(mBroadcast.isEnabled(any())).thenReturn(true);
+ mController.mBroadcastCallback.onBroadcastStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mSwitchBar.isChecked()).isTrue();
+ assertThat(mOnAudioSharingStateChanged).isTrue();
+
+ mOnAudioSharingStateChanged = false;
+ mController.mBroadcastCallback.onBroadcastStopFailed(/* reason= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mSwitchBar.isChecked()).isTrue();
+ assertThat(mOnAudioSharingStateChanged).isFalse();
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_STOP_FAILED,
+ SettingsEnums.AUDIO_SHARING_SETTINGS);
+
+ when(mBroadcast.isEnabled(any())).thenReturn(false);
+ mController.mBroadcastCallback.onBroadcastStopped(/* reason= */ 1, /* broadcastId= */ 1);
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mSwitchBar.isChecked()).isFalse();
+ assertThat(mOnAudioSharingStateChanged).isTrue();
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastCallbacks_doNothing() {
+ BluetoothLeBroadcastMetadata metadata = mock(BluetoothLeBroadcastMetadata.class);
+ mController.mBroadcastCallback.onBroadcastMetadataChanged(/* reason= */ 1, metadata);
+ mController.mBroadcastCallback.onBroadcastUpdated(/* reason= */ 1, /* broadcastId= */ 1);
+ mController.mBroadcastCallback.onPlaybackStarted(/* reason= */ 1, /* broadcastId= */ 1);
+ mController.mBroadcastCallback.onPlaybackStopped(/* reason= */ 1, /* broadcastId= */ 1);
+ mController.mBroadcastCallback.onBroadcastUpdateFailed(
+ /* reason= */ 1, /* broadcastId= */ 1);
+ verify(mSwitchBar, never()).setChecked(anyBoolean());
+ assertThat(mOnAudioSharingStateChanged).isFalse();
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_logAction() {
+ BluetoothLeBroadcastMetadata metadata = mock(BluetoothLeBroadcastMetadata.class);
+ mController.mBroadcastAssistantCallback.onSourceAddFailed(
+ mDevice1, metadata, /* reason= */ 1);
+ verify(mFeatureFactory.metricsFeatureProvider)
+ .action(
+ mContext,
+ SettingsEnums.ACTION_AUDIO_SHARING_JOIN_FAILED,
+ SettingsEnums.AUDIO_SHARING_SETTINGS);
+ }
+
+ @Test
+ public void testBluetoothLeBroadcastAssistantCallbacks_doNothing() {
+ BluetoothLeBroadcastReceiveState state = mock(BluetoothLeBroadcastReceiveState.class);
+ BluetoothLeBroadcastMetadata metadata = mock(BluetoothLeBroadcastMetadata.class);
+
+ // Do nothing
+ mController.mBroadcastAssistantCallback.onReceiveStateChanged(
+ mDevice1, /* sourceId= */ 1, state);
+ mController.mBroadcastAssistantCallback.onSearchStarted(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStartFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopped(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSearchStopFailed(/* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceAdded(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceRemoved(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceRemoveFailed(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModified(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceModifyFailed(
+ mDevice1, /* sourceId= */ 1, /* reason= */ 1);
+ mController.mBroadcastAssistantCallback.onSourceFound(metadata);
+ mController.mBroadcastAssistantCallback.onSourceLost(/* broadcastId= */ 1);
+ verifyNoMoreInteractions(mFeatureFactory.metricsFeatureProvider);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/StreamSettingsCategoryControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/StreamSettingsCategoryControllerTest.java
index 50dde0f..ee92b3b 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/StreamSettingsCategoryControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/StreamSettingsCategoryControllerTest.java
@@ -54,6 +54,7 @@
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.flags.Flags;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -117,6 +118,11 @@
when(mScreen.findPreference(KEY)).thenReturn(mPreference);
}
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ }
+
@Test
public void bluetoothOff_updateVisibility() {
mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseStateTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseStateTest.java
index 00357b4..6e5342b 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseStateTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AddSourceWaitForResponseStateTest.java
@@ -92,6 +92,8 @@
@Test
public void testPerformAction_metadataIsNotNull_addSource() {
when(mMockPreference.getAudioStreamMetadata()).thenReturn(mMockMetadata);
+ when(mMockPreference.getSourceOriginForLogging())
+ .thenReturn(SourceOriginForLogging.UNKNOWN);
mInstance.performAction(mMockPreference, mMockController, mMockHelper);
@@ -105,6 +107,8 @@
when(mMockPreference.isShown()).thenReturn(true);
when(mMockPreference.getAudioStreamState()).thenReturn(mInstance.getStateEnum());
when(mMockPreference.getAudioStreamBroadcastId()).thenReturn(BROADCAST_ID);
+ when(mMockPreference.getSourceOriginForLogging())
+ .thenReturn(SourceOriginForLogging.UNKNOWN);
mInstance.performAction(mMockPreference, mMockController, mMockHelper);
ShadowLooper.idleMainLooper(ADD_SOURCE_WAIT_FOR_RESPONSE_TIMEOUT_MILLIS, TimeUnit.SECONDS);
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialogTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialogTest.java
new file mode 100644
index 0000000..c7aafe8
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamConfirmDialogTest.java
@@ -0,0 +1,327 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsDashboardFragment.KEY_BROADCAST_METADATA;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.when;
+import static org.robolectric.shadows.ShadowLooper.shadowMainLooper;
+
+import android.app.settings.SettingsEnums;
+import android.bluetooth.BluetoothAdapter;
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothStatusCodes;
+import android.content.Context;
+import android.content.Intent;
+import android.platform.test.flag.junit.SetFlagsRule;
+import android.view.View;
+import android.widget.Button;
+import android.widget.TextView;
+
+import androidx.fragment.app.FragmentActivity;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
+import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
+import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+import com.android.settingslib.bluetooth.VolumeControlProfile;
+import com.android.settingslib.flags.Flags;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadow.api.Shadow;
+import org.robolectric.shadows.androidx.fragment.FragmentController;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(
+ shadows = {
+ ShadowBluetoothAdapter.class,
+ ShadowBluetoothUtils.class,
+ })
+public class AudioStreamConfirmDialogTest {
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+ private static final String VALID_METADATA =
+ "BLUETOOTH:UUID:184F;BN:VGVzdA==;AT:1;AD:00A1A1A1A1A1;BI:1E240;BC:VGVzdENvZGU=;"
+ + "MD:BgNwVGVzdA==;AS:1;PI:A0;NS:1;BS:3;NB:2;SM:BQNUZXN0BARlbmc=;;";
+ private static final String DEVICE_NAME = "device_name";
+ private final Context mContext = ApplicationProvider.getApplicationContext();
+ @Mock private LocalBluetoothManager mLocalBluetoothManager;
+ @Mock private LocalBluetoothProfileManager mLocalBluetoothProfileManager;
+ @Mock private LocalBluetoothLeBroadcast mBroadcast;
+ @Mock private LocalBluetoothLeBroadcastAssistant mAssistant;
+ @Mock private VolumeControlProfile mVolumeControl;
+ @Mock private BluetoothDevice mBluetoothDevice;
+ private AudioStreamConfirmDialog mDialogFragment;
+
+ @Before
+ public void setUp() {
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+
+ ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBluetoothManager;
+ when(mLocalBluetoothManager.getProfileManager()).thenReturn(mLocalBluetoothProfileManager);
+ when(mLocalBluetoothProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
+ when(mLocalBluetoothProfileManager.getLeAudioBroadcastAssistantProfile())
+ .thenReturn(mAssistant);
+ when(mLocalBluetoothProfileManager.getVolumeControlProfile()).thenReturn(mVolumeControl);
+ when(mBroadcast.isProfileReady()).thenReturn(true);
+ when(mAssistant.isProfileReady()).thenReturn(true);
+ when(mVolumeControl.isProfileReady()).thenReturn(true);
+
+ mDialogFragment = new AudioStreamConfirmDialog();
+ }
+
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ mDialogFragment.dismiss();
+ }
+
+ @Test
+ public void showDialog_unsupported() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+ FragmentController.setupFragment(
+ mDialogFragment,
+ FragmentActivity.class,
+ /* containerViewId= */ 0,
+ /* bundle= */ null);
+ shadowMainLooper().idle();
+
+ assertThat(mDialogFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_FEATURE_UNSUPPORTED);
+
+ var dialog = mDialogFragment.getDialog();
+ assertThat(dialog).isNotNull();
+ assertThat(dialog.isShowing()).isTrue();
+ TextView title = dialog.findViewById(R.id.dialog_title);
+ assertThat(title).isNotNull();
+ assertThat(title.getText())
+ .isEqualTo(mContext.getString(R.string.audio_streams_dialog_cannot_listen));
+ TextView subtitle1 = dialog.findViewById(R.id.dialog_subtitle);
+ assertThat(subtitle1).isNotNull();
+ assertThat(subtitle1.getVisibility()).isEqualTo(View.GONE);
+ TextView subtitle2 = dialog.findViewById(R.id.dialog_subtitle_2);
+ assertThat(subtitle2).isNotNull();
+ assertThat(subtitle2.getText())
+ .isEqualTo(
+ mContext.getString(
+ R.string.audio_streams_dialog_unsupported_device_subtitle));
+ View leftButton = dialog.findViewById(R.id.left_button);
+ assertThat(leftButton).isNotNull();
+ assertThat(leftButton.getVisibility()).isEqualTo(View.GONE);
+ assertThat(leftButton.hasOnClickListeners()).isFalse();
+ View rightButton = dialog.findViewById(R.id.right_button);
+ assertThat(rightButton).isNotNull();
+ assertThat(rightButton.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(rightButton.hasOnClickListeners()).isTrue();
+ }
+
+ @Test
+ public void showDialog_noLeDevice() {
+ FragmentController.setupFragment(
+ mDialogFragment,
+ FragmentActivity.class,
+ /* containerViewId= */ 0,
+ /* bundle= */ null);
+ shadowMainLooper().idle();
+
+ assertThat(mDialogFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_NO_LE_DEVICE);
+
+ var dialog = mDialogFragment.getDialog();
+ assertThat(dialog).isNotNull();
+ assertThat(dialog.isShowing()).isTrue();
+
+ TextView title = dialog.findViewById(R.id.dialog_title);
+ assertThat(title).isNotNull();
+ assertThat(title.getText())
+ .isEqualTo(mContext.getString(R.string.audio_streams_dialog_no_le_device_title));
+ TextView subtitle1 = dialog.findViewById(R.id.dialog_subtitle);
+ assertThat(subtitle1).isNotNull();
+ assertThat(subtitle1.getVisibility()).isEqualTo(View.GONE);
+ TextView subtitle2 = dialog.findViewById(R.id.dialog_subtitle_2);
+ assertThat(subtitle2).isNotNull();
+ assertThat(subtitle2.getText())
+ .isEqualTo(mContext.getString(R.string.audio_streams_dialog_no_le_device_subtitle));
+ View leftButton = dialog.findViewById(R.id.left_button);
+ assertThat(leftButton).isNotNull();
+ assertThat(leftButton.getVisibility()).isEqualTo(View.VISIBLE);
+ Button rightButton = dialog.findViewById(R.id.right_button);
+ assertThat(rightButton).isNotNull();
+ assertThat(rightButton.getText())
+ .isEqualTo(mContext.getString(R.string.audio_streams_dialog_no_le_device_button));
+ assertThat(rightButton.hasOnClickListeners()).isTrue();
+ }
+
+ @Test
+ public void showDialog_noMetadata() {
+ List<BluetoothDevice> devices = new ArrayList<>();
+ devices.add(mBluetoothDevice);
+ when(mAssistant.getDevicesMatchingConnectionStates(any())).thenReturn(devices);
+ when(mBluetoothDevice.getAlias()).thenReturn(DEVICE_NAME);
+
+ FragmentController.setupFragment(
+ mDialogFragment,
+ FragmentActivity.class,
+ /* containerViewId= */ 0,
+ /* bundle= */ null);
+ shadowMainLooper().idle();
+
+ assertThat(mDialogFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_DATA_ERROR);
+
+ var dialog = mDialogFragment.getDialog();
+ assertThat(dialog).isNotNull();
+ assertThat(dialog.isShowing()).isTrue();
+ TextView title = dialog.findViewById(R.id.dialog_title);
+ assertThat(title).isNotNull();
+ assertThat(title.getText())
+ .isEqualTo(mContext.getString(R.string.audio_streams_dialog_cannot_listen));
+ TextView subtitle1 = dialog.findViewById(R.id.dialog_subtitle);
+ assertThat(subtitle1).isNotNull();
+ assertThat(subtitle1.getVisibility()).isEqualTo(View.GONE);
+ TextView subtitle2 = dialog.findViewById(R.id.dialog_subtitle_2);
+ assertThat(subtitle2).isNotNull();
+ assertThat(subtitle2.getText())
+ .isEqualTo(
+ mContext.getString(R.string.audio_streams_dialog_cannot_play, DEVICE_NAME));
+ View leftButton = dialog.findViewById(R.id.left_button);
+ assertThat(leftButton).isNotNull();
+ assertThat(leftButton.getVisibility()).isEqualTo(View.GONE);
+ assertThat(leftButton.hasOnClickListeners()).isFalse();
+ View rightButton = dialog.findViewById(R.id.right_button);
+ assertThat(rightButton).isNotNull();
+ assertThat(rightButton.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(rightButton.hasOnClickListeners()).isTrue();
+ }
+
+ @Test
+ public void showDialog_invalidMetadata() {
+ List<BluetoothDevice> devices = new ArrayList<>();
+ devices.add(mBluetoothDevice);
+ when(mAssistant.getDevicesMatchingConnectionStates(any())).thenReturn(devices);
+ when(mBluetoothDevice.getAlias()).thenReturn(DEVICE_NAME);
+
+ Intent intent = new Intent();
+ intent.putExtra(KEY_BROADCAST_METADATA, "invalid");
+ FragmentController.of(mDialogFragment, intent)
+ .create(/* containerViewId= */ 0, /* bundle= */ null)
+ .start()
+ .resume()
+ .visible()
+ .get();
+ shadowMainLooper().idle();
+
+ assertThat(mDialogFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_DATA_ERROR);
+
+ var dialog = mDialogFragment.getDialog();
+ assertThat(dialog).isNotNull();
+ assertThat(dialog.isShowing()).isTrue();
+ TextView title = dialog.findViewById(R.id.dialog_title);
+ assertThat(title).isNotNull();
+ assertThat(title.getText())
+ .isEqualTo(mContext.getString(R.string.audio_streams_dialog_cannot_listen));
+ TextView subtitle1 = dialog.findViewById(R.id.dialog_subtitle);
+ assertThat(subtitle1).isNotNull();
+ assertThat(subtitle1.getVisibility()).isEqualTo(View.GONE);
+ TextView subtitle2 = dialog.findViewById(R.id.dialog_subtitle_2);
+ assertThat(subtitle2).isNotNull();
+ assertThat(subtitle2.getText())
+ .isEqualTo(
+ mContext.getString(R.string.audio_streams_dialog_cannot_play, DEVICE_NAME));
+ View leftButton = dialog.findViewById(R.id.left_button);
+ assertThat(leftButton).isNotNull();
+ assertThat(leftButton.getVisibility()).isEqualTo(View.GONE);
+ assertThat(leftButton.hasOnClickListeners()).isFalse();
+ View rightButton = dialog.findViewById(R.id.right_button);
+ assertThat(rightButton).isNotNull();
+ assertThat(rightButton.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(rightButton.hasOnClickListeners()).isTrue();
+ }
+
+ @Test
+ public void showDialog_confirmListen() {
+ List<BluetoothDevice> devices = new ArrayList<>();
+ devices.add(mBluetoothDevice);
+ when(mAssistant.getDevicesMatchingConnectionStates(any())).thenReturn(devices);
+ when(mBluetoothDevice.getAlias()).thenReturn(DEVICE_NAME);
+
+ Intent intent = new Intent();
+ intent.putExtra(KEY_BROADCAST_METADATA, VALID_METADATA);
+ FragmentController.of(mDialogFragment, intent)
+ .create(/* containerViewId= */ 0, /* bundle= */ null)
+ .start()
+ .resume()
+ .visible()
+ .get();
+ shadowMainLooper().idle();
+
+ assertThat(mDialogFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.DIALOG_AUDIO_STREAM_CONFIRM_LISTEN);
+
+ var dialog = mDialogFragment.getDialog();
+ assertThat(dialog).isNotNull();
+ assertThat(dialog.isShowing()).isTrue();
+ TextView title = dialog.findViewById(R.id.dialog_title);
+ assertThat(title).isNotNull();
+ assertThat(title.getText())
+ .isEqualTo(
+ mContext.getString(R.string.audio_streams_dialog_listen_to_audio_stream));
+ TextView subtitle1 = dialog.findViewById(R.id.dialog_subtitle);
+ assertThat(subtitle1).isNotNull();
+ assertThat(subtitle1.getVisibility()).isEqualTo(View.VISIBLE);
+ TextView subtitle2 = dialog.findViewById(R.id.dialog_subtitle_2);
+ assertThat(subtitle2).isNotNull();
+ assertThat(subtitle2.getText())
+ .isEqualTo(
+ mContext.getString(
+ R.string.audio_streams_dialog_control_volume, DEVICE_NAME));
+ View leftButton = dialog.findViewById(R.id.left_button);
+ assertThat(leftButton).isNotNull();
+ assertThat(leftButton.getVisibility()).isEqualTo(View.VISIBLE);
+ Button rightButton = dialog.findViewById(R.id.right_button);
+ assertThat(rightButton).isNotNull();
+ assertThat(rightButton.getText())
+ .isEqualTo(mContext.getString(R.string.audio_streams_dialog_listen));
+ assertThat(rightButton.hasOnClickListeners()).isTrue();
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamMediaServiceTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamMediaServiceTest.java
new file mode 100644
index 0000000..b184d88
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamMediaServiceTest.java
@@ -0,0 +1,233 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamMediaService.BROADCAST_ID;
+import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamMediaService.DEVICES;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.bluetooth.BluetoothAdapter;
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothStatusCodes;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.content.res.Resources;
+import android.media.session.ISession;
+import android.media.session.ISessionController;
+import android.media.session.MediaSessionManager;
+import android.os.RemoteException;
+import android.platform.test.flag.junit.SetFlagsRule;
+import android.util.DisplayMetrics;
+
+import com.android.settings.connecteddevice.audiosharing.audiostreams.testshadows.ShadowAudioStreamsHelper;
+import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
+import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
+import com.android.settingslib.bluetooth.BluetoothEventManager;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
+import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+import com.android.settingslib.bluetooth.VolumeControlProfile;
+import com.android.settingslib.flags.Flags;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadow.api.Shadow;
+import org.robolectric.util.ReflectionHelpers;
+
+import java.util.ArrayList;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(
+ shadows = {
+ ShadowBluetoothAdapter.class,
+ ShadowBluetoothUtils.class,
+ ShadowAudioStreamsHelper.class,
+ })
+public class AudioStreamMediaServiceTest {
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+ @Mock private Resources mResources;
+ @Mock private LocalBluetoothManager mLocalBtManager;
+ @Mock private LocalBluetoothLeBroadcastAssistant mLeBroadcastAssistant;
+ @Mock private AudioStreamsHelper mAudioStreamsHelper;
+ @Mock private NotificationManager mNotificationManager;
+ @Mock private MediaSessionManager mMediaSessionManager;
+ @Mock private BluetoothEventManager mBluetoothEventManager;
+ @Mock private LocalBluetoothProfileManager mLocalBluetoothProfileManager;
+ @Mock private VolumeControlProfile mVolumeControlProfile;
+ @Mock private BluetoothDevice mDevice;
+ @Mock private ISession mISession;
+ @Mock private ISessionController mISessionController;
+ @Mock private PackageManager mPackageManager;
+ @Mock private DisplayMetrics mDisplayMetrics;
+ @Mock private Context mContext;
+ private AudioStreamMediaService mAudioStreamMediaService;
+
+ @Before
+ public void setUp() {
+ ShadowAudioStreamsHelper.setUseMock(mAudioStreamsHelper);
+ when(mAudioStreamsHelper.getLeBroadcastAssistant()).thenReturn(mLeBroadcastAssistant);
+ ShadowBluetoothAdapter shadowBluetoothAdapter =
+ Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ shadowBluetoothAdapter.setEnabled(true);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+ shadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+ ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
+ when(mLocalBtManager.getEventManager()).thenReturn(mBluetoothEventManager);
+ when(mLocalBtManager.getProfileManager()).thenReturn(mLocalBluetoothProfileManager);
+ when(mLocalBluetoothProfileManager.getVolumeControlProfile())
+ .thenReturn(mVolumeControlProfile);
+
+ mAudioStreamMediaService = spy(new AudioStreamMediaService());
+ ReflectionHelpers.setField(mAudioStreamMediaService, "mBase", mContext);
+ when(mAudioStreamMediaService.getSystemService(anyString()))
+ .thenReturn(mMediaSessionManager);
+ when(mMediaSessionManager.createSession(any(), anyString(), any())).thenReturn(mISession);
+ try {
+ when(mISession.getController()).thenReturn(mISessionController);
+ } catch (RemoteException e) {
+ throw new RuntimeException(e);
+ }
+ doReturn(mNotificationManager)
+ .when(mAudioStreamMediaService)
+ .getSystemService(NotificationManager.class);
+ when(mAudioStreamMediaService.getApplicationInfo()).thenReturn(new ApplicationInfo());
+ when(mAudioStreamMediaService.getResources()).thenReturn(mResources);
+ when(mAudioStreamMediaService.getPackageManager()).thenReturn(mPackageManager);
+ when(mResources.getDisplayMetrics()).thenReturn(mDisplayMetrics);
+ mDisplayMetrics.density = 1.5f;
+ }
+
+ @After
+ public void tearDown() {
+ mAudioStreamMediaService.stopSelf();
+ ShadowBluetoothUtils.reset();
+ ShadowAudioStreamsHelper.reset();
+ }
+
+ @Test
+ public void onCreate_flagOff_doNothing() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+
+ mAudioStreamMediaService.onCreate();
+
+ verify(mNotificationManager, never()).createNotificationChannel(any());
+ verify(mBluetoothEventManager, never()).registerCallback(any());
+ verify(mLeBroadcastAssistant, never()).registerServiceCallBack(any(), any());
+ verify(mVolumeControlProfile, never()).registerCallback(any(), any());
+ }
+
+ @Test
+ public void onCreate_flagOn_init() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+
+ mAudioStreamMediaService.onCreate();
+
+ verify(mNotificationManager).createNotificationChannel(any());
+ verify(mBluetoothEventManager).registerCallback(any());
+ verify(mLeBroadcastAssistant).registerServiceCallBack(any(), any());
+ verify(mVolumeControlProfile).registerCallback(any(), any());
+ }
+
+ @Test
+ public void onDestroy_flagOff_doNothing() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+
+ mAudioStreamMediaService.onCreate();
+ mAudioStreamMediaService.onDestroy();
+
+ verify(mBluetoothEventManager, never()).unregisterCallback(any());
+ verify(mLeBroadcastAssistant, never()).unregisterServiceCallBack(any());
+ verify(mVolumeControlProfile, never()).unregisterCallback(any());
+ }
+
+ @Test
+ public void onDestroy_flagOn_cleanup() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_SHARING);
+
+ mAudioStreamMediaService.onCreate();
+ mAudioStreamMediaService.onDestroy();
+
+ verify(mBluetoothEventManager).unregisterCallback(any());
+ verify(mLeBroadcastAssistant).unregisterServiceCallBack(any());
+ verify(mVolumeControlProfile).unregisterCallback(any());
+ }
+
+ @Test
+ public void onStartCommand_noBroadcastId_stopSelf() {
+ mAudioStreamMediaService.onStartCommand(new Intent(), /* flags= */ 0, /* startId= */ 0);
+
+ assertThat(mAudioStreamMediaService.mLocalSession).isNull();
+ verify(mAudioStreamMediaService).stopSelf();
+ }
+
+ @Test
+ public void onStartCommand_noDevice_stopSelf() {
+ Intent intent = new Intent();
+ intent.putExtra(BROADCAST_ID, 1);
+
+ mAudioStreamMediaService.onStartCommand(intent, /* flags= */ 0, /* startId= */ 0);
+
+ assertThat(mAudioStreamMediaService.mLocalSession).isNull();
+ verify(mAudioStreamMediaService).stopSelf();
+ }
+
+ @Test
+ public void onStartCommand_createSessionAndStartForeground() {
+ var devices = new ArrayList<BluetoothDevice>();
+ devices.add(mDevice);
+
+ Intent intent = new Intent();
+ intent.putExtra(BROADCAST_ID, 1);
+ intent.putParcelableArrayListExtra(DEVICES, devices);
+
+ mAudioStreamMediaService.onStartCommand(intent, /* flags= */ 0, /* startId= */ 0);
+
+ assertThat(mAudioStreamMediaService.mLocalSession).isNotNull();
+ verify(mAudioStreamMediaService, never()).stopSelf();
+
+ ArgumentCaptor<Notification> notification = ArgumentCaptor.forClass(Notification.class);
+ verify(mAudioStreamMediaService).startForeground(anyInt(), notification.capture());
+ assertThat(notification.getValue().getSmallIcon()).isNotNull();
+ assertThat(notification.getValue().isStyle(Notification.MediaStyle.class)).isTrue();
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreferenceTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreferenceTest.java
index 456e45d3..c8f9358 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamPreferenceTest.java
@@ -107,7 +107,8 @@
@Test
public void setAudioStreamMetadata_shouldUpdateMetadata() {
AudioStreamPreference p =
- AudioStreamPreference.fromMetadata(mContext, mBluetoothLeBroadcastMetadata);
+ AudioStreamPreference.fromMetadata(
+ mContext, mBluetoothLeBroadcastMetadata, SourceOriginForLogging.UNKNOWN);
BluetoothLeBroadcastMetadata metadata = mock(BluetoothLeBroadcastMetadata.class);
p.setAudioStreamMetadata(metadata);
@@ -117,7 +118,8 @@
@Test
public void setAudioStreamState_shouldUpdateState() {
AudioStreamPreference p =
- AudioStreamPreference.fromMetadata(mContext, mBluetoothLeBroadcastMetadata);
+ AudioStreamPreference.fromMetadata(
+ mContext, mBluetoothLeBroadcastMetadata, SourceOriginForLogging.UNKNOWN);
AudioStreamState state = AudioStreamState.SOURCE_ADDED;
p.setAudioStreamState(state);
@@ -127,7 +129,8 @@
@Test
public void fromMetadata_shouldReturnBroadcastInfo() {
AudioStreamPreference p =
- AudioStreamPreference.fromMetadata(mContext, mBluetoothLeBroadcastMetadata);
+ AudioStreamPreference.fromMetadata(
+ mContext, mBluetoothLeBroadcastMetadata, SourceOriginForLogging.UNKNOWN);
assertThat(p.getAudioStreamBroadcastId()).isEqualTo(BROADCAST_ID);
assertThat(p.getAudioStreamBroadcastName()).isEqualTo(BROADCAST_NAME);
assertThat(p.getAudioStreamRssi()).isEqualTo(BROADCAST_RSSI);
@@ -152,7 +155,8 @@
public void shouldHideSecondTarget_notEncrypted() {
when(mBluetoothLeBroadcastMetadata.isEncrypted()).thenReturn(false);
AudioStreamPreference p =
- AudioStreamPreference.fromMetadata(mContext, mBluetoothLeBroadcastMetadata);
+ AudioStreamPreference.fromMetadata(
+ mContext, mBluetoothLeBroadcastMetadata, SourceOriginForLogging.UNKNOWN);
assertThat(p.shouldHideSecondTarget()).isTrue();
}
@@ -160,7 +164,8 @@
public void shouldShowSecondTarget_encrypted() {
when(mBluetoothLeBroadcastMetadata.isEncrypted()).thenReturn(true);
AudioStreamPreference p =
- AudioStreamPreference.fromMetadata(mContext, mBluetoothLeBroadcastMetadata);
+ AudioStreamPreference.fromMetadata(
+ mContext, mBluetoothLeBroadcastMetadata, SourceOriginForLogging.UNKNOWN);
assertThat(p.shouldHideSecondTarget()).isFalse();
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsCategoryControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsCategoryControllerTest.java
new file mode 100644
index 0000000..e4b6903
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsCategoryControllerTest.java
@@ -0,0 +1,231 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.android.settings.core.BasePreferenceController.AVAILABLE;
+import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+import static org.robolectric.Shadows.shadowOf;
+
+import android.bluetooth.BluetoothAdapter;
+import android.bluetooth.BluetoothStatusCodes;
+import android.content.Context;
+import android.os.Looper;
+import android.platform.test.flag.junit.SetFlagsRule;
+
+import androidx.lifecycle.LifecycleOwner;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.bluetooth.Utils;
+import com.android.settings.connecteddevice.audiosharing.audiostreams.testshadows.ShadowAudioStreamsHelper;
+import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
+import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
+import com.android.settingslib.bluetooth.BluetoothEventManager;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
+import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+import com.android.settingslib.bluetooth.VolumeControlProfile;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.flags.Flags;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadow.api.Shadow;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(
+ shadows = {
+ ShadowBluetoothAdapter.class,
+ ShadowBluetoothUtils.class,
+ ShadowAudioStreamsHelper.class,
+ })
+public class AudioStreamsCategoryControllerTest {
+ private static final String KEY = "audio_streams_settings_category";
+
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+
+ private final Context mContext = ApplicationProvider.getApplicationContext();
+ @Mock private LocalBluetoothManager mLocalBtManager;
+ @Mock private LocalBluetoothProfileManager mBtProfileManager;
+ @Mock private BluetoothEventManager mBluetoothEventManager;
+ @Mock private LocalBluetoothLeBroadcast mBroadcast;
+ @Mock private LocalBluetoothLeBroadcastAssistant mAssistant;
+ @Mock private VolumeControlProfile mVolumeControl;
+ @Mock private PreferenceScreen mScreen;
+ @Mock private AudioStreamsHelper mAudioStreamsHelper;
+ @Mock private CachedBluetoothDevice mCachedBluetoothDevice;
+
+ private AudioStreamsCategoryController mController;
+ private Lifecycle mLifecycle;
+ private LifecycleOwner mLifecycleOwner;
+ private ShadowBluetoothAdapter mShadowBluetoothAdapter;
+ private LocalBluetoothManager mLocalBluetoothManager;
+ private Preference mPreference;
+
+ @Before
+ public void setUp() {
+ ShadowAudioStreamsHelper.setUseMock(mAudioStreamsHelper);
+ mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ mShadowBluetoothAdapter.setEnabled(true);
+ mShadowBluetoothAdapter.setIsLeAudioBroadcastSourceSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mShadowBluetoothAdapter.setIsLeAudioBroadcastAssistantSupported(
+ BluetoothStatusCodes.FEATURE_SUPPORTED);
+ mLifecycleOwner = () -> mLifecycle;
+ mLifecycle = new Lifecycle(mLifecycleOwner);
+ ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
+ mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
+ when(mLocalBluetoothManager.getEventManager()).thenReturn(mBluetoothEventManager);
+ when(mLocalBluetoothManager.getProfileManager()).thenReturn(mBtProfileManager);
+ when(mBtProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
+ when(mBtProfileManager.getLeAudioBroadcastAssistantProfile()).thenReturn(mAssistant);
+ when(mBtProfileManager.getVolumeControlProfile()).thenReturn(mVolumeControl);
+ when(mBroadcast.isProfileReady()).thenReturn(true);
+ when(mAssistant.isProfileReady()).thenReturn(true);
+ when(mVolumeControl.isProfileReady()).thenReturn(true);
+ mController = new AudioStreamsCategoryController(mContext, KEY);
+ mPreference = new Preference(mContext);
+ when(mScreen.findPreference(KEY)).thenReturn(mPreference);
+ mController.displayPreference(mScreen);
+ mPreference.setVisible(false);
+ }
+
+ @After
+ public void tearDown() {
+ ShadowAudioStreamsHelper.reset();
+ ShadowBluetoothUtils.reset();
+ }
+
+ @Test
+ public void getAvailabilityStatus_flagOn() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
+ }
+
+ @Test
+ public void getAvailabilityStatus_flagOff() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE);
+ }
+
+ @Test
+ public void onStart_flagOff_doNothing() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ mController.onStart(mLifecycleOwner);
+ verify(mBluetoothEventManager, never()).registerCallback(any());
+ }
+
+ @Test
+ public void onStart_flagOn_registerCallback() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ mController.onStart(mLifecycleOwner);
+ verify(mBluetoothEventManager).registerCallback(any());
+ }
+
+ @Test
+ public void onStop_flagOff_doNothing() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ mController.onStop(mLifecycleOwner);
+ verify(mBluetoothEventManager, never()).unregisterCallback(any());
+ }
+
+ @Test
+ public void onStop_flagOn_unregisterCallback() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ mController.onStop(mLifecycleOwner);
+ verify(mBluetoothEventManager).unregisterCallback(any());
+ }
+
+ @Test
+ public void updateVisibility_flagOff_invisible() {
+ mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ mController.updateVisibility();
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.isVisible()).isFalse();
+ }
+
+ @Test
+ public void updateVisibility_noConnectedLe_invisible() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ mController.updateVisibility();
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.isVisible()).isFalse();
+ }
+
+ @Test
+ public void updateVisibility_isNotProfileReady_invisible() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ ShadowAudioStreamsHelper.setCachedBluetoothDeviceInSharingOrLeConnected(
+ mCachedBluetoothDevice);
+ when(mVolumeControl.isProfileReady()).thenReturn(false);
+ mController.updateVisibility();
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.isVisible()).isFalse();
+ }
+
+ @Test
+ public void updateVisibility_isBroadcasting_invisible() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ ShadowAudioStreamsHelper.setCachedBluetoothDeviceInSharingOrLeConnected(
+ mCachedBluetoothDevice);
+ when(mBroadcast.isEnabled(any())).thenReturn(true);
+ mController.updateVisibility();
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.isVisible()).isFalse();
+ }
+
+ @Test
+ public void updateVisibility_isBluetoothOff_invisible() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ ShadowAudioStreamsHelper.setCachedBluetoothDeviceInSharingOrLeConnected(
+ mCachedBluetoothDevice);
+ mShadowBluetoothAdapter.setEnabled(false);
+ mController.updateVisibility();
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.isVisible()).isFalse();
+ }
+
+ @Test
+ public void updateVisibility_visible() {
+ mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_LE_AUDIO_QR_CODE_PRIVATE_BROADCAST_SHARING);
+ ShadowAudioStreamsHelper.setCachedBluetoothDeviceInSharingOrLeConnected(
+ mCachedBluetoothDevice);
+ mController.displayPreference(mScreen);
+ mController.updateVisibility();
+ shadowOf(Looper.getMainLooper()).idle();
+ assertThat(mPreference.isVisible()).isTrue();
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDashboardFragmentTest.java
new file mode 100644
index 0000000..9058ab6
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsDashboardFragmentTest.java
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsDashboardFragment.KEY_BROADCAST_METADATA;
+import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsScanQrCodeController.REQUEST_SCAN_BT_BROADCAST_QR_CODE;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+
+import android.app.Activity;
+import android.content.Context;
+import android.content.Intent;
+
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settingslib.core.AbstractPreferenceController;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+public class AudioStreamsDashboardFragmentTest {
+
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ private static final String VALID_METADATA =
+ "BLUETOOTH:UUID:184F;BN:VGVzdA==;AT:1;AD:00A1A1A1A1A1;BI:1E240;BC:VGVzdENvZGU=;"
+ + "MD:BgNwVGVzdA==;AS:1;PI:A0;NS:1;BS:3;NB:2;SM:BQNUZXN0BARlbmc=;;";
+
+ private Context mContext;
+ private AudioStreamsProgressCategoryController mController;
+ private TestFragment mTestFragment;
+
+ @Before
+ public void setUp() {
+ mContext = ApplicationProvider.getApplicationContext();
+ mTestFragment = spy(new TestFragment());
+ doReturn(mContext).when(mTestFragment).getContext();
+ mController = spy(new AudioStreamsProgressCategoryController(mContext, "key"));
+ doReturn(mController).when(mTestFragment).use(AudioStreamsProgressCategoryController.class);
+ }
+
+ @Test
+ public void getPreferenceScreenResId_returnsCorrectXml() {
+ assertThat(mTestFragment.getPreferenceScreenResId())
+ .isEqualTo(R.xml.bluetooth_le_audio_streams);
+ }
+
+ @Test
+ public void getLogTag_returnsCorrectTag() {
+ assertThat(mTestFragment.getLogTag()).isEqualTo("AudioStreamsDashboardFrag");
+ }
+
+ @Test
+ public void getHelpResource_returnsCorrectResource() {
+ assertThat(mTestFragment.getHelpResource()).isEqualTo(R.string.help_url_audio_sharing);
+ }
+
+ @Test
+ public void onActivityResult_invalidRequestCode_doNothing() {
+ mTestFragment.onAttach(mContext);
+
+ mTestFragment.onActivityResult(0, 0, null);
+ verify(mController, never()).setSourceFromQrCode(any(), any());
+ }
+
+ @Test
+ public void onActivityResult_invalidRequestResult_doNothing() {
+ mTestFragment.onAttach(mContext);
+
+ mTestFragment.onActivityResult(REQUEST_SCAN_BT_BROADCAST_QR_CODE, 0, null);
+ verify(mController, never()).setSourceFromQrCode(any(), any());
+ }
+
+ @Test
+ public void onActivityResult_nullData_doNothing() {
+ mTestFragment.onAttach(mContext);
+
+ mTestFragment.onActivityResult(REQUEST_SCAN_BT_BROADCAST_QR_CODE, Activity.RESULT_OK, null);
+ verify(mController, never()).setSourceFromQrCode(any(), any());
+ }
+
+ @Test
+ public void onActivityResult_setSourceFromQrCode() {
+ mTestFragment.onAttach(mContext);
+ Intent intent = new Intent();
+ intent.putExtra(KEY_BROADCAST_METADATA, VALID_METADATA);
+
+ mTestFragment.onActivityResult(
+ REQUEST_SCAN_BT_BROADCAST_QR_CODE, Activity.RESULT_OK, intent);
+ verify(mController).setSourceFromQrCode(any(), any());
+ }
+
+ public static class TestFragment extends AudioStreamsDashboardFragment {
+ @Override
+ protected <T extends AbstractPreferenceController> T use(Class<T> clazz) {
+ return super.use(clazz);
+ }
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsProgressCategoryPreferenceTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsProgressCategoryPreferenceTest.java
new file mode 100644
index 0000000..337d64d
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsProgressCategoryPreferenceTest.java
@@ -0,0 +1,93 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+
+import androidx.preference.PreferenceManager;
+import androidx.test.core.app.ApplicationProvider;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+
+import java.util.Comparator;
+
+@RunWith(RobolectricTestRunner.class)
+public class AudioStreamsProgressCategoryPreferenceTest {
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ @Mock PreferenceManager mPreferenceManager;
+ private Context mContext;
+ private AudioStreamsProgressCategoryPreference mPreference;
+
+ @Before
+ public void setUp() {
+ mContext = ApplicationProvider.getApplicationContext();
+ mPreference = spy(new AudioStreamsProgressCategoryPreference(mContext));
+ when(mPreference.getPreferenceManager()).thenReturn(mPreferenceManager);
+ }
+
+ @Test
+ public void addAudioStreamPreference_singlePreference() {
+ AudioStreamPreference first = new AudioStreamPreference(mContext, null);
+ mPreference.addAudioStreamPreference(first, (p1, p2) -> 0);
+
+ assertThat(mPreference.getPreferenceCount()).isEqualTo(1);
+ assertThat(mPreference.getPreference(0)).isEqualTo(first);
+ }
+
+ @Test
+ public void addAudioStreamPreference_multiPreference_sorted() {
+ Comparator<AudioStreamPreference> c =
+ Comparator.comparingInt(AudioStreamPreference::getOrder);
+ AudioStreamPreference first = new AudioStreamPreference(mContext, null);
+ first.setOrder(1);
+ AudioStreamPreference second = new AudioStreamPreference(mContext, null);
+ second.setOrder(0);
+ mPreference.addAudioStreamPreference(first, c);
+ mPreference.addAudioStreamPreference(second, c);
+
+ assertThat(mPreference.getPreferenceCount()).isEqualTo(2);
+ assertThat(mPreference.getPreference(0)).isEqualTo(second);
+ assertThat(mPreference.getPreference(1)).isEqualTo(first);
+ }
+
+ @Test
+ public void removeAudioStreamPreferences_shouldBeEmpty() {
+ Comparator<AudioStreamPreference> c =
+ Comparator.comparingInt(AudioStreamPreference::getOrder);
+ AudioStreamPreference first = new AudioStreamPreference(mContext, null);
+ first.setOrder(0);
+ AudioStreamPreference second = new AudioStreamPreference(mContext, null);
+ second.setOrder(1);
+ mPreference.addAudioStreamPreference(first, c);
+ mPreference.addAudioStreamPreference(second, c);
+ mPreference.removeAudioStreamPreferences();
+
+ assertThat(mPreference.getPreferenceCount()).isEqualTo(0);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeFragmentTest.java
new file mode 100644
index 0000000..7d85b7a
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeFragmentTest.java
@@ -0,0 +1,140 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.when;
+
+import static java.util.Collections.emptyList;
+import static java.util.Collections.list;
+
+import android.app.settings.SettingsEnums;
+import android.bluetooth.BluetoothLeBroadcastMetadata;
+import android.content.Context;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import androidx.fragment.app.FragmentActivity;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settings.bluetooth.Utils;
+import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
+import com.android.settingslib.bluetooth.BluetoothEventManager;
+import com.android.settingslib.bluetooth.BluetoothLeBroadcastMetadataExt;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
+import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadows.androidx.fragment.FragmentController;
+
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.List;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(
+ shadows = {
+ ShadowBluetoothUtils.class,
+ })
+public class AudioStreamsQrCodeFragmentTest {
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ private static final String VALID_METADATA =
+ "BLUETOOTH:UUID:184F;BN:VGVzdA==;AT:1;AD:00A1A1A1A1A1;BI:1E240;BC:VGVzdENvZGU=;"
+ + "MD:BgNwVGVzdA==;AS:1;PI:A0;NS:1;BS:3;NB:2;SM:BQNUZXN0BARlbmc=;;";
+ @Mock private LocalBluetoothManager mLocalBtManager;
+ @Mock private BluetoothEventManager mBtEventManager;
+ @Mock private LocalBluetoothProfileManager mBtProfileManager;
+ @Mock private LocalBluetoothLeBroadcast mBroadcast;
+ private Context mContext;
+ private AudioStreamsQrCodeFragment mFragment;
+
+ @Before
+ public void setUp() {
+ ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
+ LocalBluetoothManager btManager = Utils.getLocalBtManager(mContext);
+ when(btManager.getEventManager()).thenReturn(mBtEventManager);
+ when(btManager.getProfileManager()).thenReturn(mBtProfileManager);
+ when(mBtProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
+ when(mBroadcast.getAllBroadcastMetadata()).thenReturn(emptyList());
+ mContext = ApplicationProvider.getApplicationContext();
+ mFragment = new AudioStreamsQrCodeFragment();
+ }
+
+ @After
+ public void tearDown() {
+ ShadowBluetoothUtils.reset();
+ }
+
+ @Test
+ public void getMetricsCategory_returnEnum() {
+ assertThat(mFragment.getMetricsCategory()).isEqualTo(SettingsEnums.AUDIO_STREAM_QR_CODE);
+ }
+
+ @Test
+ public void onCreateView_noMetadata_noQrCode() {
+ List<BluetoothLeBroadcastMetadata> list = new ArrayList<>();
+ when(mBroadcast.getAllBroadcastMetadata()).thenReturn(list);
+ FragmentController.setupFragment(
+ mFragment, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ View view = mFragment.getView();
+
+ assertThat(view).isNotNull();
+ ImageView qrCodeView = view.findViewById(R.id.qrcode_view);
+ TextView passwordView = view.requireViewById(R.id.password);
+ assertThat(qrCodeView).isNotNull();
+ assertThat(qrCodeView.getDrawable()).isNull();
+ assertThat(passwordView).isNotNull();
+ assertThat(passwordView.getText().toString()).isEqualTo("");
+ }
+
+ @Test
+ public void onCreateView_hasMetadata_hasQrCode() {
+ var metadata =
+ BluetoothLeBroadcastMetadataExt.INSTANCE.convertToBroadcastMetadata(VALID_METADATA);
+ List<BluetoothLeBroadcastMetadata> list = new ArrayList<>();
+ list.add(metadata);
+ when(mBroadcast.getAllBroadcastMetadata()).thenReturn(list);
+ FragmentController.setupFragment(
+ mFragment, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ View view = mFragment.getView();
+
+ assertThat(view).isNotNull();
+ ImageView qrCodeView = view.findViewById(R.id.qrcode_view);
+ TextView passwordView = view.requireViewById(R.id.password);
+ assertThat(qrCodeView).isNotNull();
+ assertThat(qrCodeView.getDrawable()).isNotNull();
+ assertThat(passwordView).isNotNull();
+ assertThat(passwordView.getText().toString())
+ .isEqualTo(
+ mContext.getString(
+ R.string.audio_streams_qr_code_page_password,
+ new String(metadata.getBroadcastCode(), StandardCharsets.UTF_8)));
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeScanFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeScanFragmentTest.java
new file mode 100644
index 0000000..0dd495f
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsQrCodeScanFragmentTest.java
@@ -0,0 +1,210 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsQrCodeScanFragment.SHOW_ERROR_MESSAGE_INTERVAL;
+import static com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsQrCodeScanFragment.SHOW_SUCCESS_SQUARE_INTERVAL;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.settings.SettingsEnums;
+import android.content.Context;
+import android.graphics.SurfaceTexture;
+import android.view.TextureView;
+import android.view.View;
+import android.widget.TextView;
+
+import androidx.fragment.app.FragmentActivity;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settings.connecteddevice.audiosharing.audiostreams.testshadows.ShadowAudioStreamsHelper;
+import com.android.settings.connecteddevice.audiosharing.audiostreams.testshadows.ShadowQrCamera;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.qrcode.QrCamera;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadows.ShadowLooper;
+import org.robolectric.shadows.androidx.fragment.FragmentController;
+
+import java.util.concurrent.TimeUnit;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(
+ shadows = {
+ ShadowAudioStreamsHelper.class,
+ ShadowQrCamera.class,
+ })
+public class AudioStreamsQrCodeScanFragmentTest {
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ private static final String VALID_METADATA =
+ "BLUETOOTH:UUID:184F;BN:VGVzdA==;AT:1;AD:00A1A1A1A1A1;BI:1E240;BC:VGVzdENvZGU=;"
+ + "MD:BgNwVGVzdA==;AS:1;PI:A0;NS:1;BS:3;NB:2;SM:BQNUZXN0BARlbmc=;;";
+ private static final String DEVICE_NAME = "device_name";
+ @Mock private CachedBluetoothDevice mDevice;
+ @Mock private QrCamera mQrCamera;
+ @Mock private SurfaceTexture mSurfaceTexture;
+ private Context mContext;
+ private AudioStreamsQrCodeScanFragment mFragment;
+
+ @Before
+ public void setUp() {
+ ShadowAudioStreamsHelper.setCachedBluetoothDeviceInSharingOrLeConnected(mDevice);
+ ShadowQrCamera.setUseMock(mQrCamera);
+ when(mDevice.getName()).thenReturn(DEVICE_NAME);
+ mContext = ApplicationProvider.getApplicationContext();
+ mFragment = new AudioStreamsQrCodeScanFragment();
+ }
+
+ @After
+ public void tearDown() {
+ ShadowAudioStreamsHelper.reset();
+ ShadowQrCamera.reset();
+ }
+
+ @Test
+ public void getMetricsCategory_returnEnum() {
+ assertThat(mFragment.getMetricsCategory())
+ .isEqualTo(SettingsEnums.AUDIO_STREAM_QR_CODE_SCAN);
+ }
+
+ @Test
+ public void onCreateView_createLayout() {
+ FragmentController.setupFragment(
+ mFragment, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ ShadowLooper.idleMainLooper();
+ View view = mFragment.getView();
+
+ assertThat(view).isNotNull();
+ TextureView textureView = view.findViewById(R.id.preview_view);
+ assertThat(textureView).isNotNull();
+ assertThat(textureView.getSurfaceTextureListener()).isNotNull();
+ assertThat(textureView.getOutlineProvider()).isNotNull();
+ assertThat(textureView.getClipToOutline()).isTrue();
+
+ TextView errorMessage = view.findViewById(R.id.error_message);
+ assertThat(errorMessage).isNotNull();
+ assertThat(errorMessage.getText().toString()).isEqualTo("");
+
+ TextView summary = view.findViewById(android.R.id.summary);
+ assertThat(summary).isNotNull();
+ assertThat(summary.getText().toString())
+ .isEqualTo(
+ mContext.getString(
+ R.string.audio_streams_main_page_qr_code_scanner_summary,
+ DEVICE_NAME));
+ }
+
+ @Test
+ public void surfaceTextureListener_startAndStopQrCamera() {
+ FragmentController.setupFragment(
+ mFragment, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ ShadowLooper.idleMainLooper();
+ View view = mFragment.getView();
+
+ assertThat(view).isNotNull();
+ TextureView textureView = view.findViewById(R.id.preview_view);
+ assertThat(textureView).isNotNull();
+ TextureView.SurfaceTextureListener listener = textureView.getSurfaceTextureListener();
+
+ assertThat(listener).isNotNull();
+ listener.onSurfaceTextureAvailable(mSurfaceTexture, 50, 50);
+ verify(mQrCamera).start(any());
+
+ listener.onSurfaceTextureSizeChanged(mSurfaceTexture, 150, 150);
+ listener.onSurfaceTextureUpdated(mSurfaceTexture);
+ listener.onSurfaceTextureDestroyed(mSurfaceTexture);
+ verify(mQrCamera).stop();
+
+ mFragment.handleCameraFailure();
+ verify(mQrCamera).stop();
+ }
+
+ @Test
+ public void scannerCallback_sendSuccessMessage() {
+ FragmentController.setupFragment(
+ mFragment, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ View view = mFragment.getView();
+ ShadowLooper.idleMainLooper();
+
+ assertThat(view).isNotNull();
+ TextureView textureView = view.findViewById(R.id.preview_view);
+ TextView errorMessage = view.findViewById(R.id.error_message);
+
+ mFragment.handleSuccessfulResult("qrcode");
+ ShadowLooper.idleMainLooper(SHOW_SUCCESS_SQUARE_INTERVAL, TimeUnit.MILLISECONDS);
+
+ assertThat(textureView).isNotNull();
+ assertThat(textureView.getVisibility()).isEqualTo(View.INVISIBLE);
+ assertThat(errorMessage).isNotNull();
+ assertThat(errorMessage.getVisibility()).isEqualTo(View.INVISIBLE);
+ }
+
+ @Test
+ public void scannerCallback_isValid() {
+ Boolean result = mFragment.isValid(VALID_METADATA);
+ assertThat(result).isTrue();
+ }
+
+ @Test
+ public void scannerCallback_isInvalid_showErrorThenHide() {
+ FragmentController.setupFragment(
+ mFragment, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ Boolean result = mFragment.isValid("invalid");
+ assertThat(result).isFalse();
+
+ ShadowLooper.idleMainLooper();
+ View view = mFragment.getView();
+ assertThat(view).isNotNull();
+ TextView errorMessage = view.findViewById(R.id.error_message);
+ assertThat(errorMessage).isNotNull();
+ assertThat(errorMessage.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(errorMessage.getText().toString())
+ .isEqualTo(mContext.getString(R.string.audio_streams_qr_code_is_not_valid_format));
+
+ ShadowLooper.idleMainLooper(SHOW_ERROR_MESSAGE_INTERVAL, TimeUnit.MILLISECONDS);
+ assertThat(errorMessage.getVisibility()).isEqualTo(View.INVISIBLE);
+ }
+
+ @Test
+ public void getViewSize_getSize() {
+ FragmentController.setupFragment(
+ mFragment, FragmentActivity.class, /* containerViewId= */ 0, /* bundle= */ null);
+ ShadowLooper.idleMainLooper();
+ View view = mFragment.getView();
+ assertThat(view).isNotNull();
+ TextureView textureView = view.findViewById(R.id.preview_view);
+ assertThat(textureView).isNotNull();
+
+ var result = mFragment.getViewSize();
+ assertThat(result.getWidth()).isEqualTo(textureView.getWidth());
+ assertThat(result.getHeight()).isEqualTo(textureView.getHeight());
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsRepositoryTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsRepositoryTest.java
new file mode 100644
index 0000000..037b195
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsRepositoryTest.java
@@ -0,0 +1,98 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+
+import android.bluetooth.BluetoothLeBroadcastMetadata;
+import android.content.Context;
+import android.content.SharedPreferences;
+
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settingslib.bluetooth.BluetoothLeBroadcastMetadataExt;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+public class AudioStreamsRepositoryTest {
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ private static final String METADATA_STR =
+ "BLUETOOTH:UUID:184F;BN:VGVzdA==;AT:1;AD:00A1A1A1A1A1;BI:1E240;BC:VGVzdENvZGU=;"
+ + "MD:BgNwVGVzdA==;AS:1;PI:A0;NS:1;BS:3;NB:2;SM:BQNUZXN0BARlbmc=;;";
+ private static final String TEST_SHARED_PREFERENCE = "AudioStreamsRepositoryTestPref";
+ private final BluetoothLeBroadcastMetadata mMetadata =
+ BluetoothLeBroadcastMetadataExt.INSTANCE.convertToBroadcastMetadata(METADATA_STR);
+ private Context mContext;
+ private AudioStreamsRepository mAudioStreamsRepository;
+
+ @Before
+ public void setUp() {
+ mContext = spy(ApplicationProvider.getApplicationContext());
+ doReturn(getSharedPreferences()).when(mContext).getSharedPreferences(anyString(), anyInt());
+ mAudioStreamsRepository = AudioStreamsRepository.getInstance();
+ }
+
+ @Test
+ public void cacheAndGetMetadata_sameId() {
+ mAudioStreamsRepository.cacheMetadata(mMetadata);
+
+ assertThat(mMetadata).isNotNull();
+ assertThat(mAudioStreamsRepository.getCachedMetadata(mMetadata.getBroadcastId()))
+ .isEqualTo(mMetadata);
+ }
+
+ @Test
+ public void cacheAndGetMetadata_differentId() {
+ mAudioStreamsRepository.cacheMetadata(mMetadata);
+
+ assertThat(mMetadata).isNotNull();
+ assertThat(mAudioStreamsRepository.getCachedMetadata(1)).isNull();
+ }
+
+ @Test
+ public void saveAndGetMetadata_sameId() {
+ mAudioStreamsRepository.saveMetadata(mContext, mMetadata);
+
+ assertThat(mMetadata).isNotNull();
+ assertThat(mAudioStreamsRepository.getSavedMetadata(mContext, mMetadata.getBroadcastId()))
+ .isEqualTo(mMetadata);
+ }
+
+ @Test
+ public void saveAndGetMetadata_differentId() {
+ mAudioStreamsRepository.saveMetadata(mContext, mMetadata);
+
+ assertThat(mMetadata).isNotNull();
+ assertThat(mAudioStreamsRepository.getSavedMetadata(mContext, 1)).isNull();
+ }
+
+ private SharedPreferences getSharedPreferences() {
+ return mContext.getSharedPreferences(TEST_SHARED_PREFERENCE, Context.MODE_PRIVATE);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsScanQrCodeControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsScanQrCodeControllerTest.java
new file mode 100644
index 0000000..4990f26
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/AudioStreamsScanQrCodeControllerTest.java
@@ -0,0 +1,165 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams;
+
+import static com.android.settings.core.BasePreferenceController.AVAILABLE;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.bluetooth.BluetoothProfile;
+import android.content.Context;
+
+import androidx.lifecycle.LifecycleOwner;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.connecteddevice.audiosharing.audiostreams.testshadows.ShadowAudioStreamsHelper;
+import com.android.settings.testutils.shadow.ShadowBluetoothUtils;
+import com.android.settingslib.bluetooth.BluetoothEventManager;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(
+ shadows = {
+ ShadowBluetoothUtils.class,
+ ShadowAudioStreamsHelper.class,
+ })
+public class AudioStreamsScanQrCodeControllerTest {
+ @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+ @Mock private LocalBluetoothManager mLocalBtManager;
+ @Mock private BluetoothEventManager mBluetoothEventManager;
+ @Mock private PreferenceScreen mScreen;
+ @Mock private AudioStreamsDashboardFragment mFragment;
+ @Mock private CachedBluetoothDevice mDevice;
+ private Preference mPreference;
+ private Lifecycle mLifecycle;
+ private LifecycleOwner mLifecycleOwner;
+ private AudioStreamsScanQrCodeController mController;
+ private Context mContext;
+
+ @Before
+ public void setUp() {
+ ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBtManager;
+ when(mLocalBtManager.getEventManager()).thenReturn(mBluetoothEventManager);
+ mLifecycleOwner = () -> mLifecycle;
+ mLifecycle = new Lifecycle(mLifecycleOwner);
+ mContext = ApplicationProvider.getApplicationContext();
+ mController =
+ new AudioStreamsScanQrCodeController(
+ mContext, AudioStreamsScanQrCodeController.KEY);
+ mPreference = spy(new Preference(mContext));
+ when(mScreen.findPreference(anyString())).thenReturn(mPreference);
+ when(mPreference.getKey()).thenReturn(AudioStreamsScanQrCodeController.KEY);
+ }
+
+ @After
+ public void tearDown() {
+ ShadowAudioStreamsHelper.reset();
+ ShadowBluetoothUtils.reset();
+ }
+
+ @Test
+ public void getAvailabilityStatus() {
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
+ }
+
+ @Test
+ public void getPreferenceKey() {
+ var key = mController.getPreferenceKey();
+
+ assertThat(key).isEqualTo(AudioStreamsScanQrCodeController.KEY);
+ }
+
+ @Test
+ public void onStart_registerCallback() {
+ mController.onStart(mLifecycleOwner);
+
+ verify(mBluetoothEventManager).registerCallback(any());
+ }
+
+ @Test
+ public void onStop_unregisterCallback() {
+ mController.onStop(mLifecycleOwner);
+
+ verify(mBluetoothEventManager).unregisterCallback(any());
+ }
+
+ @Test
+ public void onDisplayPreference_setOnclick() {
+ mController.displayPreference(mScreen);
+
+ verify(mPreference).setOnPreferenceClickListener(any());
+ }
+
+ @Test
+ public void onPreferenceClick_noFragment_doNothing() {
+ mController.displayPreference(mScreen);
+
+ var listener = mPreference.getOnPreferenceClickListener();
+ assertThat(listener).isNotNull();
+ var clicked = listener.onPreferenceClick(mPreference);
+ assertThat(clicked).isFalse();
+ }
+
+ @Test
+ public void onPreferenceClick_hasFragment_launchSubSetting() {
+ mController.displayPreference(mScreen);
+ mController.setFragment(mFragment);
+
+ var listener = mPreference.getOnPreferenceClickListener();
+ assertThat(listener).isNotNull();
+ var clicked = listener.onPreferenceClick(mPreference);
+ assertThat(clicked).isTrue();
+ }
+
+ @Test
+ public void updateVisibility_noConnected_invisible() {
+ mController.displayPreference(mScreen);
+ mController.mBluetoothCallback.onActiveDeviceChanged(mDevice, BluetoothProfile.LE_AUDIO);
+
+ assertThat(mPreference.isVisible()).isFalse();
+ }
+
+ @Test
+ public void updateVisibility_hasConnected_visible() {
+ mController.displayPreference(mScreen);
+ ShadowAudioStreamsHelper.setCachedBluetoothDeviceInSharingOrLeConnected(mDevice);
+ mController.mBluetoothCallback.onActiveDeviceChanged(mDevice, BluetoothProfile.LE_AUDIO);
+
+ assertThat(mPreference.isVisible()).isTrue();
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncStateTest.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncStateTest.java
index 5297182..3eb07a4 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncStateTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/WaitForSyncStateTest.java
@@ -93,6 +93,8 @@
.thenReturn(AudioStreamsProgressCategoryController.AudioStreamState.WAIT_FOR_SYNC);
when(mMockPreference.getAudioStreamBroadcastId()).thenReturn(1);
when(mMockPreference.getAudioStreamMetadata()).thenReturn(mMockMetadata);
+ when(mMockPreference.getSourceOriginForLogging())
+ .thenReturn(SourceOriginForLogging.UNKNOWN);
mInstance.performAction(mMockPreference, mMockController, mMockHelper);
ShadowLooper.idleMainLooper(WAIT_FOR_SYNC_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/testshadows/ShadowAudioStreamsHelper.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/testshadows/ShadowAudioStreamsHelper.java
index 331a30b..3a0a6c4 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/testshadows/ShadowAudioStreamsHelper.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/testshadows/ShadowAudioStreamsHelper.java
@@ -22,6 +22,7 @@
import com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsHelper;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcastAssistant;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import org.robolectric.annotation.Implementation;
@@ -63,4 +64,9 @@
LocalBluetoothManager manager) {
return Optional.ofNullable(sCachedBluetoothDevice);
}
+
+ @Implementation
+ public LocalBluetoothLeBroadcastAssistant getLeBroadcastAssistant() {
+ return sMockHelper.getLeBroadcastAssistant();
+ }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/testshadows/ShadowQrCamera.java b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/testshadows/ShadowQrCamera.java
new file mode 100644
index 0000000..032c91f
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/audiosharing/audiostreams/testshadows/ShadowQrCamera.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.connecteddevice.audiosharing.audiostreams.testshadows;
+
+import android.graphics.SurfaceTexture;
+
+import com.android.settingslib.qrcode.QrCamera;
+
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
+import org.robolectric.annotation.Resetter;
+
+@Implements(value = QrCamera.class, callThroughByDefault = false)
+public class ShadowQrCamera {
+
+ private static QrCamera sMockQrCamera;
+
+ public static void setUseMock(QrCamera mockQrCamera) {
+ sMockQrCamera = mockQrCamera;
+ }
+
+ /** Start camera */
+ @Implementation
+ public void start(SurfaceTexture surface) {
+ sMockQrCamera.start(surface);
+ }
+
+ /** Stop camera */
+ @Implementation
+ public void stop() {
+ sMockQrCamera.stop();
+ }
+
+ /** Reset static fields */
+ @Resetter
+ public static void reset() {
+ sMockQrCamera = null;
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/development/BackgroundProcessLimitPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/BackgroundProcessLimitPreferenceControllerTest.java
new file mode 100644
index 0000000..d51547e
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/development/BackgroundProcessLimitPreferenceControllerTest.java
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.development;
+
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.IActivityManager;
+import android.content.Context;
+import android.os.RemoteException;
+
+import androidx.preference.ListPreference;
+import androidx.preference.PreferenceScreen;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.RuntimeEnvironment;
+
+@RunWith(RobolectricTestRunner.class)
+public class BackgroundProcessLimitPreferenceControllerTest {
+
+ @Mock
+ private IActivityManager mActivityManager;
+ @Mock
+ private ListPreference mPreference;
+ @Mock
+ private PreferenceScreen mScreen;
+
+ /**
+ * 0: Standard limit
+ * 1: No Background processes
+ * 2: At most 1 process
+ * 3: At most 2 processes
+ * 4: At most 3 processes
+ * 5: At most 4 processes
+ */
+ private String[] mListValues;
+ private String[] mListSummaries;
+ private Context mContext;
+ private BackgroundProcessLimitPreferenceController mController;
+
+ @Before
+ public void setup() {
+ MockitoAnnotations.initMocks(this);
+ mContext = RuntimeEnvironment.application;
+ mListValues = mContext.getResources()
+ .getStringArray(com.android.settingslib.R.array.app_process_limit_values);
+ mListSummaries = mContext.getResources()
+ .getStringArray(com.android.settingslib.R.array.app_process_limit_entries);
+ mController = spy(new BackgroundProcessLimitPreferenceController(mContext));
+ doReturn(mActivityManager).when(mController).getActivityManagerService();
+ when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
+ mController.displayPreference(mScreen);
+ }
+
+ @Test
+ public void onPreferenceChange_noBackgroundProcessSet_shouldSetToNoBackgroundProcess()
+ throws RemoteException {
+ mController.onPreferenceChange(mPreference, mListValues[1]);
+
+ verify(mActivityManager).setProcessLimit(Integer.valueOf(mListValues[1]));
+ }
+
+ @Test
+ public void onPreferenceChange_1ProcessSet_shouldSetTo1BackgroundProcess()
+ throws RemoteException {
+ mController.onPreferenceChange(mPreference, mListValues[2]);
+
+ verify(mActivityManager).setProcessLimit(Integer.valueOf(mListValues[2]));
+ }
+
+ @Test
+ public void updateState_noBackgroundProcessSet_shouldSetPreferenceToNoBackgroundProcess()
+ throws RemoteException {
+ when(mActivityManager.getProcessLimit()).thenReturn(Integer.valueOf(mListValues[1]));
+
+ mController.updateState(mPreference);
+
+ verify(mPreference).setValue(mListValues[1]);
+ verify(mPreference).setSummary(mListSummaries[1]);
+ }
+
+ @Test
+ public void updateState_1ProcessSet_shouldSetPreference1BackgroundProcess()
+ throws RemoteException {
+ when(mActivityManager.getProcessLimit()).thenReturn(Integer.valueOf(mListValues[2]));
+
+ mController.updateState(mPreference);
+
+ verify(mPreference).setValue(mListValues[2]);
+ verify(mPreference).setSummary(mListSummaries[2]);
+ }
+
+ @Test
+ public void updateState_veryHighLimit_shouldDefaultToStandardLimit() throws RemoteException {
+ when(mActivityManager.getProcessLimit()).thenReturn(Integer.MAX_VALUE);
+
+ mController.updateState(mPreference);
+
+ verify(mPreference).setValue(mListValues[0]);
+ verify(mPreference).setSummary(mListSummaries[0]);
+ }
+
+ @Test
+ public void onDeveloperOptionsSwitchDisabled_shouldDisableAndResetPreference()
+ throws RemoteException {
+ mController.onDeveloperOptionsSwitchDisabled();
+
+ verify(mPreference).setEnabled(false);
+ verify(mActivityManager).setProcessLimit(-1);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceControllerTest.java
index 4ac90a7..7fea1f0 100644
--- a/tests/robotests/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/BluetoothLeAudioAllowListPreferenceControllerTest.java
@@ -18,14 +18,13 @@
import static android.bluetooth.BluetoothStatusCodes.FEATURE_SUPPORTED;
-import static com.android.settings.development.BluetoothLeAudioAllowListPreferenceController
- .BYPASS_LE_AUDIO_ALLOWLIST_PROPERTY;
+import static com.android.settings.development.BluetoothLeAudioAllowListPreferenceController.BYPASS_LE_AUDIO_ALLOWLIST_PROPERTY;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.when;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import android.bluetooth.BluetoothAdapter;
import android.content.Context;
@@ -48,8 +47,6 @@
@Mock
private PreferenceScreen mPreferenceScreen;
@Mock
- private DevelopmentSettingsDashboardFragment mFragment;
- @Mock
private BluetoothAdapter mBluetoothAdapter;
@Mock
private SwitchPreference mPreference;
@@ -60,7 +57,7 @@
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
- mController = spy(new BluetoothLeAudioAllowListPreferenceController(mContext, mFragment));
+ mController = spy(new BluetoothLeAudioAllowListPreferenceController(mContext));
when(mPreferenceScreen.findPreference(mController.getPreferenceKey()))
.thenReturn(mPreference);
mController.mBluetoothAdapter = mBluetoothAdapter;
diff --git a/tests/robotests/src/com/android/settings/development/DevelopmentMemtagPagePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/DevelopmentMemtagPagePreferenceControllerTest.java
index 7989682..3837634 100644
--- a/tests/robotests/src/com/android/settings/development/DevelopmentMemtagPagePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/DevelopmentMemtagPagePreferenceControllerTest.java
@@ -27,7 +27,6 @@
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.mockito.Mock;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
@@ -40,8 +39,6 @@
private DevelopmentMemtagPagePreferenceController mController;
private Context mContext;
-
- @Mock private DevelopmentSettingsDashboardFragment mFragment;
private static final String FRAGMENT_TAG = "memtag_page";
@Before
@@ -49,7 +46,7 @@
ShadowSystemProperties.override(mMemtagSupportedProperty, "true");
mContext = RuntimeEnvironment.application;
- mController = new DevelopmentMemtagPagePreferenceController(mContext, mFragment);
+ mController = new DevelopmentMemtagPagePreferenceController(mContext);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/display/EvenDimmerPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/EvenDimmerPreferenceControllerTest.java
index e350587..11c4a79 100644
--- a/tests/robotests/src/com/android/settings/display/EvenDimmerPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/display/EvenDimmerPreferenceControllerTest.java
@@ -18,7 +18,6 @@
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
-import static com.android.settings.core.BasePreferenceController.DISABLED_DEPENDENT_SETTING;
import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE;
import static com.google.common.truth.Truth.assertThat;
@@ -36,7 +35,6 @@
import com.android.server.display.feature.flags.Flags;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -65,7 +63,7 @@
@RequiresFlagsDisabled(Flags.FLAG_EVEN_DIMMER)
@Test
- public void testGetAvailabilityStatus_flagOffconfigTrue() {
+ public void testGetAvailabilityStatus_flagOffConfigTrue() {
when(mContext.getResources()).thenReturn(mResources);
when(mResources.getBoolean(
com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(true);
@@ -86,7 +84,6 @@
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(0.0f); // false
}
- @Ignore("b/331324279")
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
@Test
public void testGetAvailabilityStatus_flagOnConfigTrue() {
@@ -99,10 +96,24 @@
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
}
- @Ignore("b/331324279")
+
+ @RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
+ @Test
+ public void testGetAvailabilityStatus_flagOnConfigFalse() {
+ when(mContext.getResources()).thenReturn(mResources);
+ when(mResources.getBoolean(
+ com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(false);
+ // setup
+ mController = new EvenDimmerPreferenceController(mContext, "key");
+
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE);
+ }
+
@Test
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
public void testSetChecked_enable() throws Settings.SettingNotFoundException {
+ when(mResources.getBoolean(
+ com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(true);
mController.setChecked(true);
assertThat(Settings.Secure.getFloat(mContext.getContentResolver(),
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(1.0f); // true
@@ -111,23 +122,10 @@
@Test
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
public void testSetChecked_disable() throws Settings.SettingNotFoundException {
+ when(mResources.getBoolean(
+ com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(true);
mController.setChecked(false);
assertThat(Settings.Secure.getFloat(mContext.getContentResolver(),
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(0.0f); // false
}
-
- @Ignore("b/331324279")
- @Test
- @RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
- public void testDisabledIfAutobrightnessIsOff() {
- // Autobrightness off
- Settings.System.putInt(mContext.getContentResolver(),
- Settings.System.SCREEN_BRIGHTNESS_MODE,
- Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
- // Try turn controller on
- mController.setChecked(true);
-
- assertThat(mController.getAvailabilityStatus()).isEqualTo(
- DISABLED_DEPENDENT_SETTING);
- }
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java
index c987bcd..b949a3e 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java
@@ -19,6 +19,7 @@
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoInteractions;
@@ -278,6 +279,7 @@
@Test
public void updateBatteryStatus_customizedWirelessChargingLabel_customizedLabel() {
var label = "Customized Wireless Charging Label";
+ var contentDescription = "Customized Wireless Charging description";
var batteryInfo =
arrangeUpdateBatteryStatusTestWithRemainingLabel(
/* remainingLabel= */ "Full by 1:30 PM",
@@ -288,14 +290,19 @@
when(mFactory.batterySettingsFeatureProvider.getWirelessChargingLabel(
eq(mContext), any(BatteryInfo.class)))
.thenReturn(label);
+ when(mFactory.batterySettingsFeatureProvider.getWirelessChargingContentDescription(
+ eq(mContext), any(BatteryInfo.class)))
+ .thenReturn(contentDescription);
mController.updateBatteryStatus(/* label= */ null, batteryInfo);
verify(mBatteryUsageProgressBarPref).setBottomSummary(label);
+ verify(mBatteryUsageProgressBarPref).setBottomSummaryContentDescription(contentDescription);
}
@Test
public void updateBatteryStatus_noCustomizedWirelessChargingLabel_statusWithRemainingLabel() {
+ var contentDescription = "Customized Wireless Charging description";
var batteryInfo =
arrangeUpdateBatteryStatusTestWithRemainingLabel(
/* remainingLabel= */ "Full by 1:30 PM",
@@ -308,10 +315,13 @@
mController.updateBatteryStatus(/* label= */ null, batteryInfo);
verify(mBatteryUsageProgressBarPref).setBottomSummary(expectedChargingString);
+ verify(mBatteryUsageProgressBarPref, never())
+ .setBottomSummaryContentDescription(contentDescription);
}
@Test
public void updateBatteryStatus_noCustomizedWirelessChargingLabel_v1StatusWithRemainingLabel() {
+ var contentDescription = "Customized Wireless Charging description";
var batteryInfo =
arrangeUpdateBatteryStatusTestWithRemainingLabel(
/* remainingLabel= */ "1 hr, 40 min left until full",
@@ -324,6 +334,8 @@
mController.updateBatteryStatus(/* label= */ null, batteryInfo);
verify(mBatteryUsageProgressBarPref).setBottomSummary(expectedChargingString);
+ verify(mBatteryUsageProgressBarPref, never())
+ .setBottomSummaryContentDescription(contentDescription);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImplTest.java
index 9f04892..8ddf6cb 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatterySettingsFeatureProviderImplTest.java
@@ -77,6 +77,12 @@
}
@Test
+ public void getWirelessChargingContentDescription_returnNull() {
+ assertThat(mImpl.getWirelessChargingContentDescription(mContext, new BatteryInfo()))
+ .isNull();
+ }
+
+ @Test
public void getWirelessChargingRemainingLabel_returnNull() {
assertThat(mImpl.getWirelessChargingRemainingLabel(mContext, 1000L, 1000L)).isNull();
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java
index 354afd0..6b32ff5 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java
@@ -78,6 +78,11 @@
}
@Test
+ public void isForceExpireAppOptimizationModeEnabled_returnFalse() {
+ assertThat(mPowerFeatureProvider.isForceExpireAppOptimizationModeEnabled()).isFalse();
+ }
+
+ @Test
public void isAppOptimizationModeLogged_returnFalse() {
assertThat(mPowerFeatureProvider.isAppOptimizationModeLogged()).isFalse();
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java
index b5cb446..a3b35be 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java
@@ -703,4 +703,26 @@
/* taskRootPackageName= */ ""))
.isEqualTo(packageName);
}
+
+ @Test
+ public void decodeBatteryReattribute_returnExpectedResult() {
+ final BatteryReattribute batteryReattribute =
+ BatteryReattribute.newBuilder()
+ .setTimestampStart(100L)
+ .setTimestampEnd(200L)
+ .putReattributeData(1001, 0.2f)
+ .putReattributeData(2001, 0.8f)
+ .build();
+
+ final BatteryReattribute decodeResult = ConvertUtils.decodeBatteryReattribute(
+ ConvertUtils.encodeBatteryReattribute(batteryReattribute));
+
+ assertThat(decodeResult.getTimestampStart()).isEqualTo(100L);
+ assertThat(decodeResult.getTimestampEnd()).isEqualTo(200L);
+ final Map<Integer, Float> reattributeDataMap = decodeResult.getReattributeDataMap();
+ // Verify the reattribute data in the map.
+ assertThat(reattributeDataMap).hasSize(2);
+ assertThat(reattributeDataMap.get(1001)).isEqualTo(0.2f);
+ assertThat(reattributeDataMap.get(2001)).isEqualTo(0.8f);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeControllerTest.java
index 4bac42a..9a2ee91 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ScreenOnTimeControllerTest.java
@@ -25,9 +25,13 @@
import android.content.Context;
import android.content.res.Resources;
import android.os.LocaleList;
+import android.text.SpannableString;
import androidx.preference.PreferenceCategory;
+import com.android.settings.R;
+import com.android.settings.Utils;
+
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -45,6 +49,7 @@
private Context mContext;
private ScreenOnTimeController mScreenOnTimeController;
+ private ArgumentCaptor<SpannableString> mStringCaptor;
@Mock private PreferenceCategory mRootPreference;
@Mock private TextViewPreference mScreenOnTimeTextPreference;
@@ -56,6 +61,7 @@
org.robolectric.shadows.ShadowSettings.set24HourTimeFormat(false);
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
mContext = spy(RuntimeEnvironment.application);
+ mStringCaptor = ArgumentCaptor.forClass(SpannableString.class);
final Resources resources = spy(mContext.getResources());
resources.getConfiguration().setLocales(new LocaleList(new Locale("en_US")));
doReturn(resources).when(mContext).getResources();
@@ -63,12 +69,14 @@
mScreenOnTimeController.mPrefContext = mContext;
mScreenOnTimeController.mRootPreference = mRootPreference;
mScreenOnTimeController.mScreenOnTimeTextPreference = mScreenOnTimeTextPreference;
+ mScreenOnTimeController.mScreenTimeCategoryLastFullChargeText =
+ resources.getString(R.string.screen_time_category_last_full_charge);
}
@Test
- public void handleSceenOnTimeUpdated_nullScreenOnTime_hideAllPreference() {
- mScreenOnTimeController.handleSceenOnTimeUpdated(
- /* screenOnTime= */ null, "Friday 12:00 to now");
+ public void handleScreenOnTimeUpdated_nullScreenOnTime_hideAllPreference() {
+ mScreenOnTimeController.handleScreenOnTimeUpdated(
+ /* screenOnTime= */ null, "Friday 12:00 - now", "Friday 12:00 to now");
verify(mRootPreference).setVisible(false);
verify(mScreenOnTimeTextPreference).setVisible(false);
@@ -76,18 +84,32 @@
@Test
public void showCategoryTitle_null_sinceLastFullCharge() {
- mScreenOnTimeController.showCategoryTitle(null);
+ mScreenOnTimeController.showCategoryTitle(null, null);
- verify(mRootPreference).setTitle("Screen time since last full charge");
+ verify(mRootPreference).setTitle(mStringCaptor.capture());
verify(mRootPreference).setVisible(true);
+ assertThat(mStringCaptor.getValue().toString())
+ .isEqualTo(
+ Utils.createAccessibleSequence(
+ mScreenOnTimeController
+ .mScreenTimeCategoryLastFullChargeText,
+ mScreenOnTimeController
+ .mScreenTimeCategoryLastFullChargeText)
+ .toString());
}
@Test
public void showCategoryTitle_notNull_slotTimestamp() {
- mScreenOnTimeController.showCategoryTitle("Friday 12:00 to now");
+ mScreenOnTimeController.showCategoryTitle("Friday 12:00 - now", "Friday 12:00 to now");
- verify(mRootPreference).setTitle("Screen time for Friday 12:00 to now");
+ verify(mRootPreference).setTitle(mStringCaptor.capture());
verify(mRootPreference).setVisible(true);
+ assertThat(mStringCaptor.getValue().toString())
+ .isEqualTo(
+ Utils.createAccessibleSequence(
+ "Screen time for Friday 12:00 - now",
+ "Screen time for Friday 12:00 to now")
+ .toString());
}
@Test
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/bugreport/LogUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/bugreport/LogUtilsTest.java
new file mode 100644
index 0000000..bf2b191
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/bugreport/LogUtilsTest.java
@@ -0,0 +1,102 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage.bugreport;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.content.Context;
+
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.fuelgauge.batteryusage.BatteryReattribute;
+import com.android.settings.fuelgauge.batteryusage.db.BatteryReattributeDao;
+import com.android.settings.fuelgauge.batteryusage.db.BatteryReattributeEntity;
+import com.android.settings.fuelgauge.batteryusage.db.BatteryStateDatabase;
+import com.android.settings.testutils.BatteryTestUtils;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.robolectric.RobolectricTestRunner;
+
+import java.io.PrintWriter;
+import java.io.StringWriter;
+
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+@RunWith(RobolectricTestRunner.class)
+public final class LogUtilsTest {
+
+ private StringWriter mTestStringWriter;
+ private PrintWriter mTestPrintWriter;
+ private Context mContext;
+ private BatteryStateDatabase mDatabase;
+ private BatteryReattributeDao mBatteryReattributeDao;
+
+ @Before
+ public void setUp() {
+ mContext = ApplicationProvider.getApplicationContext();
+ mTestStringWriter = new StringWriter();
+ mTestPrintWriter = new PrintWriter(mTestStringWriter);
+ mDatabase = BatteryTestUtils.setUpBatteryStateDatabase(mContext);
+ mBatteryReattributeDao = mDatabase.batteryReattributeDao();
+ }
+
+ @After
+ public void cleanUp() {
+ mBatteryReattributeDao.clearAll();
+ }
+
+ @Test
+ public void dumpBatteryReattributeDatabaseHist_noData_printExpectedResult() {
+ LogUtils.dumpBatteryReattributeDatabaseHist(mBatteryReattributeDao, mTestPrintWriter);
+
+ assertThat(mTestStringWriter.toString())
+ .contains("BatteryReattribute DatabaseHistory:");
+ }
+
+ @Test
+ public void dumpBatteryReattributeDatabaseHist_printExpectedResult() {
+ final long currentTimeMillis = System.currentTimeMillis();
+ // Insert the first testing data.
+ final BatteryReattribute batteryReattribute1 =
+ BatteryReattribute.newBuilder()
+ .setTimestampStart(currentTimeMillis - 20000)
+ .setTimestampEnd(currentTimeMillis - 10000)
+ .putReattributeData(1001, 0.1f)
+ .putReattributeData(1002, 0.99f)
+ .build();
+ mBatteryReattributeDao.insert(new BatteryReattributeEntity(batteryReattribute1));
+ // Insert the second testing data.
+ final BatteryReattribute batteryReattribute2 =
+ BatteryReattribute.newBuilder()
+ .setTimestampStart(currentTimeMillis - 40000)
+ .setTimestampEnd(currentTimeMillis - 20000)
+ .putReattributeData(1003, 1f)
+ .build();
+ mBatteryReattributeDao.insert(new BatteryReattributeEntity(batteryReattribute2));
+
+ LogUtils.dumpBatteryReattributeDatabaseHist(mBatteryReattributeDao, mTestPrintWriter);
+
+ final String result = mTestStringWriter.toString();
+ assertThat(result).contains("BatteryReattribute DatabaseHistory:");
+ assertThat(result).contains(batteryReattribute1.toString());
+ assertThat(result).contains(batteryReattribute2.toString());
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeDaoTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeDaoTest.java
new file mode 100644
index 0000000..8cb0e12
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeDaoTest.java
@@ -0,0 +1,118 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage.db;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.content.Context;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.testutils.BatteryTestUtils;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+
+import java.util.List;
+
+/** Tests for {@link BatteryReattributeDao}. */
+@RunWith(RobolectricTestRunner.class)
+public final class BatteryReattributeDaoTest {
+
+ private Context mContext;
+ private BatteryStateDatabase mDatabase;
+ private BatteryReattributeDao mBatteryReattributeDao;
+
+ @Before
+ public void setUp() {
+ mContext = ApplicationProvider.getApplicationContext();
+ mDatabase = BatteryTestUtils.setUpBatteryStateDatabase(mContext);
+ mBatteryReattributeDao = mDatabase.batteryReattributeDao();
+ insert(100L, 200L, "reattributeData1");
+ insert(300L, 400L, "reattributeData3");
+ insert(200L, 300L, "reattributeData2");
+ insert(400L, 500L, "reattributeData4");
+ // Ensure there was data inserted into the database.
+ assertThat(getAllEntityData()).isNotEmpty();
+ }
+
+ @Test
+ public void getAllAfter_returnExpectedEntityData() {
+ final List<BatteryReattributeEntity> entityDataList =
+ mBatteryReattributeDao.getAllAfter(/* timestampStart= */ 300L);
+
+ assertThat(entityDataList).hasSize(2);
+ assertEntity(entityDataList.get(0), 400L, 500L, "reattributeData4");
+ assertEntity(entityDataList.get(1), 300L, 400L, "reattributeData3");
+ }
+
+ @Test
+ public void clearAll_clearAllData() {
+ mBatteryReattributeDao.clearAll();
+
+ assertThat(getAllEntityData()).isEmpty();
+ }
+
+ @Test
+ public void clearAllBefore_clearAllExpectedData() {
+ mBatteryReattributeDao.clearAllBefore(/* timestampStart= */ 300L);
+
+ final List<BatteryReattributeEntity> entityDataList = getAllEntityData();
+ assertThat(entityDataList).hasSize(1);
+ assertEntity(entityDataList.get(0), 400L, 500L, "reattributeData4");
+ }
+
+ @Test
+ public void clearAllAfter_clearAllExpectedData() {
+ mBatteryReattributeDao.clearAllAfter(/* timestampStart= */ 300L);
+
+ final List<BatteryReattributeEntity> entityDataList = getAllEntityData();
+ assertThat(entityDataList).hasSize(2);
+ assertEntity(entityDataList.get(0), 200L, 300L, "reattributeData2");
+ assertEntity(entityDataList.get(1), 100L, 200L, "reattributeData1");
+ }
+
+ @Test
+ public void insert_samePrimaryKeyEntityData_replaceIntoNewEntityData() {
+ // Verify the original data before update.
+ assertEntity(getAllEntityData().get(0), 400L, 500L, "reattributeData4");
+
+ insert(400L, 600L, "reattribute4Update");
+
+ // Verify the new update entity data.
+ assertEntity(getAllEntityData().get(0), 400L, 600L, "reattribute4Update");
+ }
+
+ private void insert(long timestampStart, long timestampEnd, String reattributeData) {
+ mBatteryReattributeDao.insert(
+ new BatteryReattributeEntity(
+ timestampStart, timestampEnd, reattributeData));
+ }
+
+ private List<BatteryReattributeEntity> getAllEntityData() {
+ return mBatteryReattributeDao.getAllAfter(/* timestampStart= */ 0L);
+ }
+
+ private static void assertEntity(BatteryReattributeEntity entity, long timestampStart,
+ long timestampEnd, String reattributeData) {
+ assertThat(entity.timestampStart).isEqualTo(timestampStart);
+ assertThat(entity.timestampEnd).isEqualTo(timestampEnd);
+ assertThat(entity.reattributeData).isEqualTo(reattributeData);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeEntityTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeEntityTest.java
new file mode 100644
index 0000000..04912aa
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/db/BatteryReattributeEntityTest.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage.db;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import com.android.settings.fuelgauge.batteryusage.BatteryReattribute;
+import com.android.settings.fuelgauge.batteryusage.ConvertUtils;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+
+/** Tests for {@link BatteryReattributeEntity}. */
+@RunWith(RobolectricTestRunner.class)
+public final class BatteryReattributeEntityTest {
+
+ @Test
+ public void constructor_createExpectedData() {
+ final BatteryReattribute batteryReattribute =
+ BatteryReattribute.newBuilder()
+ .setTimestampStart(100L)
+ .setTimestampEnd(200L)
+ .putReattributeData(1001, 0.2f)
+ .putReattributeData(2001, 0.8f)
+ .build();
+
+ final BatteryReattributeEntity batteryReattributeEntity =
+ new BatteryReattributeEntity(batteryReattribute);
+
+ assertThat(batteryReattributeEntity.timestampStart)
+ .isEqualTo(batteryReattribute.getTimestampStart());
+ assertThat(batteryReattributeEntity.timestampEnd)
+ .isEqualTo(batteryReattribute.getTimestampEnd());
+ // Verify the BatteryReattribute data.
+ final BatteryReattribute decodeResult =
+ ConvertUtils.decodeBatteryReattribute(batteryReattributeEntity.reattributeData);
+ assertThat(decodeResult).isEqualTo(batteryReattribute);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/homepage/contextualcards/conditional/DndConditionalCardControllerTest.java b/tests/robotests/src/com/android/settings/homepage/contextualcards/conditional/DndConditionalCardControllerTest.java
index dcd0963..6dca4fc 100644
--- a/tests/robotests/src/com/android/settings/homepage/contextualcards/conditional/DndConditionalCardControllerTest.java
+++ b/tests/robotests/src/com/android/settings/homepage/contextualcards/conditional/DndConditionalCardControllerTest.java
@@ -31,7 +31,6 @@
import com.android.settings.homepage.contextualcards.ContextualCard;
import com.android.settings.testutils.shadow.ShadowNotificationManager;
-import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -92,35 +91,18 @@
private ZenModeConfig getCustomConfig() {
final ZenModeConfig config = new ZenModeConfig();
- // Some sounds allowed
- config.allowAlarms = true;
- config.allowMedia = false;
- config.allowSystem = false;
- config.allowCalls = true;
- config.allowRepeatCallers = true;
- config.allowMessages = false;
- config.allowReminders = false;
- config.allowEvents = false;
- config.areChannelsBypassingDnd = false;
- config.allowCallsFrom = ZenModeConfig.SOURCE_ANYONE;
- config.allowMessagesFrom = ZenModeConfig.SOURCE_ANYONE;
- config.suppressedVisualEffects = 0;
+ config.applyNotificationPolicy(new NotificationManager.Policy(
+ NotificationManager.Policy.PRIORITY_CATEGORY_ALARMS
+ | NotificationManager.Policy.PRIORITY_CATEGORY_REPEAT_CALLERS
+ | NotificationManager.Policy.PRIORITY_CATEGORY_CALLS,
+ NotificationManager.Policy.PRIORITY_SENDERS_ANY, 0));
return config;
}
private ZenModeConfig getMutedAllConfig() {
final ZenModeConfig config = new ZenModeConfig();
- // No sounds allowed
- config.allowAlarms = false;
- config.allowMedia = false;
- config.allowSystem = false;
- config.allowCalls = false;
- config.allowRepeatCallers = false;
- config.allowMessages = false;
- config.allowReminders = false;
- config.allowEvents = false;
+ config.applyNotificationPolicy(new NotificationManager.Policy(0, 0, 0));
config.areChannelsBypassingDnd = false;
- config.suppressedVisualEffects = 0;
return config;
}
}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/IconOptionsProviderImplTest.java b/tests/robotests/src/com/android/settings/notification/modes/IconOptionsProviderImplTest.java
new file mode 100644
index 0000000..d5430b1
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/IconOptionsProviderImplTest.java
@@ -0,0 +1,64 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import static com.google.common.truth.Truth.assertThat;
+import static com.google.common.truth.Truth.assertWithMessage;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+
+import com.android.settings.R;
+
+import com.google.common.collect.ImmutableList;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.RuntimeEnvironment;
+
+@RunWith(RobolectricTestRunner.class)
+public class IconOptionsProviderImplTest {
+
+ private static final int EXPECTED_NUMBER_OF_ICON_OPTIONS = 9;
+
+ @Test
+ public void iconResources_correctResources() {
+ Context context = RuntimeEnvironment.getApplication();
+ String[] descriptions = context.getResources().getStringArray(
+ R.array.zen_mode_icon_options_descriptions);
+ assertThat(descriptions).hasLength(EXPECTED_NUMBER_OF_ICON_OPTIONS);
+
+ try (TypedArray icons = context.getResources().obtainTypedArray(
+ R.array.zen_mode_icon_options)) {
+ assertThat(icons.length()).isEqualTo(EXPECTED_NUMBER_OF_ICON_OPTIONS);
+ }
+ }
+
+ @Test
+ public void getIcons_returnsList() {
+ Context context = RuntimeEnvironment.getApplication();
+ IconOptionsProviderImpl provider = new IconOptionsProviderImpl(context);
+
+ ImmutableList<IconOptionsProvider.IconInfo> iconOptions = provider.getIcons();
+ assertThat(iconOptions).hasSize(EXPECTED_NUMBER_OF_ICON_OPTIONS);
+ for (int i = 0; i < iconOptions.size(); i++) {
+ assertWithMessage("Checking description of item #" + i)
+ .that(iconOptions.get(i).description()).isNotEmpty();
+ }
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java
index 67e1f9f..8205f3a 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java
@@ -16,29 +16,50 @@
package com.android.settings.notification.modes;
+import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
+
+import static com.android.settings.notification.modes.ZenModeFragmentBase.MODE_ID;
+
+import static com.google.common.truth.Truth.assertThat;
+
import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import android.app.AutomaticZenRule;
import android.app.Flags;
import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
import android.net.Uri;
+import android.os.Bundle;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+import androidx.fragment.app.Fragment;
import androidx.preference.Preference;
+import com.android.settings.SettingsActivity;
+import com.android.settingslib.applications.ApplicationsState;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+import com.android.settingslib.widget.SelectorWithWidgetPreference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
+import java.util.ArrayList;
+import java.util.List;
+
@RunWith(RobolectricTestRunner.class)
@EnableFlags(Flags.FLAG_MODES_UI)
public final class ZenModeAppsLinkPreferenceControllerTest {
@@ -47,7 +68,15 @@
private Context mContext;
@Mock
- private ZenModesBackend mBackend;
+ private ZenModesBackend mZenModesBackend;
+
+ @Mock
+ private ZenHelperBackend mHelperBackend;
+
+ @Mock
+ private ApplicationsState mApplicationsState;
+ @Mock
+ private ApplicationsState.Session mSession;
@Rule
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
@@ -56,21 +85,108 @@
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
+ when(mApplicationsState.newSession(any(), any())).thenReturn(mSession);
mController = new ZenModeAppsLinkPreferenceController(
- mContext, "controller_key", mBackend);
+ mContext, "controller_key", mock(Fragment.class), mApplicationsState,
+ mZenModesBackend, mHelperBackend);
+ }
+
+ private ApplicationsState.AppEntry createAppEntry(String packageName, String label) {
+ ApplicationsState.AppEntry entry = mock(ApplicationsState.AppEntry.class);
+ entry.info = new ApplicationInfo();
+ entry.info.packageName = packageName;
+ entry.label = label;
+ entry.info.uid = 0;
+ return entry;
+ }
+
+ private ZenMode createPriorityChannelsZenMode() {
+ return new ZenMode("id", new AutomaticZenRule.Builder("Bedtime",
+ Uri.parse("bed"))
+ .setType(AutomaticZenRule.TYPE_BEDTIME)
+ .setInterruptionFilter(INTERRUPTION_FILTER_PRIORITY)
+ .setZenPolicy(new ZenPolicy.Builder()
+ .allowChannels(ZenPolicy.CHANNEL_POLICY_PRIORITY)
+ .build())
+ .build(), true);
}
@Test
- @EnableFlags(Flags.FLAG_MODES_UI)
- public void testHasSummary() {
- Preference pref = mock(Preference.class);
- ZenMode zenMode = new ZenMode("id",
- new AutomaticZenRule.Builder("Driving", Uri.parse("drive"))
- .setType(AutomaticZenRule.TYPE_DRIVING)
- .setZenPolicy(new ZenPolicy.Builder().allowAllSounds().build())
- .build(), true);
- mController.updateZenMode(pref, zenMode);
- verify(pref).setSummary(any());
+ public void testIsAvailable() {
+ assertThat(mController.isAvailable()).isTrue();
}
+ @Test
+ public void testUpdateSetsIntent() {
+ // Creates the preference
+ SelectorWithWidgetPreference preference = mock(SelectorWithWidgetPreference.class);
+ // Create a zen mode that allows priority channels to breakthrough.
+ ZenMode zenMode = createPriorityChannelsZenMode();
+
+ // Capture the intent
+ ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
+ mController.updateState((Preference) preference, zenMode);
+ verify(preference).setIntent(captor.capture());
+ Intent launcherIntent = captor.getValue();
+
+ assertThat(launcherIntent.getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT))
+ .isEqualTo("com.android.settings.notification.modes.ZenModeAppsFragment");
+ assertThat(launcherIntent.getIntExtra(MetricsFeatureProvider.EXTRA_SOURCE_METRICS_CATEGORY,
+ -1)).isEqualTo(0);
+
+ Bundle bundle = launcherIntent.getBundleExtra(
+ SettingsActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS);
+ assertThat(bundle).isNotNull();
+ assertThat(bundle.getString(MODE_ID)).isEqualTo("id");
+ }
+
+ @Test
+ public void testGetAppsBypassingDnd() {
+ ApplicationsState.AppEntry entry = createAppEntry("test", "testLabel");
+ ApplicationsState.AppEntry entryConv = createAppEntry("test_conv", "test_convLabel");
+ List<ApplicationsState.AppEntry> appEntries = List.of(entry, entryConv);
+
+ when(mHelperBackend.getPackagesBypassingDnd(mContext.getUserId(),
+ false)).thenReturn(List.of("test"));
+
+ assertThat(mController.getAppsBypassingDnd(appEntries)).containsExactly("testLabel");
+ }
+
+ @Test
+ public void testUpdateTriggersRebuild() {
+ // Creates the preference
+ SelectorWithWidgetPreference preference = mock(SelectorWithWidgetPreference.class);
+ // Create a zen mode that allows priority channels to breakthrough.
+ ZenMode zenMode = createPriorityChannelsZenMode();
+
+ // Create some applications.
+ ArrayList<ApplicationsState.AppEntry> appEntries =
+ new ArrayList<ApplicationsState.AppEntry>();
+ appEntries.add(createAppEntry("test", "pkgLabel"));
+
+ when(mHelperBackend.getPackagesBypassingDnd(
+ mContext.getUserId(), false))
+ .thenReturn(List.of("test"));
+
+ // Updates the preference with the zen mode. We expect that this causes the app session
+ // to trigger a rebuild.
+ mController.updateZenMode((Preference) preference, zenMode);
+ verify(mSession).rebuild(any(), any(), eq(false));
+
+ // Manually triggers the callback that will happen on rebuild.
+ mController.mAppSessionCallbacks.onRebuildComplete(appEntries);
+ verify(preference).setSummary("pkgLabel can interrupt");
+ }
+
+ @Test
+ public void testOnPackageListChangedTriggersRebuild() {
+ mController.mAppSessionCallbacks.onPackageListChanged();
+ verify(mSession).rebuild(any(), any(), eq(false));
+ }
+
+ @Test
+ public void testOnLoadEntriesCompletedTriggersRebuild() {
+ mController.mAppSessionCallbacks.onLoadEntriesCompleted();
+ verify(mSession).rebuild(any(), any(), eq(false));
+ }
}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceControllerTest.java
index 04d625a..94c2d8a 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeCallsLinkPreferenceControllerTest.java
@@ -17,7 +17,7 @@
package com.android.settings.notification.modes;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
-import static org.junit.Assert.assertTrue;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -29,7 +29,9 @@
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+
import androidx.preference.Preference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -38,8 +40,6 @@
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
-import org.robolectric.shadows.ShadowApplication;
-import org.robolectric.util.ReflectionHelpers;
@RunWith(RobolectricTestRunner.class)
public final class ZenModeCallsLinkPreferenceControllerTest {
@@ -49,10 +49,9 @@
@Rule
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
-
private Context mContext;
- @Mock
- private ZenModesBackend mBackend;
+ @Mock private ZenModesBackend mBackend;
+ @Mock private ZenHelperBackend mHelperBackend;
@Before
public void setup() {
@@ -61,7 +60,7 @@
mContext = RuntimeEnvironment.application;
mController = new ZenModeCallsLinkPreferenceController(
- mContext, "something", mBackend);
+ mContext, "something", mBackend, mHelperBackend);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceControllerTest.java
index 9d33b0b..62aa046 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeDisplayLinkPreferenceControllerTest.java
@@ -17,6 +17,7 @@
package com.android.settings.notification.modes;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -28,7 +29,9 @@
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+
import androidx.preference.Preference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -47,8 +50,8 @@
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
private Context mContext;
- @Mock
- private ZenModesBackend mBackend;
+ @Mock private ZenModesBackend mBackend;
+ @Mock private ZenHelperBackend mHelperBackend;
@Before
public void setup() {
@@ -57,7 +60,7 @@
mContext = RuntimeEnvironment.application;
mController = new ZenModeDisplayLinkPreferenceController(
- mContext, "something", mBackend);
+ mContext, "something", mBackend, mHelperBackend);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeExitAtAlarmPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeExitAtAlarmPreferenceControllerTest.java
new file mode 100644
index 0000000..c1c4d61
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeExitAtAlarmPreferenceControllerTest.java
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+
+import android.app.AutomaticZenRule;
+import android.content.Context;
+import android.service.notification.ZenModeConfig;
+
+import androidx.preference.TwoStatePreference;
+import androidx.test.core.app.ApplicationProvider;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+
+import java.util.Calendar;
+
+@RunWith(RobolectricTestRunner.class)
+public class ZenModeExitAtAlarmPreferenceControllerTest {
+ private Context mContext;
+ @Mock
+ private ZenModesBackend mBackend;
+
+ private ZenModeExitAtAlarmPreferenceController mPrefController;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mContext = ApplicationProvider.getApplicationContext();
+ mPrefController = new ZenModeExitAtAlarmPreferenceController(mContext, "exit_at_alarm",
+ mBackend);
+ }
+
+ @Test
+ public void testUpdateState() {
+ TwoStatePreference preference = mock(TwoStatePreference.class);
+
+ // previously: don't exit at alarm
+ ZenModeConfig.ScheduleInfo scheduleInfo = new ZenModeConfig.ScheduleInfo();
+ scheduleInfo.days = new int[] { Calendar.MONDAY };
+ scheduleInfo.startHour = 1;
+ scheduleInfo.endHour = 2;
+ scheduleInfo.exitAtAlarm = false;
+
+ ZenMode mode = new ZenMode("id",
+ new AutomaticZenRule.Builder("name",
+ ZenModeConfig.toScheduleConditionId(scheduleInfo)).build(),
+ true); // is active
+
+ // need to call updateZenMode for the first call
+ mPrefController.updateZenMode(preference, mode);
+ verify(preference).setChecked(false);
+
+ // Now update state after changing exitAtAlarm
+ scheduleInfo.exitAtAlarm = true;
+ mode.getRule().setConditionId(ZenModeConfig.toScheduleConditionId(scheduleInfo));
+
+ // now can just call updateState
+ mPrefController.updateState(preference, mode);
+ verify(preference).setChecked(true);
+ }
+
+ @Test
+ public void testOnPreferenceChange() {
+ TwoStatePreference preference = mock(TwoStatePreference.class);
+
+ // previously: exit at alarm
+ ZenModeConfig.ScheduleInfo scheduleInfo = new ZenModeConfig.ScheduleInfo();
+ scheduleInfo.days = new int[] { Calendar.MONDAY };
+ scheduleInfo.startHour = 1;
+ scheduleInfo.endHour = 2;
+ scheduleInfo.exitAtAlarm = true;
+
+ ZenMode mode = new ZenMode("id",
+ new AutomaticZenRule.Builder("name",
+ ZenModeConfig.toScheduleConditionId(scheduleInfo)).build(),
+ true); // is active
+ mPrefController.updateZenMode(preference, mode);
+
+ // turn off exit at alarm
+ mPrefController.onPreferenceChange(preference, false);
+ ArgumentCaptor<ZenMode> captor = ArgumentCaptor.forClass(ZenMode.class);
+ verify(mBackend).updateMode(captor.capture());
+ ZenModeConfig.ScheduleInfo newSchedule = ZenModeConfig.tryParseScheduleConditionId(
+ captor.getValue().getRule().getConditionId());
+ assertThat(newSchedule.exitAtAlarm).isFalse();
+
+ // other properties remain the same
+ assertThat(newSchedule.startHour).isEqualTo(1);
+ assertThat(newSchedule.endHour).isEqualTo(2);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeIconPickerListPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeIconPickerListPreferenceControllerTest.java
new file mode 100644
index 0000000..ba9a6b8
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeIconPickerListPreferenceControllerTest.java
@@ -0,0 +1,107 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.AutomaticZenRule;
+import android.content.Context;
+import android.net.Uri;
+
+import androidx.annotation.NonNull;
+import androidx.preference.PreferenceScreen;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settingslib.widget.LayoutPreference;
+
+import com.google.common.collect.ImmutableList;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.RuntimeEnvironment;
+
+@RunWith(RobolectricTestRunner.class)
+public class ZenModeIconPickerListPreferenceControllerTest {
+
+ private static final ZenMode ZEN_MODE = new ZenMode(
+ "mode_id",
+ new AutomaticZenRule.Builder("mode name", Uri.parse("mode")).build(),
+ /* isActive= */ false);
+
+ private ZenModesBackend mBackend;
+ private ZenModeIconPickerListPreferenceController mController;
+ private PreferenceScreen mPreferenceScreen;
+ private RecyclerView mRecyclerView;
+
+ @Before
+ public void setUp() {
+ Context context = RuntimeEnvironment.getApplication();
+ mBackend = mock(ZenModesBackend.class);
+
+ DashboardFragment fragment = mock(DashboardFragment.class);
+ mController = new ZenModeIconPickerListPreferenceController(
+ RuntimeEnvironment.getApplication(), "icon_list", fragment,
+ new TestIconOptionsProvider(), mBackend);
+
+ mRecyclerView = new RecyclerView(context);
+ mRecyclerView.setId(R.id.icon_list);
+ LayoutPreference layoutPreference = new LayoutPreference(context, mRecyclerView);
+ mPreferenceScreen = mock(PreferenceScreen.class);
+ when(mPreferenceScreen.findPreference(eq("icon_list"))).thenReturn(layoutPreference);
+ }
+
+ @Test
+ public void displayPreference_loadsIcons() {
+ mController.displayPreference(mPreferenceScreen);
+
+ assertThat(mRecyclerView.getAdapter()).isNotNull();
+ assertThat(mRecyclerView.getAdapter().getItemCount()).isEqualTo(3);
+ }
+
+ @Test
+ public void selectIcon_updatesMode() {
+ mController.setZenMode(ZEN_MODE);
+
+ mController.onIconSelected(R.drawable.ic_android);
+
+ ArgumentCaptor<ZenMode> captor = ArgumentCaptor.forClass(ZenMode.class);
+ verify(mBackend).updateMode(captor.capture());
+ assertThat(captor.getValue().getRule().getIconResId()).isEqualTo(R.drawable.ic_android);
+ }
+
+ private static class TestIconOptionsProvider implements IconOptionsProvider {
+
+ @Override
+ @NonNull
+ public ImmutableList<IconInfo> getIcons() {
+ return ImmutableList.of(
+ new IconInfo(R.drawable.ic_android, "android"),
+ new IconInfo(R.drawable.ic_info, "info"),
+ new IconInfo(R.drawable.ic_hearing, "hearing"));
+ }
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceControllerTest.java
index cfeefb4..9400f83 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeMessagesLinkPreferenceControllerTest.java
@@ -17,7 +17,7 @@
package com.android.settings.notification.modes;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
-import static org.junit.Assert.assertTrue;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -29,7 +29,9 @@
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+
import androidx.preference.Preference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -48,8 +50,8 @@
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
private Context mContext;
- @Mock
- private ZenModesBackend mBackend;
+ @Mock private ZenModesBackend mBackend;
+ @Mock private ZenHelperBackend mHelperBackend;
@Before
public void setup() {
@@ -58,7 +60,7 @@
mContext = RuntimeEnvironment.application;
mController = new ZenModeMessagesLinkPreferenceController(
- mContext, "something", mBackend);
+ mContext, "something", mBackend, mHelperBackend);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceControllerTest.java
index 646c7aa..00a9fbe 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeNotifVisLinkPreferenceControllerTest.java
@@ -17,6 +17,7 @@
package com.android.settings.notification.modes;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -28,7 +29,9 @@
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+
import androidx.preference.Preference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -47,8 +50,8 @@
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
private Context mContext;
- @Mock
- private ZenModesBackend mBackend;
+ @Mock private ZenModesBackend mBackend;
+ @Mock private ZenHelperBackend mHelperBackend;
@Before
public void setup() {
@@ -57,7 +60,7 @@
mContext = RuntimeEnvironment.application;
mController = new ZenModeNotifVisLinkPreferenceController(
- mContext, "something", mBackend);
+ mContext, "something", mBackend, mHelperBackend);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceControllerTest.java
index 26da6ab..699762e 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherLinkPreferenceControllerTest.java
@@ -17,6 +17,7 @@
package com.android.settings.notification.modes;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -28,7 +29,9 @@
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+
import androidx.preference.Preference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -48,8 +51,8 @@
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
private Context mContext;
- @Mock
- private ZenModesBackend mBackend;
+ @Mock private ZenModesBackend mBackend;
+ @Mock private ZenHelperBackend mHelperBackend;
@Before
public void setup() {
@@ -58,7 +61,7 @@
mContext = RuntimeEnvironment.application;
mController = new ZenModeOtherLinkPreferenceController(
- mContext, "something", mBackend);
+ mContext, "something", mBackend, mHelperBackend);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherPreferenceControllerTest.java
index 6dd918a..4a4a6e4 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeOtherPreferenceControllerTest.java
@@ -19,7 +19,9 @@
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
import static android.service.notification.ZenPolicy.STATE_ALLOW;
import static android.service.notification.ZenPolicy.STATE_UNSET;
+
import static com.google.common.truth.Truth.assertThat;
+
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -30,7 +32,9 @@
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+
import androidx.preference.TwoStatePreference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java
index 81e6464..a331318 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java
@@ -17,7 +17,7 @@
package com.android.settings.notification.modes;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
-import static org.junit.Assert.assertTrue;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -29,7 +29,9 @@
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+
import androidx.preference.Preference;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -50,6 +52,8 @@
private Context mContext;
@Mock
private ZenModesBackend mBackend;
+ @Mock
+ private ZenHelperBackend mHelperBackend;
@Before
public void setup() {
@@ -58,7 +62,7 @@
mContext = RuntimeEnvironment.application;
mController = new ZenModePeopleLinkPreferenceController(
- mContext, "something", mBackend);
+ mContext, "something", mBackend, mHelperBackend);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceControllerTest.java
index c915974..709af43 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModePrioritySendersPreferenceControllerTest.java
@@ -77,8 +77,8 @@
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
private Context mContext;
- @Mock
- private ZenModesBackend mBackend;
+ @Mock private ZenModesBackend mBackend;
+ @Mock private ZenHelperBackend mHelperBackend;
private PreferenceCategory mMessagesPrefCategory, mCallsPrefCategory;
@@ -90,10 +90,11 @@
mContext = RuntimeEnvironment.application;
- mMessagesController = new ZenModePrioritySendersPreferenceController(
- mContext, "messages", true, mBackend);
- mCallsController = new ZenModePrioritySendersPreferenceController(
- mContext, "calls", false, mBackend);
+ mMessagesController = new ZenModePrioritySendersPreferenceController(mContext, "messages",
+ true, mBackend, mHelperBackend);
+ mCallsController = new ZenModePrioritySendersPreferenceController(mContext, "calls", false,
+ mBackend, mHelperBackend);
+
mMessagesPrefCategory = new PreferenceCategory(mContext);
mMessagesPrefCategory.setKey(mMessagesController.getPreferenceKey());
mCallsPrefCategory = new PreferenceCategory(mContext);
@@ -106,7 +107,7 @@
Cursor cursor = mock(Cursor.class);
when(cursor.getCount()).thenReturn(1);
- when(mBackend.queryAllContactsData()).thenReturn(cursor);
+ when(mHelperBackend.queryAllContactsData()).thenReturn(cursor);
}
// Makes a preference with the provided key and whether it's a checkbox with
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceControllerTest.java
new file mode 100644
index 0000000..7cf327c
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceControllerTest.java
@@ -0,0 +1,163 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification.modes;
+
+import static android.platform.test.flag.junit.SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.AutomaticZenRule;
+import android.app.Flags;
+import android.content.Context;
+import android.net.Uri;
+import android.platform.test.annotations.EnableFlags;
+import android.platform.test.flag.junit.SetFlagsRule;
+import android.service.notification.ZenModeConfig;
+import android.view.ViewGroup;
+import android.widget.ToggleButton;
+
+import androidx.fragment.app.Fragment;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+
+import java.util.Calendar;
+
+@RunWith(RobolectricTestRunner.class)
+public class ZenModeSetSchedulePreferenceControllerTest {
+ @Rule
+ public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT);
+
+ @Mock
+ private ZenModesBackend mBackend;
+ private Context mContext;
+
+ @Mock
+ private Fragment mParent;
+ @Mock
+ private Calendar mCalendar;
+ @Mock
+ private ViewGroup mDaysContainer;
+ @Mock
+ private ToggleButton mDay0, mDay1, mDay2, mDay3, mDay4, mDay5, mDay6;
+
+ private ZenModeSetSchedulePreferenceController mPrefController;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mContext = ApplicationProvider.getApplicationContext();
+ mPrefController = new ZenModeSetSchedulePreferenceController(mContext, mParent, "schedule",
+ mBackend);
+ setupMockDayContainer();
+ }
+
+ @Test
+ @EnableFlags({Flags.FLAG_MODES_API, Flags.FLAG_MODES_UI})
+ public void updateScheduleRule_updatesConditionAndTriggerDescription() {
+ ZenMode mode = new ZenMode("id",
+ new AutomaticZenRule.Builder("name", Uri.parse("condition")).build(),
+ true); // is active
+
+ ZenModeConfig.ScheduleInfo scheduleInfo = new ZenModeConfig.ScheduleInfo();
+ scheduleInfo.days = new int[] { Calendar.MONDAY };
+ scheduleInfo.startHour = 1;
+ scheduleInfo.endHour = 2;
+ ZenMode out = mPrefController.updateScheduleMode(scheduleInfo).apply(mode);
+
+ assertThat(out.getRule().getConditionId())
+ .isEqualTo(ZenModeConfig.toScheduleConditionId(scheduleInfo));
+ assertThat(out.getRule().getTriggerDescription()).isNotEmpty();
+ }
+
+ @Test
+ public void testUpdateScheduleDays() {
+ // Confirm that adding/subtracting/etc days works as expected
+ // starting from null: no days set
+ ZenModeConfig.ScheduleInfo schedule = new ZenModeConfig.ScheduleInfo();
+
+ // Unset a day that's already unset: nothing should change
+ assertThat(ZenModeSetSchedulePreferenceController.updateScheduleDays(schedule,
+ Calendar.TUESDAY, false)).isFalse();
+ // not explicitly checking whether schedule.days is still null here, as we don't necessarily
+ // want to require nullness as distinct from an empty list of days.
+
+ // set a few new days
+ assertThat(ZenModeSetSchedulePreferenceController.updateScheduleDays(schedule,
+ Calendar.MONDAY, true)).isTrue();
+ assertThat(ZenModeSetSchedulePreferenceController.updateScheduleDays(schedule,
+ Calendar.FRIDAY, true)).isTrue();
+ assertThat(schedule.days).hasLength(2);
+ assertThat(schedule.days).asList().containsExactly(Calendar.MONDAY, Calendar.FRIDAY);
+
+ // remove an existing day to make sure that works
+ assertThat(ZenModeSetSchedulePreferenceController.updateScheduleDays(schedule,
+ Calendar.MONDAY, false)).isTrue();
+ assertThat(schedule.days).hasLength(1);
+ assertThat(schedule.days).asList().containsExactly(Calendar.FRIDAY);
+ }
+
+ @Test
+ public void testSetupDayToggles_daysOfWeekOrder() {
+ // Confirm that days are correctly associated with the actual day of the week independent
+ // of when the first day of the week is for the given calendar.
+ ZenModeConfig.ScheduleInfo schedule = new ZenModeConfig.ScheduleInfo();
+ schedule.days = new int[] { Calendar.SUNDAY, Calendar.TUESDAY, Calendar.FRIDAY };
+ schedule.startHour = 1;
+ schedule.endHour = 5;
+
+ // Start mCalendar on Wednesday, arbitrarily
+ when(mCalendar.getFirstDayOfWeek()).thenReturn(Calendar.WEDNESDAY);
+
+ // Setup the day toggles
+ mPrefController.setupDayToggles(mDaysContainer, schedule, mCalendar);
+
+ // we should see toggle 0 associated with the first day of the week, etc.
+ // in this week order, schedule turns on friday (2), sunday (4), tuesday (6) so those
+ // should be checked while everything else should not be checked.
+ verify(mDay0).setChecked(false); // weds
+ verify(mDay1).setChecked(false); // thurs
+ verify(mDay2).setChecked(true); // fri
+ verify(mDay3).setChecked(false); // sat
+ verify(mDay4).setChecked(true); // sun
+ verify(mDay5).setChecked(false); // mon
+ verify(mDay6).setChecked(true); // tues
+ }
+
+ private void setupMockDayContainer() {
+ // associate each index (regardless of associated day of the week) with the appropriate
+ // res id in the days container
+ when(mDaysContainer.findViewById(R.id.day0)).thenReturn(mDay0);
+ when(mDaysContainer.findViewById(R.id.day1)).thenReturn(mDay1);
+ when(mDaysContainer.findViewById(R.id.day2)).thenReturn(mDay2);
+ when(mDaysContainer.findViewById(R.id.day3)).thenReturn(mDay3);
+ when(mDaysContainer.findViewById(R.id.day4)).thenReturn(mDay4);
+ when(mDaysContainer.findViewById(R.id.day5)).thenReturn(mDay5);
+ when(mDaysContainer.findViewById(R.id.day6)).thenReturn(mDay6);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceControllerTest.java
index 7dcec1c..91de4ea 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceControllerTest.java
@@ -17,6 +17,7 @@
package com.android.settings.notification.modes;
import static android.app.AutomaticZenRule.TYPE_SCHEDULE_CALENDAR;
+import static android.app.AutomaticZenRule.TYPE_SCHEDULE_TIME;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
import static android.platform.test.flag.junit.SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT;
@@ -53,6 +54,8 @@
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
+import java.util.Calendar;
+
@RunWith(RobolectricTestRunner.class)
public class ZenModeSetTriggerLinkPreferenceControllerTest {
@Rule
@@ -167,4 +170,29 @@
captor.getValue().getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT)).isEqualTo(
ZenModeSetCalendarFragment.class.getName());
}
+
+ @Test
+ public void testRuleLink_schedule() {
+ ZenModeConfig.ScheduleInfo scheduleInfo = new ZenModeConfig.ScheduleInfo();
+ scheduleInfo.days = new int[] { Calendar.MONDAY, Calendar.TUESDAY, Calendar.THURSDAY };
+ scheduleInfo.startHour = 1;
+ scheduleInfo.endHour = 15;
+ ZenMode mode = new ZenMode("id", new AutomaticZenRule.Builder("name",
+ ZenModeConfig.toScheduleConditionId(scheduleInfo))
+ .setType(TYPE_SCHEDULE_TIME)
+ .setTriggerDescription("some schedule")
+ .build(),
+ true); // is active
+ mPrefController.updateZenMode(mPrefCategory, mode);
+
+ verify(mPreference).setTitle(R.string.zen_mode_set_schedule_link);
+ verify(mPreference).setSummary(mode.getRule().getTriggerDescription());
+
+ ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
+ verify(mPreference).setIntent(captor.capture());
+ // Destination as written into the intent by SubSettingLauncher
+ assertThat(
+ captor.getValue().getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT)).isEqualTo(
+ ZenModeSetScheduleFragment.class.getName());
+ }
}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModesBackendTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModesBackendTest.java
index 75ca741..9483683 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModesBackendTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModesBackendTest.java
@@ -17,6 +17,12 @@
package com.android.settings.notification.modes;
import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
+import static android.provider.Settings.Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+import static android.provider.Settings.Global.ZEN_MODE_OFF;
+import static android.service.notification.Condition.SOURCE_UNKNOWN;
+import static android.service.notification.Condition.STATE_FALSE;
+import static android.service.notification.Condition.STATE_TRUE;
+import static android.service.notification.ZenPolicy.STATE_ALLOW;
import static com.google.common.truth.Truth.assertThat;
@@ -27,13 +33,17 @@
import static org.mockito.Mockito.when;
import android.app.AutomaticZenRule;
+import android.app.Flags;
import android.app.NotificationManager;
import android.app.NotificationManager.Policy;
import android.content.Context;
import android.net.Uri;
+import android.platform.test.annotations.EnableFlags;
+import android.platform.test.flag.junit.SetFlagsRule;
import android.provider.Settings;
import android.service.notification.Condition;
import android.service.notification.ZenAdapters;
+import android.service.notification.ZenDeviceEffects;
import android.service.notification.ZenModeConfig;
import android.service.notification.ZenPolicy;
@@ -42,6 +52,7 @@
import com.google.common.collect.ImmutableMap;
import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -54,6 +65,7 @@
import java.util.List;
@RunWith(RobolectricTestRunner.class)
+@EnableFlags(Flags.FLAG_MODES_UI)
public class ZenModesBackendTest {
private static final String ZEN_RULE_ID = "rule";
@@ -76,13 +88,22 @@
private Context mContext;
private ZenModesBackend mBackend;
+ @Rule
+ public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(
+ SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT);
+
// Helper methods to add active/inactive rule state to a config. Returns a copy.
private ZenModeConfig configWithManualRule(ZenModeConfig base, boolean active) {
ZenModeConfig out = base.copy();
- if (!active) {
- out.manualRule = null;
+
+ if (active) {
+ out.manualRule.zenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ out.manualRule.condition =
+ new Condition(out.manualRule.conditionId, "", STATE_TRUE, SOURCE_UNKNOWN);
} else {
- out.manualRule = new ZenModeConfig.ZenRule();
+ out.manualRule.zenMode = ZEN_MODE_OFF;
+ out.manualRule.condition =
+ new Condition(out.manualRule.conditionId, "", STATE_FALSE, SOURCE_UNKNOWN);
}
return out;
}
@@ -130,7 +151,10 @@
Policy.PRIORITY_SENDERS_CONTACTS, Policy.PRIORITY_SENDERS_CONTACTS);
when(mNm.getAutomaticZenRules()).thenReturn(
ImmutableMap.of("rule1", ZEN_RULE, "rule2", rule2));
- when(mNm.getNotificationPolicy()).thenReturn(dndPolicy);
+ ZenModeConfig config = new ZenModeConfig();
+ config.applyNotificationPolicy(dndPolicy);
+ assertThat(config.manualRule.zenPolicy.getPriorityCategoryAlarms()).isEqualTo(STATE_ALLOW);
+ when(mNm.getZenModeConfig()).thenReturn(config);
List<ZenMode> modes = mBackend.getModes();
@@ -154,7 +178,9 @@
public void getMode_manualDnd_returnsMode() {
Policy dndPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS,
Policy.PRIORITY_SENDERS_CONTACTS, Policy.PRIORITY_SENDERS_CONTACTS);
- when(mNm.getNotificationPolicy()).thenReturn(dndPolicy);
+ ZenModeConfig config = new ZenModeConfig();
+ config.applyNotificationPolicy(dndPolicy);
+ when(mNm.getZenModeConfig()).thenReturn(config);
ZenMode mode = mBackend.getMode(ZenMode.MANUAL_DND_MODE_ID);
@@ -193,11 +219,11 @@
// Set up a base config with an active rule to make sure we're looking at the correct info
ZenModeConfig configWithActiveRule = configWithRule(new ZenModeConfig(), ZEN_RULE_ID,
ZEN_RULE, true);
- when(mNm.getZenModeConfig()).thenReturn(configWithActiveRule);
// Equivalent to disallowAllSounds()
Policy dndPolicy = new Policy(0, 0, 0);
- when(mNm.getNotificationPolicy()).thenReturn(dndPolicy);
+ configWithActiveRule.applyNotificationPolicy(dndPolicy);
+ when(mNm.getZenModeConfig()).thenReturn(configWithActiveRule);
ZenMode mode = mBackend.getMode(ZenMode.MANUAL_DND_MODE_ID);
@@ -233,6 +259,23 @@
}
@Test
+ public void updateMode_manualDnd_setsDeviceEffects() throws Exception {
+ ZenMode manualDnd = ZenMode.manualDndMode(
+ new AutomaticZenRule.Builder("DND", Uri.EMPTY)
+ .setZenPolicy(new ZenPolicy())
+ .setDeviceEffects(new ZenDeviceEffects.Builder()
+ .setShouldDimWallpaper(true)
+ .build())
+ .build(), false);
+
+ mBackend.updateMode(manualDnd);
+
+ verify(mNm).setManualZenRuleDeviceEffects(new ZenDeviceEffects.Builder()
+ .setShouldDimWallpaper(true)
+ .build());
+ }
+
+ @Test
public void updateMode_manualDnd_setsNotificationPolicy() {
ZenMode manualDnd = ZenMode.manualDndMode(
new AutomaticZenRule.Builder("DND", Uri.EMPTY)
@@ -293,7 +336,7 @@
public void deactivateMode_manualDnd_setsZenModeOff() {
mBackend.deactivateMode(ZenMode.manualDndMode(MANUAL_DND_RULE, true));
- verify(mNm).setZenMode(eq(Settings.Global.ZEN_MODE_OFF), eq(null), any(), eq(true));
+ verify(mNm).setZenMode(eq(ZEN_MODE_OFF), eq(null), any(), eq(true));
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModesListPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModesListPreferenceControllerTest.java
index 0297841..9a4de60 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModesListPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModesListPreferenceControllerTest.java
@@ -31,8 +31,16 @@
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ZenPolicy;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceCategory;
+import androidx.preference.PreferenceGroup;
+import androidx.preference.PreferenceManager;
+import androidx.preference.PreferenceScreen;
+
import com.android.settingslib.search.SearchIndexableRaw;
+import com.google.common.collect.ImmutableList;
+
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -43,6 +51,7 @@
import org.robolectric.RuntimeEnvironment;
import java.util.ArrayList;
+import java.util.Comparator;
import java.util.List;
@RunWith(RobolectricTestRunner.class)
@@ -75,16 +84,72 @@
private ZenModesBackend mBackend;
private ZenModesListPreferenceController mPrefController;
+ private PreferenceCategory mPreference;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
+ mPreference = new PreferenceCategory(mContext);
+ PreferenceManager preferenceManager = new PreferenceManager(mContext);
+ PreferenceScreen preferenceScreen = preferenceManager.createPreferenceScreen(mContext);
+ preferenceScreen.addPreference(mPreference);
+
mPrefController = new ZenModesListPreferenceController(mContext, null, mBackend);
}
@Test
+ @EnableFlags(Flags.FLAG_MODES_UI)
+ public void updateState_addsPreferences() {
+ ImmutableList<ZenMode> modes = ImmutableList.of(newMode("One"), newMode("Two"),
+ newMode("Three"), newMode("Four"), newMode("Five"));
+ when(mBackend.getModes()).thenReturn(modes);
+
+ mPrefController.updateState(mPreference);
+
+ assertThat(mPreference.getPreferenceCount()).isEqualTo(5);
+ List<ZenModesListItemPreference> itemPreferences = getModeListItems(mPreference);
+ assertThat(itemPreferences.stream().map(pref -> pref.mZenMode).toList())
+ .containsExactlyElementsIn(modes)
+ .inOrder();
+
+ for (int i = 0; i < modes.size(); i++) {
+ assertThat(((ZenModesListItemPreference) (mPreference.getPreference(i))).mZenMode)
+ .isEqualTo(modes.get(i));
+ }
+ }
+
+ @Test
+ @EnableFlags(Flags.FLAG_MODES_UI)
+ public void updateState_secondTime_updatesPreferences() {
+ ImmutableList<ZenMode> modes = ImmutableList.of(newMode("One"), newMode("Two"),
+ newMode("Three"), newMode("Four"), newMode("Five"));
+ when(mBackend.getModes()).thenReturn(modes);
+ mPrefController.updateState(mPreference);
+
+ assertThat(mPreference.getPreferenceCount()).isEqualTo(5);
+ List<ZenModesListItemPreference> oldPreferences = getModeListItems(mPreference);
+
+ ImmutableList<ZenMode> updatedModes = ImmutableList.of(modes.get(0), modes.get(1),
+ newMode("Two.1"), newMode("Two.2"), modes.get(2), /* deleted "Four" */
+ modes.get(4));
+ when(mBackend.getModes()).thenReturn(updatedModes);
+ mPrefController.updateState(mPreference);
+
+ List<ZenModesListItemPreference> newPreferences = getModeListItems(mPreference);
+ assertThat(newPreferences.stream().map(pref -> pref.mZenMode).toList())
+ .containsExactlyElementsIn(updatedModes)
+ .inOrder();
+
+ // Verify that the old preference controllers were reused instead of creating new ones.
+ assertThat(newPreferences.get(0)).isSameInstanceAs(oldPreferences.get(0));
+ assertThat(newPreferences.get(1)).isSameInstanceAs(oldPreferences.get(1));
+ assertThat(newPreferences.get(4)).isSameInstanceAs(oldPreferences.get(2));
+ assertThat(newPreferences.get(5)).isSameInstanceAs(oldPreferences.get(4));
+ }
+
+ @Test
@DisableFlags(Flags.FLAG_MODES_UI)
public void testModesUiOff_notAvailableAndNoSearchData() {
// There exist modes
@@ -151,4 +216,28 @@
assertThat(item1.key).isEqualTo(TEST_MODE_ID);
assertThat(item1.title).isEqualTo(TEST_MODE_NAME);
}
+
+ private static ZenMode newMode(String id) {
+ return new ZenMode(
+ id,
+ new AutomaticZenRule.Builder("Mode " + id, Uri.parse("test_uri"))
+ .setInterruptionFilter(INTERRUPTION_FILTER_PRIORITY)
+ .setZenPolicy(new ZenPolicy.Builder().allowAllSounds().build())
+ .build(),
+ false);
+ }
+
+ /**
+ * Returns the child preferences of the {@code group}, sorted by their
+ * {@link Preference#getOrder} value (which is the order they will be sorted by and displayed
+ * in the UI).
+ */
+ private List<ZenModesListItemPreference> getModeListItems(PreferenceGroup group) {
+ ArrayList<ZenModesListItemPreference> items = new ArrayList<>();
+ for (int i = 0; i < group.getPreferenceCount(); i++) {
+ items.add((ZenModesListItemPreference) group.getPreference(i));
+ }
+ items.sort(Comparator.comparing(Preference::getOrder));
+ return items;
+ }
}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModesSummaryHelperTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModesSummaryHelperTest.java
index d8c8bf0..13ae4eb 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModesSummaryHelperTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModesSummaryHelperTest.java
@@ -38,10 +38,13 @@
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
+import java.util.LinkedHashSet;
+import java.util.Set;
+
@RunWith(RobolectricTestRunner.class)
public class ZenModesSummaryHelperTest {
private Context mContext;
- private ZenModesBackend mBackend;
+ private ZenHelperBackend mBackend;
private ZenModeSummaryHelper mSummaryHelper;
@@ -49,7 +52,7 @@
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
- mBackend = new ZenModesBackend(mContext);
+ mBackend = new ZenHelperBackend(mContext);
mSummaryHelper = new ZenModeSummaryHelper(mContext, mBackend);
}
@@ -339,7 +342,7 @@
.build();
ZenMode zenMode = new ZenMode("id", rule, true);
- assertThat(mSummaryHelper.getAppsSummary(zenMode)).isEqualTo("All");
+ assertThat(mSummaryHelper.getAppsSummary(zenMode, new LinkedHashSet<>())).isEqualTo("All");
}
@Test
@@ -353,7 +356,56 @@
.build();
ZenMode zenMode = new ZenMode("id", rule, true);
- assertThat(mSummaryHelper.getAppsSummary(zenMode)).isEqualTo("None");
+ assertThat(mSummaryHelper.getAppsSummary(zenMode, new LinkedHashSet<>())).isEqualTo("None");
+ }
+
+ @Test
+ public void getAppsSummary_priorityAppsNoList() {
+ AutomaticZenRule rule = new AutomaticZenRule.Builder("Bedtime", Uri.parse("bed"))
+ .setType(AutomaticZenRule.TYPE_BEDTIME)
+ .setInterruptionFilter(INTERRUPTION_FILTER_PRIORITY)
+ .setZenPolicy(new ZenPolicy.Builder()
+ .allowChannels(ZenPolicy.CHANNEL_POLICY_PRIORITY)
+ .build())
+ .build();
+ ZenMode zenMode = new ZenMode("id", rule, true);
+
+ assertThat(mSummaryHelper.getAppsSummary(zenMode, null)).isEqualTo("Selected apps");
+ }
+
+ @Test
+ public void getAppsSummary_formatAppsListEmpty() {
+ Set<String> apps = new LinkedHashSet<>();
+ assertThat(mSummaryHelper.formatAppsList(apps)).isEqualTo("No apps can interrupt");
+ }
+
+ @Test
+ public void getAppsSummary_formatAppsListSingle() {
+ Set<String> apps = Set.of("My App");
+ assertThat(mSummaryHelper.formatAppsList(apps)).isEqualTo("My App can interrupt");
+ }
+
+ @Test
+ public void getAppsSummary_formatAppsListTwo() {
+ Set<String> apps = Set.of("My App", "SecondApp");
+ assertThat(mSummaryHelper.formatAppsList(apps)).isEqualTo("My App and SecondApp "
+ + "can interrupt");
+ }
+
+ @Test
+ public void getAppsSummary_formatAppsListThree() {
+ Set<String> apps = Set.of("My App", "SecondApp", "ThirdApp");
+ assertThat(mSummaryHelper.formatAppsList(apps)).isEqualTo("My App, SecondApp, "
+ + "and ThirdApp can interrupt");
+ }
+
+ @Test
+ public void getAppsSummary_formatAppsListMany() {
+ Set<String> apps = Set.of("My App", "SecondApp", "ThirdApp", "FourthApp",
+ "FifthApp", "SixthApp");
+ // Note that apps are selected alphabetically.
+ assertThat(mSummaryHelper.formatAppsList(apps)).isEqualTo("FifthApp, FourthApp, "
+ + "and 4 more can interrupt");
}
@Test
@@ -366,7 +418,11 @@
.build())
.build();
ZenMode zenMode = new ZenMode("id", rule, true);
+ Set<String> apps = Set.of("My App", "SecondApp", "ThirdApp", "FourthApp",
+ "FifthApp", "SixthApp");
- assertThat(mSummaryHelper.getAppsSummary(zenMode)).isEqualTo("Selected apps");
+ assertThat(mSummaryHelper.getAppsSummary(zenMode, apps)).isEqualTo("FifthApp, FourthApp, "
+ + "and 4 more can interrupt");
}
+
}
diff --git a/tests/robotests/src/com/android/settings/password/ChooseLockTypeDialogFragmentTest.java b/tests/robotests/src/com/android/settings/password/ChooseLockTypeDialogFragmentTest.java
index 68f8ed7..24418bf 100644
--- a/tests/robotests/src/com/android/settings/password/ChooseLockTypeDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/password/ChooseLockTypeDialogFragmentTest.java
@@ -37,7 +37,6 @@
import com.android.settings.testutils.shadow.ShadowLockPatternUtils;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
@@ -47,7 +46,6 @@
@RunWith(RobolectricTestRunner.class)
@Config(shadows = {ShadowAlertDialogCompat.class, ShadowLockPatternUtils.class})
-@Ignore("b/342667939")
public class ChooseLockTypeDialogFragmentTest {
private Context mContext;
diff --git a/tests/robotests/src/com/android/settings/users/UserDetailsSettingsTest.java b/tests/robotests/src/com/android/settings/users/UserDetailsSettingsTest.java
index 874b978..7f27324 100644
--- a/tests/robotests/src/com/android/settings/users/UserDetailsSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/users/UserDetailsSettingsTest.java
@@ -222,6 +222,7 @@
}
@Test
+ @Ignore("b/313530297")
public void onResume_canSwitch_shouldEnableSwitchPref() {
mUserManager.setSwitchabilityStatus(SWITCHABILITY_STATUS_OK);
mFragment.mSwitchUserPref = mSwitchUserPref;
@@ -233,6 +234,7 @@
}
@Test
+ @Ignore("b/313530297")
public void onResume_userInCall_shouldDisableSwitchPref() {
mUserManager.setSwitchabilityStatus(SWITCHABILITY_STATUS_USER_IN_CALL);
mFragment.mSwitchUserPref = mSwitchUserPref;
@@ -244,6 +246,7 @@
}
@Test
+ @Ignore("b/313530297")
public void onResume_switchDisallowed_shouldDisableSwitchPref() {
mUserManager.setSwitchabilityStatus(SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED);
mFragment.mSwitchUserPref = mSwitchUserPref;
@@ -255,6 +258,7 @@
}
@Test
+ @Ignore("b/313530297")
public void onResume_systemUserLocked_shouldDisableSwitchPref() {
mUserManager.setSwitchabilityStatus(UserManager.SWITCHABILITY_STATUS_SYSTEM_USER_LOCKED);
mFragment.mSwitchUserPref = mSwitchUserPref;
diff --git a/tests/screenshot/assets/robolectric/fp_enroll_confirmation.png b/tests/screenshot/assets/robolectric/rfps_enroll_confirmation.png
similarity index 100%
rename from tests/screenshot/assets/robolectric/fp_enroll_confirmation.png
rename to tests/screenshot/assets/robolectric/rfps_enroll_confirmation.png
Binary files differ
diff --git a/tests/screenshot/assets/robolectric/fp_enroll_enrolling.png b/tests/screenshot/assets/robolectric/rfps_enroll_enrolling.png
similarity index 100%
rename from tests/screenshot/assets/robolectric/fp_enroll_enrolling.png
rename to tests/screenshot/assets/robolectric/rfps_enroll_enrolling.png
Binary files differ
diff --git a/tests/screenshot/assets/robolectric/fp_enroll_find_sensor.png b/tests/screenshot/assets/robolectric/rfps_enroll_find_sensor.png
similarity index 100%
rename from tests/screenshot/assets/robolectric/fp_enroll_find_sensor.png
rename to tests/screenshot/assets/robolectric/rfps_enroll_find_sensor.png
Binary files differ
diff --git a/tests/screenshot/assets/robolectric/fp_enroll_intro.png b/tests/screenshot/assets/robolectric/rfps_enroll_intro.png
similarity index 100%
rename from tests/screenshot/assets/robolectric/fp_enroll_intro.png
rename to tests/screenshot/assets/robolectric/rfps_enroll_intro.png
Binary files differ
diff --git a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/Injector.kt b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/Injector.kt
index 652afa0..19433f3 100644
--- a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/Injector.kt
+++ b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/Injector.kt
@@ -42,7 +42,6 @@
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintScrollViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.GatekeeperInfo
import com.android.settings.testutils2.FakeFingerprintManagerInteractor
import com.android.systemui.biometrics.shared.model.toFingerprintSensor
import kotlinx.coroutines.flow.Flow
@@ -95,23 +94,27 @@
override fun getRotationFromDefault(rotation: Int): Int = rotation
}
- var gatekeeperViewModel =
- FingerprintGatekeeperViewModel(
- GatekeeperInfo.GatekeeperPasswordInfo(byteArrayOf(1, 2, 3), 100L),
- interactor,
- )
+ var gatekeeperViewModel = FingerprintGatekeeperViewModel(fingerprintManagerInteractor)
- val flowViewModel = FingerprintFlowViewModel(enrollFlow)
+ val flowViewModel = FingerprintFlowViewModel()
- var navigationViewModel = FingerprintNavigationViewModel(step, true, flowViewModel, interactor)
+ var navigationViewModel = FingerprintNavigationViewModel(fingerprintManagerInteractor)
var fingerprintViewModel =
- FingerprintEnrollIntroViewModel(navigationViewModel, flowViewModel, interactor)
+ FingerprintEnrollIntroViewModel(
+ navigationViewModel,
+ flowViewModel,
+ fingerprintManagerInteractor,
+ )
var fingerprintScrollViewModel = FingerprintScrollViewModel()
var backgroundViewModel = BackgroundViewModel()
var fingerprintEnrollViewModel =
- FingerprintEnrollViewModel(interactor, gatekeeperViewModel, navigationViewModel)
+ FingerprintEnrollViewModel(
+ fingerprintManagerInteractor,
+ gatekeeperViewModel,
+ navigationViewModel,
+ )
var fingerprintEnrollEnrollingViewModel =
FingerprintEnrollEnrollingViewModel(fingerprintEnrollViewModel, backgroundViewModel)
@@ -122,11 +125,11 @@
fingerprintEnrollEnrollingViewModel,
navigationViewModel,
orientationInteractor,
- interactor,
+ fingerprintManagerInteractor,
)
val fingerprintEnrollConfirmationViewModel =
- FingerprintEnrollConfirmationViewModel(navigationViewModel, interactor)
+ FingerprintEnrollConfirmationViewModel(navigationViewModel, fingerprintManagerInteractor)
var fingerprintFindSensorViewModel =
FingerprintEnrollFindSensorViewModel(
@@ -134,11 +137,11 @@
fingerprintEnrollViewModel,
gatekeeperViewModel,
backgroundViewModel,
+ flowViewModel,
accessibilityInteractor,
foldStateInteractor,
orientationInteractor,
- flowViewModel,
- interactor,
+ fingerprintManagerInteractor,
)
val factory =
@@ -166,12 +169,16 @@
init {
fingerprintEnrollViewModel.sensorTypeCached = fingerprintSensor.sensorType
+ gatekeeperViewModel.onConfirmDevice(true, 100L)
+ navigationViewModel.updateFingerprintFlow(enrollFlow)
+ navigationViewModel.hasConfirmedDeviceCredential(true)
+ flowViewModel.updateFlowType(enrollFlow)
}
companion object {
private val Phone = DisplaySpec("phone", width = 1080, height = 2340, densityDpi = 420)
private const val screenshotPath = "/settings_screenshots"
- val interactor = FakeFingerprintManagerInteractor()
+ val fingerprintManagerInteractor = FakeFingerprintManagerInteractor()
fun BiometricFragmentScreenShotRule() =
FragmentScreenshotTestRule(
diff --git a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollConfirmationScreenshotTest.kt b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollConfirmationScreenshotTest.kt
similarity index 86%
rename from tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollConfirmationScreenshotTest.kt
rename to tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollConfirmationScreenshotTest.kt
index 28f4fbe..6c49a0c 100644
--- a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollConfirmationScreenshotTest.kt
+++ b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollConfirmationScreenshotTest.kt
@@ -17,7 +17,6 @@
package com.android.settings.tests.screenshot.biometrics.fingerprint.fragment
import androidx.test.ext.junit.runners.AndroidJUnit4
-import androidx.test.platform.app.InstrumentationRegistry
import com.android.settings.biometrics.fingerprint2.ui.enrollment.fragment.FingerprintEnrollConfirmationV2Fragment
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep
import com.android.settings.tests.screenshot.biometrics.fingerprint.Injector
@@ -28,17 +27,15 @@
import platform.test.screenshot.ViewScreenshotTestRule.Mode
@RunWith(AndroidJUnit4::class)
-class FingerprintEnrollConfirmationScreenshotTest {
+class RfpsEnrollConfirmationScreenshotTest {
private val injector: Injector = Injector(FingerprintNavigationStep.Confirmation)
- @Rule
- @JvmField
- var rule: FragmentScreenshotTestRule = Injector.BiometricFragmentScreenShotRule()
+ @Rule @JvmField var rule: FragmentScreenshotTestRule = Injector.BiometricFragmentScreenShotRule()
@Test
fun testConfirmation() {
rule.screenshotTest(
- "fp_enroll_confirmation",
+ "rfps_enroll_confirmation",
Mode.MatchSize,
FingerprintEnrollConfirmationV2Fragment(injector.factory),
)
diff --git a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollEnrollingScreenshotTest.kt b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollEnrollingScreenshotTest.kt
similarity index 86%
rename from tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollEnrollingScreenshotTest.kt
rename to tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollEnrollingScreenshotTest.kt
index 215e76f..48ff59b 100644
--- a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollEnrollingScreenshotTest.kt
+++ b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollEnrollingScreenshotTest.kt
@@ -27,14 +27,14 @@
import platform.test.screenshot.ViewScreenshotTestRule.Mode
@RunWith(AndroidJUnit4::class)
-class FingerprintEnrollEnrollingScreenshotTest {
+class RfpsEnrollEnrollingScreenshotTest {
private val injector: Injector =
- Injector(FingerprintNavigationStep.Enrollment(Injector.interactor.sensorProp))
+ Injector(FingerprintNavigationStep.Enrollment(Injector.fingerprintManagerInteractor.sensorProp))
@Rule @JvmField var rule: FragmentScreenshotTestRule = BiometricFragmentScreenShotRule()
@Test
fun testEnrollEnrolling() {
- rule.screenshotTest("fp_enroll_enrolling", Mode.MatchSize, RFPSEnrollFragment(injector.factory))
+ rule.screenshotTest("rfps_enroll_enrolling", Mode.MatchSize, RFPSEnrollFragment(injector.factory))
}
}
diff --git a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollFindSensorScreenshotTest.kt b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollFindSensorScreenshotTest.kt
index 594aade..01cc0e6 100644
--- a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollFindSensorScreenshotTest.kt
+++ b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollFindSensorScreenshotTest.kt
@@ -31,10 +31,6 @@
@Test
fun testEnrollFindSensor() {
- rule.screenshotTest(
- "fp_enroll_find_sensor",
- Mode.MatchSize,
- RfpsEnrollFindSensorFragment(),
- )
+ rule.screenshotTest("rfps_enroll_find_sensor", Mode.MatchSize, RfpsEnrollFindSensorFragment())
}
}
diff --git a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollIntroScreenshotTest.kt b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollIntroScreenshotTest.kt
similarity index 89%
rename from tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollIntroScreenshotTest.kt
rename to tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollIntroScreenshotTest.kt
index 68d600b..128d540 100644
--- a/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/FingerprintEnrollIntroScreenshotTest.kt
+++ b/tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/fragment/RfpsEnrollIntroScreenshotTest.kt
@@ -27,17 +27,15 @@
import platform.test.screenshot.ViewScreenshotTestRule.Mode
@RunWith(AndroidJUnit4::class)
-class FingerprintEnrollIntroScreenshotTest {
+class RfpsEnrollIntroScreenshotTest {
private val injector: Injector = Injector(FingerprintNavigationStep.Introduction())
- @Rule
- @JvmField
- var rule: FragmentScreenshotTestRule = Injector.BiometricFragmentScreenShotRule()
+ @Rule @JvmField var rule: FragmentScreenshotTestRule = Injector.BiometricFragmentScreenShotRule()
@Test
fun testEnrollIntro() {
rule.screenshotTest(
- "fp_enroll_intro",
+ "rfps_enroll_intro",
Mode.MatchSize,
FingerprintEnrollIntroV2Fragment(injector.factory),
)
diff --git a/tests/shared/src/com/android/settings/testutils2/FakeFingerprintManagerInteractor.kt b/tests/shared/src/com/android/settings/testutils2/FakeFingerprintManagerInteractor.kt
index b39f0d1..52df724 100644
--- a/tests/shared/src/com/android/settings/testutils2/FakeFingerprintManagerInteractor.kt
+++ b/tests/shared/src/com/android/settings/testutils2/FakeFingerprintManagerInteractor.kt
@@ -19,6 +19,7 @@
import android.hardware.biometrics.ComponentInfoInternal
import android.hardware.biometrics.SensorLocationInternal
import android.hardware.biometrics.SensorProperties
+import android.hardware.fingerprint.FingerprintEnrollOptions
import android.hardware.fingerprint.FingerprintSensorProperties
import android.hardware.fingerprint.FingerprintSensorPropertiesInternal
import com.android.settings.biometrics.fingerprint2.lib.domain.interactor.FingerprintManagerInteractor
@@ -78,6 +79,7 @@
override suspend fun enroll(
hardwareAuthToken: ByteArray?,
enrollReason: EnrollReason,
+ fingerprintEnrollOptions: FingerprintEnrollOptions
): Flow<FingerEnrollState> = flowOf(*enrollStateViewModel.toTypedArray())
override suspend fun removeFingerprint(fp: FingerprintData): Boolean {
diff --git a/tests/spa_unit/src/com/android/settings/network/ConnectivityRepositoryTest.kt b/tests/spa_unit/src/com/android/settings/network/ConnectivityRepositoryTest.kt
new file mode 100644
index 0000000..170b84d
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/network/ConnectivityRepositoryTest.kt
@@ -0,0 +1,100 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network
+
+import android.content.Context
+import android.net.ConnectivityManager
+import android.net.ConnectivityManager.NetworkCallback
+import android.net.Network
+import android.net.NetworkCapabilities
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
+import com.android.settingslib.spa.testutils.toListWithTimeout
+import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.async
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.runBlocking
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.any
+import org.mockito.kotlin.doAnswer
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.mock
+import org.mockito.kotlin.spy
+import org.mockito.kotlin.stub
+
+@RunWith(AndroidJUnit4::class)
+class ConnectivityRepositoryTest {
+
+ private var networkCallback: NetworkCallback? = null
+
+ private val mockConnectivityManager = mock<ConnectivityManager> {
+ on { registerDefaultNetworkCallback(any()) } doAnswer {
+ networkCallback = it.arguments[0] as NetworkCallback
+ }
+ }
+
+ private val context: Context = spy(ApplicationProvider.getApplicationContext()) {
+ on { getSystemService(ConnectivityManager::class.java) } doReturn mockConnectivityManager
+ }
+
+ private val connectivityRepository = ConnectivityRepository(context)
+
+ @Test
+ fun networkCapabilitiesFlow_activeNetworkIsNull_noCrash() = runBlocking {
+ mockConnectivityManager.stub {
+ on { activeNetwork } doReturn null
+ on { getNetworkCapabilities(null) } doReturn null
+ }
+
+ val networkCapabilities =
+ connectivityRepository.networkCapabilitiesFlow().firstWithTimeoutOrNull()!!
+
+ assertThat(networkCapabilities.transportTypes).isEmpty()
+ }
+
+ @Test
+ fun networkCapabilitiesFlow_getInitialValue() = runBlocking {
+ val expectedNetworkCapabilities = NetworkCapabilities.Builder().apply {
+ addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
+ }.build()
+ mockConnectivityManager.stub {
+ on { getNetworkCapabilities(null) } doReturn expectedNetworkCapabilities
+ }
+
+ val actualNetworkCapabilities =
+ connectivityRepository.networkCapabilitiesFlow().firstWithTimeoutOrNull()!!
+
+ assertThat(actualNetworkCapabilities).isSameInstanceAs(expectedNetworkCapabilities)
+ }
+
+ @Test
+ fun networkCapabilitiesFlow_getUpdatedValue() = runBlocking {
+ val expectedNetworkCapabilities = NetworkCapabilities.Builder().apply {
+ addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
+ }.build()
+
+ val deferredList = async {
+ connectivityRepository.networkCapabilitiesFlow().toListWithTimeout()
+ }
+ delay(100)
+ networkCallback?.onCapabilitiesChanged(mock<Network>(), expectedNetworkCapabilities)
+
+ assertThat(deferredList.await().last()).isSameInstanceAs(expectedNetworkCapabilities)
+ }
+}
diff --git a/tests/spa_unit/src/com/android/settings/network/InternetPreferenceRepositoryTest.kt b/tests/spa_unit/src/com/android/settings/network/InternetPreferenceRepositoryTest.kt
new file mode 100644
index 0000000..a2542b5
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/network/InternetPreferenceRepositoryTest.kt
@@ -0,0 +1,229 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network
+
+import android.content.Context
+import android.net.NetworkCapabilities
+import android.net.wifi.WifiInfo
+import android.net.wifi.WifiManager
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settings.R
+import com.android.settings.network.telephony.DataSubscriptionRepository
+import com.android.settings.wifi.WifiSummaryRepository
+import com.android.settings.wifi.repository.WifiRepository
+import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
+import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.flow.MutableStateFlow
+import kotlinx.coroutines.flow.flowOf
+import kotlinx.coroutines.runBlocking
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.any
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.mock
+import org.mockito.kotlin.stub
+
+@RunWith(AndroidJUnit4::class)
+class InternetPreferenceRepositoryTest {
+
+ private val context: Context = ApplicationProvider.getApplicationContext()
+
+ private val mockConnectivityRepository = mock<ConnectivityRepository>()
+ private val mockWifiSummaryRepository = mock<WifiSummaryRepository>()
+ private val mockDataSubscriptionRepository = mock<DataSubscriptionRepository>()
+ private val mockWifiRepository = mock<WifiRepository>()
+ private val airplaneModeOnFlow = MutableStateFlow(false)
+
+ private val repository =
+ InternetPreferenceRepository(
+ context = context,
+ connectivityRepository = mockConnectivityRepository,
+ wifiSummaryRepository = mockWifiSummaryRepository,
+ dataSubscriptionRepository = mockDataSubscriptionRepository,
+ wifiRepository = mockWifiRepository,
+ airplaneModeOnFlow = airplaneModeOnFlow,
+ )
+
+ @Test
+ fun displayInfoFlow_wifi() = runBlocking {
+ val wifiNetworkCapabilities =
+ NetworkCapabilities.Builder()
+ .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)
+ .build()
+ mockConnectivityRepository.stub {
+ on { networkCapabilitiesFlow() } doReturn flowOf(wifiNetworkCapabilities)
+ }
+ mockWifiSummaryRepository.stub { on { summaryFlow() } doReturn flowOf(SUMMARY) }
+
+ val displayInfo = repository.displayInfoFlow().firstWithTimeoutOrNull()
+
+ assertThat(displayInfo)
+ .isEqualTo(
+ InternetPreferenceRepository.DisplayInfo(
+ summary = SUMMARY,
+ iconResId = R.drawable.ic_wifi_signal_4,
+ )
+ )
+ }
+
+ @Test
+ fun displayInfoFlow_carrierMergedWifi_asCellular() = runBlocking {
+ val wifiInfo =
+ mock<WifiInfo> {
+ on { isCarrierMerged } doReturn true
+ on { makeCopy(any()) } doReturn mock
+ }
+ val wifiNetworkCapabilities =
+ NetworkCapabilities.Builder()
+ .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)
+ .setTransportInfo(wifiInfo)
+ .build()
+ mockConnectivityRepository.stub {
+ on { networkCapabilitiesFlow() } doReturn flowOf(wifiNetworkCapabilities)
+ }
+ mockDataSubscriptionRepository.stub { on { dataSummaryFlow() } doReturn flowOf(SUMMARY) }
+
+ val displayInfo = repository.displayInfoFlow().firstWithTimeoutOrNull()
+
+ assertThat(displayInfo)
+ .isEqualTo(
+ InternetPreferenceRepository.DisplayInfo(
+ summary = SUMMARY,
+ iconResId = R.drawable.ic_network_cell,
+ )
+ )
+ }
+
+ @Test
+ fun displayInfoFlow_cellular() = runBlocking {
+ val wifiNetworkCapabilities =
+ NetworkCapabilities.Builder()
+ .addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)
+ .build()
+ mockConnectivityRepository.stub {
+ on { networkCapabilitiesFlow() } doReturn flowOf(wifiNetworkCapabilities)
+ }
+ mockDataSubscriptionRepository.stub { on { dataSummaryFlow() } doReturn flowOf(SUMMARY) }
+
+ val displayInfo = repository.displayInfoFlow().firstWithTimeoutOrNull()
+
+ assertThat(displayInfo)
+ .isEqualTo(
+ InternetPreferenceRepository.DisplayInfo(
+ summary = SUMMARY,
+ iconResId = R.drawable.ic_network_cell,
+ )
+ )
+ }
+
+ @Test
+ fun displayInfoFlow_ethernet() = runBlocking {
+ val wifiNetworkCapabilities =
+ NetworkCapabilities.Builder()
+ .addTransportType(NetworkCapabilities.TRANSPORT_ETHERNET)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
+ .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)
+ .build()
+ mockConnectivityRepository.stub {
+ on { networkCapabilitiesFlow() } doReturn flowOf(wifiNetworkCapabilities)
+ }
+
+ val displayInfo = repository.displayInfoFlow().firstWithTimeoutOrNull()
+
+ assertThat(displayInfo)
+ .isEqualTo(
+ InternetPreferenceRepository.DisplayInfo(
+ summary = context.getString(R.string.to_switch_networks_disconnect_ethernet),
+ iconResId = R.drawable.ic_settings_ethernet,
+ )
+ )
+ }
+
+ @Test
+ fun displayInfoFlow_airplaneModeOnAndWifiOn() = runBlocking {
+ mockConnectivityRepository.stub {
+ on { networkCapabilitiesFlow() } doReturn flowOf(NetworkCapabilities())
+ }
+ airplaneModeOnFlow.value = true
+ mockWifiRepository.stub {
+ on { wifiStateFlow() } doReturn flowOf(WifiManager.WIFI_STATE_ENABLED)
+ }
+
+ val displayInfo = repository.displayInfoFlow().firstWithTimeoutOrNull()
+
+ assertThat(displayInfo)
+ .isEqualTo(
+ InternetPreferenceRepository.DisplayInfo(
+ summary = context.getString(R.string.networks_available),
+ iconResId = R.drawable.ic_no_internet_available,
+ )
+ )
+ }
+
+ @Test
+ fun displayInfoFlow_airplaneModeOnAndWifiOff() = runBlocking {
+ mockConnectivityRepository.stub {
+ on { networkCapabilitiesFlow() } doReturn flowOf(NetworkCapabilities())
+ }
+ airplaneModeOnFlow.value = true
+ mockWifiRepository.stub {
+ on { wifiStateFlow() } doReturn flowOf(WifiManager.WIFI_STATE_DISABLED)
+ }
+
+ val displayInfo = repository.displayInfoFlow().firstWithTimeoutOrNull()
+
+ assertThat(displayInfo)
+ .isEqualTo(
+ InternetPreferenceRepository.DisplayInfo(
+ summary = context.getString(R.string.condition_airplane_title),
+ iconResId = R.drawable.ic_no_internet_unavailable,
+ )
+ )
+ }
+
+ @Test
+ fun displayInfoFlow_airplaneModeOff() = runBlocking {
+ mockConnectivityRepository.stub {
+ on { networkCapabilitiesFlow() } doReturn flowOf(NetworkCapabilities())
+ }
+ airplaneModeOnFlow.value = false
+ mockWifiRepository.stub {
+ on { wifiStateFlow() } doReturn flowOf(WifiManager.WIFI_STATE_DISABLED)
+ }
+
+ val displayInfo = repository.displayInfoFlow().firstWithTimeoutOrNull()
+
+ assertThat(displayInfo)
+ .isEqualTo(
+ InternetPreferenceRepository.DisplayInfo(
+ summary = context.getString(R.string.networks_available),
+ iconResId = R.drawable.ic_no_internet_available,
+ )
+ )
+ }
+
+ private companion object {
+ const val SUMMARY = "Summary"
+ }
+}
diff --git a/tests/spa_unit/src/com/android/settings/network/apn/ApnEditCarrierEnabledTest.kt b/tests/spa_unit/src/com/android/settings/network/apn/ApnEditCarrierEnabledTest.kt
new file mode 100644
index 0000000..bd97482
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/network/apn/ApnEditCarrierEnabledTest.kt
@@ -0,0 +1,109 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network.apn
+
+import android.content.Context
+import androidx.compose.runtime.CompositionLocalProvider
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.setValue
+import androidx.compose.ui.platform.LocalContext
+import androidx.compose.ui.test.assertIsDisplayed
+import androidx.compose.ui.test.assertIsEnabled
+import androidx.compose.ui.test.assertIsNotEnabled
+import androidx.compose.ui.test.assertIsOff
+import androidx.compose.ui.test.assertIsOn
+import androidx.compose.ui.test.junit4.ComposeTestRule
+import androidx.compose.ui.test.junit4.createComposeRule
+import androidx.compose.ui.test.onNodeWithText
+import androidx.compose.ui.test.performClick
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settings.R
+import org.junit.Before
+import org.junit.Rule
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.spy
+import org.mockito.kotlin.stub
+
+@RunWith(AndroidJUnit4::class)
+class ApnEditCarrierEnabledTest {
+
+ @get:Rule val composeTestRule = createComposeRule()
+
+ private val context: Context = spy(ApplicationProvider.getApplicationContext()) {}
+
+ private val resources = spy(context.resources) {}
+
+ @Before
+ fun setUp() {
+ context.stub { on { resources } doReturn resources }
+ }
+
+ @Test
+ fun carrierEnabled_displayed() {
+ composeTestRule.setContent { ApnEditCarrierEnabled(ApnData()) {} }
+
+ composeTestRule.onCarrierEnabled().assertIsDisplayed()
+ }
+
+ @Test
+ fun carrierEnabled_isChecked() {
+ val apnData = ApnData(carrierEnabled = true)
+
+ composeTestRule.setContent { ApnEditCarrierEnabled(apnData) {} }
+
+ composeTestRule.onCarrierEnabled().assertIsOn()
+ }
+
+ @Test
+ fun carrierEnabled_allowEdit_checkChanged() {
+ resources.stub { on { getBoolean(R.bool.config_allow_edit_carrier_enabled) } doReturn true }
+ var apnData by mutableStateOf(ApnData(carrierEnabled = true))
+ composeTestRule.setContent {
+ CompositionLocalProvider(LocalContext provides context) {
+ ApnEditCarrierEnabled(apnData) { apnData = apnData.copy(carrierEnabled = it) }
+ }
+ }
+
+ composeTestRule.onCarrierEnabled().performClick()
+
+ composeTestRule.onCarrierEnabled().assertIsEnabled().assertIsOff()
+ }
+
+ @Test
+ fun carrierEnabled_notAllowEdit_checkNotChanged() {
+ resources.stub {
+ on { getBoolean(R.bool.config_allow_edit_carrier_enabled) } doReturn false
+ }
+ var apnData by mutableStateOf(ApnData(carrierEnabled = true))
+ composeTestRule.setContent {
+ CompositionLocalProvider(LocalContext provides context) {
+ ApnEditCarrierEnabled(apnData) { apnData = apnData.copy(carrierEnabled = it) }
+ }
+ }
+
+ composeTestRule.onCarrierEnabled().performClick()
+
+ composeTestRule.onCarrierEnabled().assertIsNotEnabled().assertIsOn()
+ }
+
+ private fun ComposeTestRule.onCarrierEnabled() =
+ onNodeWithText(context.getString(R.string.carrier_enabled))
+}
diff --git a/tests/spa_unit/src/com/android/settings/network/apn/ApnEditPageProviderTest.kt b/tests/spa_unit/src/com/android/settings/network/apn/ApnEditPageProviderTest.kt
index 03fddb5..d310604 100644
--- a/tests/spa_unit/src/com/android/settings/network/apn/ApnEditPageProviderTest.kt
+++ b/tests/spa_unit/src/com/android/settings/network/apn/ApnEditPageProviderTest.kt
@@ -21,18 +21,12 @@
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.ui.test.assertIsDisplayed
-import androidx.compose.ui.test.assertIsOff
-import androidx.compose.ui.test.assertIsOn
import androidx.compose.ui.test.hasText
-import androidx.compose.ui.test.isFocused
import androidx.compose.ui.test.junit4.createComposeRule
-import androidx.compose.ui.test.onAllNodesWithText
import androidx.compose.ui.test.onChild
import androidx.compose.ui.test.onChildAt
-import androidx.compose.ui.test.onLast
import androidx.compose.ui.test.onNodeWithText
import androidx.compose.ui.test.onRoot
-import androidx.compose.ui.test.performClick
import androidx.compose.ui.test.performScrollToNode
import androidx.test.core.app.ApplicationProvider
import androidx.test.ext.junit.runners.AndroidJUnit4
@@ -54,10 +48,8 @@
private val port = "port"
private val apnType = context.resources.getString(R.string.apn_type)
private val apnRoaming = "IPv4"
- private val apnEnable = context.resources.getString(R.string.carrier_enabled)
private val apnProtocolOptions =
context.resources.getStringArray(R.array.apn_protocol_entries).toList()
- private val networkType = context.resources.getString(R.string.network_type)
private val passwordTitle = context.resources.getString(R.string.apn_password)
private val apnInit = ApnData(
name = apnName,
@@ -65,7 +57,6 @@
port = port,
apnType = apnType,
apnRoaming = apnProtocolOptions.indexOf(apnRoaming),
- apnEnable = true
)
private val apnData = mutableStateOf(
apnInit
@@ -134,79 +125,6 @@
}
@Test
- fun carrier_enabled_displayed() {
- composeTestRule.setContent {
- ApnPage(apnInit, remember { apnData }, uri)
- }
- composeTestRule.onRoot().onChild().onChildAt(0)
- .performScrollToNode(hasText(apnEnable, true))
- composeTestRule.onNodeWithText(apnEnable, true).assertIsDisplayed()
- }
-
- @Test
- fun carrier_enabled_isChecked() {
- composeTestRule.setContent {
- ApnPage(apnInit, remember { apnData }, uri)
- }
- composeTestRule.onRoot().onChild().onChildAt(0)
- .performScrollToNode(hasText(apnEnable, true))
- composeTestRule.onNodeWithText(apnEnable, true).assertIsOn()
- }
-
- @Test
- fun carrier_enabled_checkChanged() {
- composeTestRule.setContent {
- ApnPage(apnInit, remember { apnData }, uri)
- }
- composeTestRule.onRoot().onChild().onChildAt(0)
- .performScrollToNode(hasText(apnEnable, true))
- composeTestRule.onNodeWithText(apnEnable, true).performClick()
- composeTestRule.onNodeWithText(apnEnable, true).assertIsOff()
- }
-
- @Test
- fun network_type_displayed() {
- composeTestRule.setContent {
- ApnPage(apnInit, remember { apnData }, uri)
- }
- composeTestRule.onRoot().onChild().onChildAt(0)
- .performScrollToNode(hasText(networkType, true))
- composeTestRule.onNodeWithText(networkType, true).assertIsDisplayed()
- }
-
- @Test
- fun network_type_changed() {
- composeTestRule.setContent {
- ApnPage(apnInit, remember { apnData }, uri)
- }
- composeTestRule.onRoot().onChild().onChildAt(0)
- .performScrollToNode(hasText(networkType, true))
- composeTestRule.onNodeWithText(networkType, true).performClick()
- composeTestRule.onNodeWithText(NETWORK_TYPE_LTE, true).performClick()
- composeTestRule.onNode(hasText(NETWORK_TYPE_UNSPECIFIED) and isFocused(), true)
- .assertDoesNotExist()
- composeTestRule.onNode(hasText(NETWORK_TYPE_LTE) and isFocused(), true).assertIsDisplayed()
- }
-
- @Test
- fun network_type_changed_back2Default() {
- composeTestRule.setContent {
- ApnPage(apnInit, remember { apnData }, uri)
- }
- composeTestRule.onRoot().onChild().onChildAt(0)
- .performScrollToNode(hasText(networkType, true))
- composeTestRule.onNodeWithText(networkType, true).performClick()
- composeTestRule.onNodeWithText(NETWORK_TYPE_LTE, true).performClick()
- composeTestRule.onNode(hasText(NETWORK_TYPE_UNSPECIFIED) and isFocused(), true)
- .assertDoesNotExist()
- composeTestRule.onNode(hasText(NETWORK_TYPE_LTE) and isFocused(), true).assertIsDisplayed()
- composeTestRule.onAllNodesWithText(NETWORK_TYPE_LTE, true).onLast().performClick()
- composeTestRule.onNode(hasText(NETWORK_TYPE_UNSPECIFIED) and isFocused(), true)
- .assertIsDisplayed()
- composeTestRule.onNode(hasText(NETWORK_TYPE_LTE) and isFocused(), true).assertDoesNotExist()
- }
-
- @Test
fun password_displayed() {
composeTestRule.setContent {
ApnPage(apnInit, remember { apnData }, uri)
@@ -215,9 +133,4 @@
.performScrollToNode(hasText(passwordTitle, true))
composeTestRule.onNodeWithText(passwordTitle, true).assertIsDisplayed()
}
-
- private companion object {
- const val NETWORK_TYPE_UNSPECIFIED = "Unspecified"
- const val NETWORK_TYPE_LTE = "LTE"
- }
}
\ No newline at end of file
diff --git a/tests/spa_unit/src/com/android/settings/network/apn/ApnNetworkTypeCheckBoxTest.kt b/tests/spa_unit/src/com/android/settings/network/apn/ApnNetworkTypeCheckBoxTest.kt
new file mode 100644
index 0000000..5a8e40a
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/network/apn/ApnNetworkTypeCheckBoxTest.kt
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network.apn
+
+import android.content.Context
+import android.telephony.TelephonyManager
+import androidx.compose.ui.semantics.Role
+import androidx.compose.ui.test.assertIsDisplayed
+import androidx.compose.ui.test.hasText
+import androidx.compose.ui.test.isToggleable
+import androidx.compose.ui.test.junit4.ComposeTestRule
+import androidx.compose.ui.test.junit4.createComposeRule
+import androidx.compose.ui.test.onNodeWithText
+import androidx.compose.ui.test.performClick
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settings.R
+import com.android.settingslib.spa.testutils.hasRole
+import org.junit.Rule
+import org.junit.Test
+import org.junit.runner.RunWith
+
+@RunWith(AndroidJUnit4::class)
+class ApnNetworkTypeCheckBoxTest {
+ @get:Rule val composeTestRule = createComposeRule()
+
+ private val context: Context = ApplicationProvider.getApplicationContext()
+
+ private val apnData = ApnData()
+
+ @Test
+ fun networkType_displayed() {
+ composeTestRule.setContent { ApnNetworkTypeCheckBox(apnData) {} }
+
+ composeTestRule.onNodeWithText(context.getString(R.string.network_type)).assertIsDisplayed()
+ }
+
+ @Test
+ fun networkType_changed() {
+ composeTestRule.setContent { ApnNetworkTypeCheckBox(apnData) {} }
+
+ composeTestRule.onNodeWithText(context.getString(R.string.network_type)).performClick()
+ composeTestRule.onNode(hasText(LTE_TEXT) and isToggleable()).performClick()
+
+ composeTestRule
+ .onDropdownListWithText(context.getString(R.string.network_type_unspecified))
+ .assertDoesNotExist()
+ composeTestRule.onDropdownListWithText(LTE_TEXT).assertIsDisplayed()
+ }
+
+ @Test
+ fun networkType_changed_back2Default() {
+ composeTestRule.setContent { ApnNetworkTypeCheckBox(apnData) {} }
+
+ composeTestRule.onNodeWithText(context.getString(R.string.network_type)).performClick()
+ composeTestRule.onNode(hasText(LTE_TEXT) and isToggleable()).performClick()
+ composeTestRule.onNode(hasText(LTE_TEXT) and isToggleable()).performClick()
+
+ composeTestRule
+ .onDropdownListWithText(context.getString(R.string.network_type_unspecified))
+ .assertIsDisplayed()
+ composeTestRule.onDropdownListWithText(LTE_TEXT).assertDoesNotExist()
+ }
+
+ private fun ComposeTestRule.onDropdownListWithText(text: String) =
+ onNode(hasText(text) and hasRole(Role.DropdownList))
+
+ private companion object {
+ val LTE_TEXT = TelephonyManager.getNetworkTypeName(TelephonyManager.NETWORK_TYPE_LTE)
+ }
+}
diff --git a/tests/spa_unit/src/com/android/settings/network/telephony/DataSubscriptionRepositoryTest.kt b/tests/spa_unit/src/com/android/settings/network/telephony/DataSubscriptionRepositoryTest.kt
new file mode 100644
index 0000000..5b8d020
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/network/telephony/DataSubscriptionRepositoryTest.kt
@@ -0,0 +1,137 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.network.telephony
+
+import android.content.BroadcastReceiver
+import android.content.Context
+import android.content.Intent
+import android.telephony.SubscriptionInfo
+import android.telephony.SubscriptionManager
+import android.telephony.TelephonyCallback
+import android.telephony.TelephonyManager
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settings.network.telephony.DataSubscriptionRepository.Companion.SUBSCRIPTION_KEY
+import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
+import com.android.settingslib.spa.testutils.toListWithTimeout
+import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.async
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.runBlocking
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.any
+import org.mockito.kotlin.argThat
+import org.mockito.kotlin.doAnswer
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.mock
+import org.mockito.kotlin.spy
+import org.mockito.kotlin.whenever
+
+@RunWith(AndroidJUnit4::class)
+class DataSubscriptionRepositoryTest {
+
+ private var activeDataSubIdListener: TelephonyCallback.ActiveDataSubscriptionIdListener? = null
+
+ private val mockTelephonyManager =
+ mock<TelephonyManager> {
+ on { registerTelephonyCallback(any(), any()) } doAnswer
+ {
+ activeDataSubIdListener =
+ it.arguments[1] as TelephonyCallback.ActiveDataSubscriptionIdListener
+ }
+ }
+
+ private val mockSubscriptionManager =
+ mock<SubscriptionManager> {
+ on { getActiveSubscriptionInfo(SUB_ID_10) } doReturn
+ SubscriptionInfo.Builder().setId(SUB_ID_10).build()
+ on { getActiveSubscriptionInfo(SUB_ID_20) } doReturn
+ SubscriptionInfo.Builder().setId(SUB_ID_20).build()
+ }
+
+ private val context: Context =
+ spy(ApplicationProvider.getApplicationContext()) {
+ on { getSystemService(TelephonyManager::class.java) } doReturn mockTelephonyManager
+ on { getSystemService(SubscriptionManager::class.java) } doReturn
+ mockSubscriptionManager
+
+ doAnswer {
+ val broadcastReceiver = it.arguments[0] as BroadcastReceiver
+ val intent = Intent().apply { putExtra(SUBSCRIPTION_KEY, SUB_ID_10) }
+ broadcastReceiver.onReceive(mock, intent)
+ null
+ }
+ .whenever(mock)
+ .registerReceiver(
+ any(),
+ argThat {
+ hasAction(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED)
+ },
+ any(),
+ )
+ }
+
+ private val repository = DataSubscriptionRepository(context) { subId -> "Name$subId" }
+
+ @Test
+ fun defaultDataSubscriptionIdFlow() = runBlocking {
+ val defaultSubIdDeferred = async {
+ repository.defaultDataSubscriptionIdFlow().toListWithTimeout()
+ }
+ delay(100)
+
+ assertThat(defaultSubIdDeferred.await()).contains(SUB_ID_10)
+ }
+
+ @Test
+ fun activeDataSubscriptionIdFlow() = runBlocking {
+ val activeSubIdDeferred = async {
+ repository.activeDataSubscriptionIdFlow().toListWithTimeout()
+ }
+ delay(100)
+
+ activeDataSubIdListener?.onActiveDataSubscriptionIdChanged(SUB_ID_20)
+
+ assertThat(activeSubIdDeferred.await()).contains(SUB_ID_20)
+ }
+
+ @Test
+ fun dataSummaryFlow_defaultIsActive() = runBlocking {
+ val summaryDeferred = async { repository.dataSummaryFlow().firstWithTimeoutOrNull() }
+ delay(100)
+
+ activeDataSubIdListener?.onActiveDataSubscriptionIdChanged(SUB_ID_10)
+
+ assertThat(summaryDeferred.await()).isEqualTo("Name10")
+ }
+
+ @Test
+ fun dataSummaryFlow_defaultIsNotActive() = runBlocking {
+ val summaryDeferred = async { repository.dataSummaryFlow().firstWithTimeoutOrNull() }
+ delay(100)
+
+ activeDataSubIdListener?.onActiveDataSubscriptionIdChanged(SUB_ID_20)
+
+ assertThat(summaryDeferred.await()).isEqualTo("Temporarily using Name20")
+ }
+
+ private companion object {
+ const val SUB_ID_10 = 10
+ const val SUB_ID_20 = 20
+ }
+}
diff --git a/tests/spa_unit/src/com/android/settings/print/PrintSettingsPageProviderTest.kt b/tests/spa_unit/src/com/android/settings/print/PrintSettingsPageProviderTest.kt
index 746816b..2571406 100644
--- a/tests/spa_unit/src/com/android/settings/print/PrintSettingsPageProviderTest.kt
+++ b/tests/spa_unit/src/com/android/settings/print/PrintSettingsPageProviderTest.kt
@@ -17,6 +17,7 @@
package com.android.settings.print
import android.content.Context
+import android.net.Uri
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.test.isDisplayed
@@ -31,7 +32,9 @@
import com.android.settings.print.PrintSettingsFragment.EXTRA_CHECKED
import com.android.settings.print.PrintSettingsFragment.EXTRA_SERVICE_COMPONENT_NAME
import com.android.settings.print.PrintSettingsFragment.EXTRA_TITLE
+import com.android.settings.print.PrintSettingsPageProvider.AddPrintService
import com.android.settings.print.PrintSettingsPageProvider.PrintService
+import kotlinx.coroutines.flow.flowOf
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
@@ -44,35 +47,32 @@
@RunWith(AndroidJUnit4::class)
class PrintSettingsPageProviderTest {
- @get:Rule
- val composeTestRule = createComposeRule()
+ @get:Rule val composeTestRule = createComposeRule()
- private val context: Context = spy(ApplicationProvider.getApplicationContext()) {
- doNothing().whenever(mock).startActivity(any())
- }
+ private val context: Context =
+ spy(ApplicationProvider.getApplicationContext()) {
+ doNothing().whenever(mock).startActivity(any())
+ }
- private val displayInfo = PrintServiceDisplayInfo(
- title = TITLE,
- isEnabled = true,
- summary = SUMMARY,
- icon = context.getDrawable(R.drawable.ic_settings_print)!!,
- componentName = "ComponentName",
- )
+ private val displayInfo =
+ PrintServiceDisplayInfo(
+ title = TITLE,
+ isEnabled = true,
+ summary = SUMMARY,
+ icon = context.getDrawable(R.drawable.ic_settings_print)!!,
+ componentName = "ComponentName",
+ )
@Test
fun printService_titleDisplayed() {
- composeTestRule.setContent {
- PrintService(displayInfo)
- }
+ composeTestRule.setContent { PrintService(displayInfo) }
composeTestRule.onNodeWithText(TITLE).isDisplayed()
}
@Test
fun printService_summaryDisplayed() {
- composeTestRule.setContent {
- PrintService(displayInfo)
- }
+ composeTestRule.setContent { PrintService(displayInfo) }
composeTestRule.onNodeWithText(SUMMARY).isDisplayed()
}
@@ -80,25 +80,43 @@
@Test
fun printService_onClick() {
composeTestRule.setContent {
- CompositionLocalProvider(LocalContext provides context) {
- PrintService(displayInfo)
- }
+ CompositionLocalProvider(LocalContext provides context) { PrintService(displayInfo) }
}
composeTestRule.onNodeWithText(TITLE).performClick()
- verify(context).startActivity(argThat {
- val fragment = getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT)
- val arguments = getBundleExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS)!!
- fragment == PrintServiceSettingsFragment::class.qualifiedName &&
- arguments.getBoolean(EXTRA_CHECKED) == displayInfo.isEnabled &&
- arguments.getString(EXTRA_TITLE) == displayInfo.title &&
- arguments.getString(EXTRA_SERVICE_COMPONENT_NAME) == displayInfo.componentName
- })
+ verify(context)
+ .startActivity(
+ argThat {
+ val fragment = getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT)
+ val arguments = getBundleExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS)!!
+ fragment == PrintServiceSettingsFragment::class.qualifiedName &&
+ arguments.getBoolean(EXTRA_CHECKED) == displayInfo.isEnabled &&
+ arguments.getString(EXTRA_TITLE) == displayInfo.title &&
+ arguments.getString(EXTRA_SERVICE_COMPONENT_NAME) ==
+ displayInfo.componentName
+ }
+ )
+ }
+
+ @Test
+ fun addPrintService_onClick() {
+ composeTestRule.setContent {
+ CompositionLocalProvider(LocalContext provides context) {
+ AddPrintService(flowOf(SEARCH_URI))
+ }
+ }
+
+ composeTestRule
+ .onNodeWithText(context.getString(R.string.print_menu_item_add_service))
+ .performClick()
+
+ verify(context).startActivity(argThat { data == Uri.parse(SEARCH_URI) })
}
private companion object {
const val TITLE = "Title"
const val SUMMARY = "Summary"
+ const val SEARCH_URI = "search.uri"
}
}
diff --git a/tests/spa_unit/src/com/android/settings/wifi/WifiSummaryRepositoryTest.kt b/tests/spa_unit/src/com/android/settings/wifi/WifiSummaryRepositoryTest.kt
new file mode 100644
index 0000000..d7a92d6
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/wifi/WifiSummaryRepositoryTest.kt
@@ -0,0 +1,147 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi
+
+import android.content.Context
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settings.R
+import com.android.settings.wifi.repository.WifiPickerRepository
+import com.android.settings.wifi.repository.WifiStatusRepository
+import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
+import com.android.settingslib.wifi.WifiStatusTracker
+import com.android.wifitrackerlib.HotspotNetworkEntry
+import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.flow.flowOf
+import kotlinx.coroutines.runBlocking
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.mock
+import org.mockito.kotlin.stub
+
+@RunWith(AndroidJUnit4::class)
+class WifiSummaryRepositoryTest {
+
+ private val mockWifiStatusTracker = mock<WifiStatusTracker>()
+
+ private val context: Context = ApplicationProvider.getApplicationContext()
+
+ private val mockWifiStatusRepository =
+ mock<WifiStatusRepository> {
+ on { wifiStatusTrackerFlow() } doReturn flowOf(mockWifiStatusTracker)
+ }
+
+ private val mockWifiPickerRepository = mock<WifiPickerRepository>()
+
+ @Test
+ fun summaryFlow_wifiDisabled_returnOff() = runBlocking {
+ mockWifiStatusTracker.enabled = false
+ val repository =
+ WifiSummaryRepository(
+ context = context,
+ wifiStatusRepository = mockWifiStatusRepository,
+ wifiPickerRepository = null,
+ )
+
+ val summary = repository.summaryFlow().firstWithTimeoutOrNull()
+
+ assertThat(summary).isEqualTo(context.getString(R.string.switch_off_text))
+ }
+
+ @Test
+ fun summaryFlow_wifiDisconnected_returnDisconnected() = runBlocking {
+ mockWifiStatusTracker.apply {
+ enabled = true
+ connected = false
+ }
+ val repository =
+ WifiSummaryRepository(
+ context = context,
+ wifiStatusRepository = mockWifiStatusRepository,
+ wifiPickerRepository = null,
+ )
+
+ val summary = repository.summaryFlow().firstWithTimeoutOrNull()
+
+ assertThat(summary).isEqualTo(context.getString(R.string.disconnected))
+ }
+
+ @Test
+ fun summaryFlow_wifiConnected_returnSsid() = runBlocking {
+ mockWifiStatusTracker.apply {
+ enabled = true
+ connected = true
+ ssid = TEST_SSID
+ }
+ val repository =
+ WifiSummaryRepository(
+ context = context,
+ wifiStatusRepository = mockWifiStatusRepository,
+ wifiPickerRepository = null,
+ )
+
+ val summary = repository.summaryFlow().firstWithTimeoutOrNull()
+
+ assertThat(summary).isEqualTo(TEST_SSID)
+ }
+
+ @Test
+ fun summaryFlow_wifiConnectedAndWithSpeedLabel_returnSsidWithSpeedLabel() = runBlocking {
+ mockWifiStatusTracker.apply {
+ enabled = true
+ connected = true
+ ssid = TEST_SSID
+ statusLabel = STATUS_LABEL
+ }
+ val repository =
+ WifiSummaryRepository(
+ context = context,
+ wifiStatusRepository = mockWifiStatusRepository,
+ wifiPickerRepository = null,
+ )
+
+ val summary = repository.summaryFlow().firstWithTimeoutOrNull()
+
+ assertThat(summary).isEqualTo("$TEST_SSID / $STATUS_LABEL")
+ }
+
+ @Test
+ fun summaryFlow_withWifiPickerRepository() = runBlocking {
+ val hotspotNetworkEntry =
+ mock<HotspotNetworkEntry> { on { alternateSummary } doReturn ALTERNATE_SUMMARY }
+ mockWifiPickerRepository.stub {
+ on { connectedWifiEntryFlow() } doReturn flowOf(hotspotNetworkEntry)
+ }
+ val repository =
+ WifiSummaryRepository(
+ context = context,
+ wifiStatusRepository = mockWifiStatusRepository,
+ wifiPickerRepository = mockWifiPickerRepository,
+ )
+
+ val summary = repository.summaryFlow().firstWithTimeoutOrNull()
+
+ assertThat(summary).isEqualTo(ALTERNATE_SUMMARY)
+ }
+
+ private companion object {
+ const val TEST_SSID = "Test Ssid"
+ const val STATUS_LABEL = "Very Fast"
+ const val ALTERNATE_SUMMARY = "Alternate Summary"
+ }
+}
diff --git a/tests/spa_unit/src/com/android/settings/wifi/repository/WifiPickerRepositoryTest.kt b/tests/spa_unit/src/com/android/settings/wifi/repository/WifiPickerRepositoryTest.kt
new file mode 100644
index 0000000..cdcc13d
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/wifi/repository/WifiPickerRepositoryTest.kt
@@ -0,0 +1,78 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi.repository
+
+import android.content.Context
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
+import com.android.settingslib.spa.testutils.toListWithTimeout
+import com.android.wifitrackerlib.WifiEntry
+import com.android.wifitrackerlib.WifiPickerTracker
+import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.async
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.runBlocking
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.mock
+import org.mockito.kotlin.stub
+import org.mockito.kotlin.verify
+
+@RunWith(AndroidJUnit4::class)
+class WifiPickerRepositoryTest {
+
+ private val context: Context = ApplicationProvider.getApplicationContext()
+
+ private val mockWifiPickerTracker = mock<WifiPickerTracker>()
+
+ private var callback: WifiPickerTracker.WifiPickerTrackerCallback? = null
+
+ private val repository =
+ WifiPickerRepository(context) { _, callback ->
+ this.callback = callback
+ mockWifiPickerTracker
+ }
+
+ @Test
+ fun connectedWifiEntryFlow_callOnStartOnStopAndOnDestroy() = runBlocking {
+ repository.connectedWifiEntryFlow().firstWithTimeoutOrNull()
+
+ verify(mockWifiPickerTracker).onStart()
+ verify(mockWifiPickerTracker).onStop()
+ verify(mockWifiPickerTracker).onDestroy()
+ }
+
+ @Test
+ fun connectedWifiEntryFlow_initial() = runBlocking {
+ val wifiEntry = repository.connectedWifiEntryFlow().firstWithTimeoutOrNull()
+
+ assertThat(wifiEntry).isNull()
+ }
+
+ @Test
+ fun connectedWifiEntryFlow_onWifiEntriesChanged() = runBlocking {
+ val listDeferred = async { repository.connectedWifiEntryFlow().toListWithTimeout() }
+ delay(100)
+
+ mockWifiPickerTracker.stub { on { connectedWifiEntry } doReturn mock<WifiEntry>() }
+ callback?.onWifiEntriesChanged()
+
+ assertThat(listDeferred.await().filterNotNull()).isNotEmpty()
+ }
+}
diff --git a/tests/spa_unit/src/com/android/settings/wifi/repository/WifiRepositoryTest.kt b/tests/spa_unit/src/com/android/settings/wifi/repository/WifiRepositoryTest.kt
new file mode 100644
index 0000000..dae3617
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/wifi/repository/WifiRepositoryTest.kt
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi.repository
+
+import android.content.Context
+import android.content.Intent
+import android.net.wifi.WifiManager
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
+import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.flow.flowOf
+import kotlinx.coroutines.runBlocking
+import org.junit.Test
+import org.junit.runner.RunWith
+
+@RunWith(AndroidJUnit4::class)
+class WifiRepositoryTest {
+
+ private val context: Context = ApplicationProvider.getApplicationContext()
+
+ private val mockWifiStateChangedActionFlow = flowOf(Intent().apply {
+ putExtra(WifiManager.EXTRA_WIFI_STATE, WifiManager.WIFI_STATE_ENABLED)
+ })
+
+ private val repository = WifiRepository(context, mockWifiStateChangedActionFlow)
+
+ @Test
+ fun wifiStateFlow() = runBlocking {
+ val wifiState = repository.wifiStateFlow().firstWithTimeoutOrNull()
+
+ assertThat(wifiState).isEqualTo(WifiManager.WIFI_STATE_ENABLED)
+ }
+}
diff --git a/tests/spa_unit/src/com/android/settings/wifi/repository/WifiStatusRepositoryTest.kt b/tests/spa_unit/src/com/android/settings/wifi/repository/WifiStatusRepositoryTest.kt
new file mode 100644
index 0000000..200542e
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/wifi/repository/WifiStatusRepositoryTest.kt
@@ -0,0 +1,47 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.wifi.repository
+
+import android.content.Context
+import androidx.test.core.app.ApplicationProvider
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
+import com.android.settingslib.wifi.WifiStatusTracker
+import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.runBlocking
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.mock
+
+@RunWith(AndroidJUnit4::class)
+class WifiStatusRepositoryTest {
+
+ private val mockWifiStatusTracker = mock<WifiStatusTracker>()
+
+ private val context: Context = ApplicationProvider.getApplicationContext()
+
+ private val repository = WifiStatusRepository(context) { mockWifiStatusTracker }
+
+ @Test
+ fun wifiStatusTrackerFlow() = runBlocking {
+ mockWifiStatusTracker.enabled = false
+
+ val wifiStatusTracker = repository.wifiStatusTrackerFlow().firstWithTimeoutOrNull()
+
+ assertThat(wifiStatusTracker).isSameInstanceAs(mockWifiStatusTracker)
+ }
+}
diff --git a/tests/unit/src/com/android/settings/fingerprint2/domain/interactor/FingerprintManagerInteractorTest.kt b/tests/unit/src/com/android/settings/fingerprint2/domain/interactor/FingerprintManagerInteractorTest.kt
index 900afd1..67a5957 100644
--- a/tests/unit/src/com/android/settings/fingerprint2/domain/interactor/FingerprintManagerInteractorTest.kt
+++ b/tests/unit/src/com/android/settings/fingerprint2/domain/interactor/FingerprintManagerInteractorTest.kt
@@ -109,12 +109,7 @@
fingerprintManager,
fingerprintSensorRepository,
gateKeeperPasswordProvider,
- FingerprintEnrollInteractorImpl(
- context,
- FingerprintEnrollOptions.Builder().build(),
- fingerprintManager,
- Default,
- ),
+ FingerprintEnrollInteractorImpl(context, fingerprintManager, Default),
)
}
@@ -135,7 +130,7 @@
whenever(fingerprintManager.getEnrolledFingerprints(anyInt())).thenReturn(fingerprintList)
val list = underTest.enrolledFingerprints.last()
- assertThat(list.size).isEqualTo(fingerprintList.size)
+ assertThat(list!!.size).isEqualTo(fingerprintList.size)
val actual = list[0]
assertThat(actual.name).isEqualTo(expected.name)
assertThat(actual.fingerId).isEqualTo(expected.biometricId)
@@ -318,7 +313,11 @@
testScope.runTest {
val token = byteArrayOf(5, 3, 2)
var result: FingerEnrollState? = null
- val job = launch { underTest.enroll(token, EnrollReason.FindSensor).collect { result = it } }
+ val job = launch {
+ underTest
+ .enroll(token, EnrollReason.FindSensor, FingerprintEnrollOptions.Builder().build())
+ .collect { result = it }
+ }
val enrollCallback: ArgumentCaptor<FingerprintManager.EnrollmentCallback> = argumentCaptor()
runCurrent()
@@ -343,7 +342,11 @@
testScope.runTest {
val token = byteArrayOf(5, 3, 2)
var result: FingerEnrollState? = null
- val job = launch { underTest.enroll(token, EnrollReason.FindSensor).collect { result = it } }
+ val job = launch {
+ underTest
+ .enroll(token, EnrollReason.FindSensor, FingerprintEnrollOptions.Builder().build())
+ .collect { result = it }
+ }
val enrollCallback: ArgumentCaptor<FingerprintManager.EnrollmentCallback> = argumentCaptor()
runCurrent()
@@ -368,7 +371,11 @@
testScope.runTest {
val token = byteArrayOf(5, 3, 2)
var result: FingerEnrollState? = null
- val job = launch { underTest.enroll(token, EnrollReason.FindSensor).collect { result = it } }
+ val job = launch {
+ underTest
+ .enroll(token, EnrollReason.FindSensor, FingerprintEnrollOptions.Builder().build())
+ .collect { result = it }
+ }
val enrollCallback: ArgumentCaptor<FingerprintManager.EnrollmentCallback> = argumentCaptor()
runCurrent()
diff --git a/tests/unit/src/com/android/settings/fingerprint2/enrollment/viewmodel/FingerprintEnrollFindSensorViewModelV2Test.kt b/tests/unit/src/com/android/settings/fingerprint2/enrollment/viewmodel/FingerprintEnrollFindSensorViewModelV2Test.kt
index 4906e84..9662c39 100644
--- a/tests/unit/src/com/android/settings/fingerprint2/enrollment/viewmodel/FingerprintEnrollFindSensorViewModelV2Test.kt
+++ b/tests/unit/src/com/android/settings/fingerprint2/enrollment/viewmodel/FingerprintEnrollFindSensorViewModelV2Test.kt
@@ -35,7 +35,6 @@
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintFlowViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintGatekeeperViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationViewModel
import com.android.settings.testutils2.FakeFingerprintManagerInteractor
import com.android.systemui.biometrics.shared.model.toFingerprintSensor
@@ -90,45 +89,20 @@
Dispatchers.setMain(backgroundDispatcher)
fakeFingerprintManagerInteractor = FakeFingerprintManagerInteractor()
- gatekeeperViewModel =
- FingerprintGatekeeperViewModel.FingerprintGatekeeperViewModelFactory(
- null,
- fakeFingerprintManagerInteractor,
- )
- .create(FingerprintGatekeeperViewModel::class.java)
+ gatekeeperViewModel = FingerprintGatekeeperViewModel(fakeFingerprintManagerInteractor)
- val sensor =
- FingerprintSensorPropertiesInternal(
- 0 /* sensorId */,
- SensorProperties.STRENGTH_STRONG,
- 5 /* maxEnrollmentsPerUser */,
- listOf<ComponentInfoInternal>(),
- FingerprintSensorProperties.TYPE_POWER_BUTTON,
- false /* halControlsIllumination */,
- true /* resetLockoutRequiresHardwareAuthToken */,
- listOf<SensorLocationInternal>(SensorLocationInternal.DEFAULT),
- )
- .toFingerprintSensor()
+ val fingerprintFlowViewModel = FingerprintFlowViewModel()
+ fingerprintFlowViewModel.updateFlowType(Default)
+ navigationViewModel = FingerprintNavigationViewModel(fakeFingerprintManagerInteractor)
- val fingerprintFlowViewModel = FingerprintFlowViewModel(Default)
- navigationViewModel =
- FingerprintNavigationViewModel(
- FingerprintNavigationStep.Education(sensor),
- false,
- fingerprintFlowViewModel,
- fakeFingerprintManagerInteractor,
- )
-
- backgroundViewModel =
- BackgroundViewModel.BackgroundViewModelFactory().create(BackgroundViewModel::class.java)
+ backgroundViewModel = BackgroundViewModel()
backgroundViewModel.inForeground()
enrollViewModel =
- FingerprintEnrollViewModel.FingerprintEnrollViewModelFactory(
- fakeFingerprintManagerInteractor,
- gatekeeperViewModel,
- navigationViewModel,
- )
- .create(FingerprintEnrollViewModel::class.java)
+ FingerprintEnrollViewModel(
+ fakeFingerprintManagerInteractor,
+ gatekeeperViewModel,
+ navigationViewModel,
+ )
accessibilityInteractor =
object : AccessibilityInteractor {
override val isAccessibilityEnabled: Flow<Boolean> = flowOf(false)
@@ -145,23 +119,23 @@
orientationInteractor =
object : OrientationInteractor {
override val orientation: Flow<Int> = flowOf(Configuration.ORIENTATION_LANDSCAPE)
- override val rotation: Flow<Int> = flowOf(Surface.ROTATION_0)
- override val rotationFromDefault: Flow<Int> = flowOf(Surface.ROTATION_0)
+ override val rotation: Flow<Int> = flowOf(Surface.ROTATION_0)
+ override val rotationFromDefault: Flow<Int> = flowOf(Surface.ROTATION_0)
+
override fun getRotationFromDefault(rotation: Int): Int = rotation
}
underTest =
- FingerprintEnrollFindSensorViewModel.FingerprintEnrollFindSensorViewModelFactory(
- navigationViewModel,
- enrollViewModel,
- gatekeeperViewModel,
- backgroundViewModel,
- accessibilityInteractor,
- foldStateInteractor,
- orientationInteractor,
- fingerprintFlowViewModel,
- fakeFingerprintManagerInteractor,
- )
- .create(FingerprintEnrollFindSensorViewModel::class.java)
+ FingerprintEnrollFindSensorViewModel(
+ navigationViewModel,
+ enrollViewModel,
+ gatekeeperViewModel,
+ backgroundViewModel,
+ fingerprintFlowViewModel,
+ accessibilityInteractor,
+ foldStateInteractor,
+ orientationInteractor,
+ fakeFingerprintManagerInteractor,
+ )
}
@After
diff --git a/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModelTest.kt b/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModelTest.kt
index ad025cf..f59d1fc 100644
--- a/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModelTest.kt
+++ b/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollConfirmationViewModelTest.kt
@@ -23,22 +23,23 @@
import android.hardware.fingerprint.FingerprintSensorPropertiesInternal
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
import com.android.settings.biometrics.fingerprint2.lib.model.Default
+import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintAction
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollConfirmationViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintFlowViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationViewModel
import com.android.settings.testutils2.FakeFingerprintManagerInteractor
-import com.android.systemui.biometrics.shared.model.FingerprintSensor
-import com.android.systemui.biometrics.shared.model.FingerprintSensorType
-import com.android.systemui.biometrics.shared.model.SensorStrength
import com.android.systemui.biometrics.shared.model.toFingerprintSensor
import com.google.common.truth.Truth.assertThat
+import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.test.StandardTestDispatcher
import kotlinx.coroutines.test.TestScope
import kotlinx.coroutines.test.advanceUntilIdle
-import kotlinx.coroutines.test.runCurrent
+import kotlinx.coroutines.test.resetMain
import kotlinx.coroutines.test.runTest
+import kotlinx.coroutines.test.setMain
+import org.junit.After
import org.junit.Before
import org.junit.Rule
import org.junit.Test
@@ -53,44 +54,70 @@
@get:Rule val instantTaskRule = InstantTaskExecutorRule()
private var backgroundDispatcher = StandardTestDispatcher()
private var testScope = TestScope(backgroundDispatcher)
- val fingerprintFlowViewModel = FingerprintFlowViewModel(Default)
+ val fingerprintFlowViewModel = FingerprintFlowViewModel()
val fakeFingerprintManagerInteractor = FakeFingerprintManagerInteractor()
lateinit var navigationViewModel: FingerprintNavigationViewModel
lateinit var underTest: FingerprintEnrollConfirmationViewModel
@Before
fun setup() {
- navigationViewModel =
- FingerprintNavigationViewModel(
- FingerprintNavigationStep.Confirmation,
- false,
- fingerprintFlowViewModel,
- fakeFingerprintManagerInteractor,
- )
+ Dispatchers.setMain(backgroundDispatcher)
+ fingerprintFlowViewModel.updateFlowType(Default)
+ navigationViewModel = FingerprintNavigationViewModel(fakeFingerprintManagerInteractor)
underTest =
FingerprintEnrollConfirmationViewModel(navigationViewModel, fakeFingerprintManagerInteractor)
+ navigationViewModel.updateFingerprintFlow(Default)
+ navigationViewModel.hasConfirmedDeviceCredential(true)
+ }
+
+ @After
+ fun tearDown() {
+ Dispatchers.resetMain()
+ }
+
+ private fun bringToConfirmation() {
+ navigationViewModel.update(
+ FingerprintAction.NEXT,
+ FingerprintNavigationStep.Introduction::class,
+ "Intro.Test.NEXT",
+ )
+ navigationViewModel.update(
+ FingerprintAction.NEXT,
+ FingerprintNavigationStep.Education::class,
+ "Edu.Test.NEXT",
+ )
+ navigationViewModel.update(
+ FingerprintAction.NEXT,
+ FingerprintNavigationStep.Enrollment::class,
+ "Enrollment.Test.NEXT",
+ )
}
@Test
fun testCanEnrollFingerprints() =
testScope.runTest {
- fakeFingerprintManagerInteractor.sensorProp = FingerprintSensorPropertiesInternal(
- 0 /* sensorId */,
- SensorProperties.STRENGTH_STRONG,
- 5 /* maxEnrollmentsPerUser */,
- listOf<ComponentInfoInternal>(),
- FingerprintSensorProperties.TYPE_POWER_BUTTON,
- false /* halControlsIllumination */,
- true /* resetLockoutRequiresHardwareAuthToken */,
- listOf<SensorLocationInternal>(SensorLocationInternal.DEFAULT),
- )
- .toFingerprintSensor()
+ advanceUntilIdle()
+ bringToConfirmation()
+ fakeFingerprintManagerInteractor.sensorProp =
+ FingerprintSensorPropertiesInternal(
+ 0 /* sensorId */,
+ SensorProperties.STRENGTH_STRONG,
+ 5 /* maxEnrollmentsPerUser */,
+ listOf<ComponentInfoInternal>(),
+ FingerprintSensorProperties.TYPE_POWER_BUTTON,
+ false /* halControlsIllumination */,
+ true /* resetLockoutRequiresHardwareAuthToken */,
+ listOf<SensorLocationInternal>(SensorLocationInternal.DEFAULT),
+ )
+ .toFingerprintSensor()
fakeFingerprintManagerInteractor.enrolledFingerprintsInternal = mutableListOf()
fakeFingerprintManagerInteractor.enrollableFingerprints = 5
var canEnrollFingerprints: Boolean = false
- val job = launch { underTest.isAddAnotherButtonVisible.collect { canEnrollFingerprints = it } }
+ val job = launch {
+ underTest.isAddAnotherButtonVisible.collect { canEnrollFingerprints = it }
+ }
advanceUntilIdle()
assertThat(canEnrollFingerprints).isTrue()
@@ -100,12 +127,14 @@
@Test
fun testNextButtonSendsNextStep() =
testScope.runTest {
+ advanceUntilIdle()
+ bringToConfirmation()
var step: FingerprintNavigationStep.UiStep? = null
val job = launch { navigationViewModel.navigateTo.collect { step = it } }
underTest.onNextButtonClicked()
- runCurrent()
+ advanceUntilIdle()
assertThat(step).isNull()
job.cancel()
@@ -114,14 +143,18 @@
@Test
fun testAddAnotherSendsAction() =
testScope.runTest {
+ advanceUntilIdle()
+ bringToConfirmation()
+ advanceUntilIdle()
+
var step: FingerprintNavigationStep.UiStep? = null
val job = launch { navigationViewModel.navigateTo.collect { step = it } }
underTest.onAddAnotherButtonClicked()
- runCurrent()
+ advanceUntilIdle()
- assertThat(step).isInstanceOf(FingerprintNavigationStep.Enrollment::class.java)
+ assertThat(step).isNull()
job.cancel()
}
}
diff --git a/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModelTest.kt b/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModelTest.kt
index 5a30433..c475cc4 100644
--- a/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModelTest.kt
+++ b/tests/unit/src/com/android/settings/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollEnrollingViewModelTest.kt
@@ -28,9 +28,7 @@
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintEnrollViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintFlowViewModel
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintGatekeeperViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationStep.Enrollment
import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintNavigationViewModel
-import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.GatekeeperInfo
import com.android.settings.testutils2.FakeFingerprintManagerInteractor
import com.android.systemui.biometrics.shared.model.toFingerprintSensor
import com.google.common.truth.Truth.assertThat
@@ -61,20 +59,15 @@
private lateinit var backgroundViewModel: BackgroundViewModel
private lateinit var gateKeeperViewModel: FingerprintGatekeeperViewModel
private lateinit var navigationViewModel: FingerprintNavigationViewModel
- private val defaultGatekeeperInfo = GatekeeperInfo.GatekeeperPasswordInfo(byteArrayOf(1, 3), 3)
private var testScope = TestScope(backgroundDispatcher)
private lateinit var fakeFingerprintManagerInteractor: FakeFingerprintManagerInteractor
- private fun initialize(gatekeeperInfo: GatekeeperInfo = defaultGatekeeperInfo) {
+ private fun initialize() {
fakeFingerprintManagerInteractor = FakeFingerprintManagerInteractor()
- gateKeeperViewModel =
- FingerprintGatekeeperViewModel.FingerprintGatekeeperViewModelFactory(
- gatekeeperInfo,
- fakeFingerprintManagerInteractor,
- )
- .create(FingerprintGatekeeperViewModel::class.java)
- val sensor =
+
+ gateKeeperViewModel = FingerprintGatekeeperViewModel(fakeFingerprintManagerInteractor)
+ fakeFingerprintManagerInteractor.sensorProp =
FingerprintSensorPropertiesInternal(
1 /* sensorId */,
SensorProperties.STRENGTH_STRONG,
@@ -86,32 +79,21 @@
listOf<SensorLocationInternal>(SensorLocationInternal.DEFAULT),
)
.toFingerprintSensor()
- val fingerprintFlowViewModel = FingerprintFlowViewModel(Default)
+ val fingerprintFlowViewModel = FingerprintFlowViewModel()
+ fingerprintFlowViewModel.updateFlowType(Default)
- navigationViewModel =
- FingerprintNavigationViewModel(
- Enrollment(sensor),
- false,
- fingerprintFlowViewModel,
- fakeFingerprintManagerInteractor,
- )
+ navigationViewModel = FingerprintNavigationViewModel(fakeFingerprintManagerInteractor)
- backgroundViewModel =
- BackgroundViewModel.BackgroundViewModelFactory().create(BackgroundViewModel::class.java)
+ backgroundViewModel = BackgroundViewModel()
backgroundViewModel.inForeground()
val fingerprintEnrollViewModel =
- FingerprintEnrollViewModel.FingerprintEnrollViewModelFactory(
- fakeFingerprintManagerInteractor,
- gateKeeperViewModel,
- navigationViewModel,
- )
- .create(FingerprintEnrollViewModel::class.java)
+ FingerprintEnrollViewModel(
+ fakeFingerprintManagerInteractor,
+ gateKeeperViewModel,
+ navigationViewModel,
+ )
enrollEnrollingViewModel =
- FingerprintEnrollEnrollingViewModel.FingerprintEnrollEnrollingViewModelFactory(
- fingerprintEnrollViewModel,
- backgroundViewModel,
- )
- .create(FingerprintEnrollEnrollingViewModel::class.java)
+ FingerprintEnrollEnrollingViewModel(fingerprintEnrollViewModel, backgroundViewModel)
}
@Before
@@ -128,6 +110,7 @@
@Test
fun testEnrollShouldBeFalse() =
testScope.runTest {
+ gateKeeperViewModel.onConfirmDevice(true, 3L, false)
var shouldEnroll = false
val job = launch {
@@ -147,6 +130,7 @@
@Test
fun testEnrollShouldBeFalseWhenBackground() =
testScope.runTest {
+ gateKeeperViewModel.onConfirmDevice(true, 3L, false)
var shouldEnroll = false
val job = launch {
diff --git a/tests/unit/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtilsTest.kt b/tests/unit/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtilsTest.kt
index 76ae491..94f082d 100644
--- a/tests/unit/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtilsTest.kt
+++ b/tests/unit/src/com/android/settings/fuelgauge/batteryusage/AppOptModeSharedPreferencesUtilsTest.kt
@@ -26,6 +26,7 @@
import com.android.settings.fuelgauge.BatteryOptimizeUtils.MODE_UNKNOWN
import com.android.settings.fuelgauge.BatteryOptimizeUtils.MODE_UNRESTRICTED
import com.android.settings.fuelgauge.batteryusage.AppOptModeSharedPreferencesUtils.UNLIMITED_EXPIRE_TIME
+import com.android.settings.testutils.FakeFeatureFactory
import com.google.common.truth.Truth.assertThat
import org.junit.After
import org.junit.Before
@@ -51,9 +52,14 @@
@Spy
private var testBatteryOptimizeUtils = spy(BatteryOptimizeUtils(context, UID, PACKAGE_NAME))
+ private lateinit var featureFactory: FakeFeatureFactory
+
@Before
fun setup() {
AppOptModeSharedPreferencesUtils.clearAll(context)
+ featureFactory = FakeFeatureFactory.setupForTest()
+ whenever(featureFactory.powerUsageFeatureProvider.isForceExpireAppOptimizationModeEnabled)
+ .thenReturn(false)
}
@After
@@ -127,6 +133,20 @@
}
@Test
+ fun resetExpiredAppOptModeBeforeTimestamp_forceExpiredData_verifyEmptyList() {
+ whenever(featureFactory.powerUsageFeatureProvider.isForceExpireAppOptimizationModeEnabled)
+ .thenReturn(true)
+ insertAppOptModeEventForTest(expirationTime = 1000L)
+
+ AppOptModeSharedPreferencesUtils.resetExpiredAppOptModeBeforeTimestamp(
+ context,
+ queryTimestampMs = 999L
+ )
+
+ assertThat(AppOptModeSharedPreferencesUtils.getAllEvents(context)).isEmpty()
+ }
+
+ @Test
fun resetExpiredAppOptModeBeforeTimestamp_noExpiredData_verifyData() {
insertAppOptModeEventForTest(expirationTime = 1000L)
diff --git a/tests/unit/src/com/android/settings/network/NetworkProviderCallsSmsFragmentTest.java b/tests/unit/src/com/android/settings/network/NetworkProviderCallsSmsFragmentTest.java
index cc9e116..fa61820 100644
--- a/tests/unit/src/com/android/settings/network/NetworkProviderCallsSmsFragmentTest.java
+++ b/tests/unit/src/com/android/settings/network/NetworkProviderCallsSmsFragmentTest.java
@@ -22,6 +22,7 @@
import android.content.Context;
import android.os.Looper;
+import android.platform.test.annotations.DisableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import androidx.test.annotation.UiThreadTest;
@@ -54,11 +55,11 @@
if (Looper.myLooper() == null) {
Looper.prepare();
}
- mSetFlagsRule.disableFlags(Flags.FLAG_IS_DUAL_SIM_ONBOARDING_ENABLED);
}
@Test
@UiThreadTest
+ @DisableFlags(Flags.FLAG_IS_DUAL_SIM_ONBOARDING_ENABLED)
public void isPageSearchEnabled_shouldIncludeFragmentXml() {
mPreferenceKeyList =
NetworkProviderCallsSmsFragment.SEARCH_INDEX_DATA_PROVIDER
diff --git a/tests/unit/src/com/android/settings/network/ResetNetworkOperationBuilderTest.java b/tests/unit/src/com/android/settings/network/ResetNetworkOperationBuilderTest.java
index 6213f8e..5f54406 100644
--- a/tests/unit/src/com/android/settings/network/ResetNetworkOperationBuilderTest.java
+++ b/tests/unit/src/com/android/settings/network/ResetNetworkOperationBuilderTest.java
@@ -188,7 +188,7 @@
doThrow(new IllegalArgumentException()).when(mContentProvider).call(
anyString(), anyString(), anyString(), any());
- mBuilder.restartPhoneProcess();
+ mBuilder.restartPhoneProcess().build().run();
}
@Test
@@ -196,12 +196,12 @@
doThrow(new IllegalArgumentException()).when(mContentProvider).call(
anyString(), anyString(), anyString(), any());
- mBuilder.restartRild();
+ mBuilder.restartRild().build().run();
}
@Test
public void restartPhoneProcess_withTelephonyContentProvider_shouldCallRestartPhoneProcess() {
- mBuilder.restartPhoneProcess();
+ mBuilder.restartPhoneProcess().build().run();
verify(mContentProvider).call(
eq(mBuilder.getResetTelephonyContentProviderAuthority()),
@@ -212,7 +212,7 @@
@Test
public void restartRild_withTelephonyContentProvider_shouldCallRestartRild() {
- mBuilder.restartRild();
+ mBuilder.restartRild().build().run();
verify(mContentProvider).call(
eq(mBuilder.getResetTelephonyContentProviderAuthority()),
diff --git a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java
index 2165bc9..3adcbdb 100644
--- a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java
+++ b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java
@@ -48,7 +48,6 @@
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -115,7 +114,7 @@
mCarrierConfig.putBoolean(CarrierConfigManager.KEY_CARRIER_WFC_IMS_AVAILABLE_BOOL, true);
when(mTelecomManager.getSimCallManagerForSubscription(SUB_ID))
.thenReturn(mPhoneAccountHandle);
- mMockQueryWfcState = new MockWfcQueryImsState(mContext, SUB_ID);
+ mMockQueryWfcState = spy(new MockWfcQueryImsState(mContext, SUB_ID));
if (Looper.myLooper() == null) {
Looper.prepare();
@@ -177,11 +176,11 @@
}
@Test
- @Ignore("b/337417499")
public void
shouldShowWifiCallingForSub_wifiCallingEnabledWithActivityHandleIntent_returnTrue() {
buildPhoneAccountConfigureIntent(true);
doReturn(mMockQueryWfcState).when(mNetworkProviderWifiCallingGroup).queryImsState(SUB_ID);
+ doReturn(true).when(mMockQueryWfcState).isReadyToWifiCalling();
doReturn(mPhoneAccountHandle).when(mNetworkProviderWifiCallingGroup)
.getPhoneAccountHandleForSubscriptionId(SUB_ID);
diff --git a/tests/unit/src/com/android/settings/privatespace/PrivateSpaceMaintainerTest.java b/tests/unit/src/com/android/settings/privatespace/PrivateSpaceMaintainerTest.java
index 2463d4c..7095235 100644
--- a/tests/unit/src/com/android/settings/privatespace/PrivateSpaceMaintainerTest.java
+++ b/tests/unit/src/com/android/settings/privatespace/PrivateSpaceMaintainerTest.java
@@ -215,7 +215,7 @@
privateSpaceMaintainer.deletePrivateSpace();
privateSpaceMaintainer.createPrivateSpace();
// test that no exception is thrown, which would indicate that the receiver was registered.
- mContext.unregisterReceiver(privateSpaceMaintainer.getBroadcastReceiver());
+ mContext.unregisterReceiver(privateSpaceMaintainer.getProfileBroadcastReceiver());
privateSpaceMaintainer.resetBroadcastReceiver();
}
@@ -227,7 +227,7 @@
PrivateSpaceMaintainer.getInstance(mContext);
privateSpaceMaintainer.createPrivateSpace();
privateSpaceMaintainer.deletePrivateSpace();
- assertThat(privateSpaceMaintainer.getBroadcastReceiver()).isNull();
+ assertThat(privateSpaceMaintainer.getProfileBroadcastReceiver()).isNull();
}
/**