diff options
55 files changed, 270 insertions, 106 deletions
diff --git a/cmds/screencap/screencap.cpp b/cmds/screencap/screencap.cpp index 23668786abee..35f8bbb57e50 100644 --- a/cmds/screencap/screencap.cpp +++ b/cmds/screencap/screencap.cpp @@ -116,13 +116,6 @@ static status_t notifyMediaScanner(const char* fileName) { int main(int argc, char** argv) { - // setThreadPoolMaxThreadCount(0) actually tells the kernel it's - // not allowed to spawn any additional threads, but we still spawn - // a binder thread from userspace when we call startThreadPool(). - // See b/36066697 for rationale - ProcessState::self()->setThreadPoolMaxThreadCount(0); - ProcessState::self()->startThreadPool(); - const char* pname = argv[0]; bool png = false; int32_t displayId = DEFAULT_DISPLAY_ID; @@ -182,11 +175,19 @@ int main(int argc, char** argv) ISurfaceComposer::eRotate90, // 3 == DISPLAY_ORIENTATION_270 }; + // setThreadPoolMaxThreadCount(0) actually tells the kernel it's + // not allowed to spawn any additional threads, but we still spawn + // a binder thread from userspace when we call startThreadPool(). + // See b/36066697 for rationale + ProcessState::self()->setThreadPoolMaxThreadCount(0); + ProcessState::self()->startThreadPool(); + ScreenshotClient screenshot; sp<IBinder> display = SurfaceComposerClient::getBuiltInDisplay(displayId); if (display == NULL) { fprintf(stderr, "Unable to get handle for display %d\n", displayId); - return 1; + // b/36066697: Avoid running static destructors. + _exit(1); } Vector<DisplayInfo> configs; @@ -195,7 +196,8 @@ int main(int argc, char** argv) if (static_cast<size_t>(activeConfig) >= configs.size()) { fprintf(stderr, "Active config %d not inside configs (size %zu)\n", activeConfig, configs.size()); - return 1; + // b/36066697: Avoid running static destructors. + _exit(1); } uint8_t displayOrientation = configs[activeConfig].orientation; uint32_t captureOrientation = ORIENTATION_MAP[displayOrientation]; diff --git a/core/java/android/net/NetworkCapabilities.java b/core/java/android/net/NetworkCapabilities.java index 6ce9642d0a89..0a5b9c1590aa 100644 --- a/core/java/android/net/NetworkCapabilities.java +++ b/core/java/android/net/NetworkCapabilities.java @@ -775,7 +775,7 @@ public final class NetworkCapabilities implements Parcelable { // TODO: consider only enforcing that capabilities are not removed, allowing addition. // Ignore NOT_METERED being added or removed as it is effectively dynamic. http://b/63326103 // TODO: properly support NOT_METERED as a mutable and requestable capability. - final long mask = ~MUTABLE_CAPABILITIES & ~NET_CAPABILITY_NOT_METERED; + final long mask = ~MUTABLE_CAPABILITIES & ~(1 << NET_CAPABILITY_NOT_METERED); long oldImmutableCapabilities = this.mNetworkCapabilities & mask; long newImmutableCapabilities = that.mNetworkCapabilities & mask; if (oldImmutableCapabilities != newImmutableCapabilities) { diff --git a/core/res/res/values-ca/strings.xml b/core/res/res/values-ca/strings.xml index 2faf0f8e9c6e..f4a992828e8e 100644 --- a/core/res/res/values-ca/strings.xml +++ b/core/res/res/values-ca/strings.xml @@ -889,8 +889,8 @@ <string name="years" msgid="6881577717993213522">"anys"</string> <string name="now_string_shortest" msgid="8912796667087856402">"ara"</string> <plurals name="duration_minutes_shortest" formatted="false" msgid="3957499975064245495"> - <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> min</item> - <item quantity="one"><xliff:g id="COUNT_0">%d</xliff:g> min</item> + <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> m</item> + <item quantity="one"><xliff:g id="COUNT_0">%d</xliff:g> m</item> </plurals> <plurals name="duration_hours_shortest" formatted="false" msgid="3552182110578602356"> <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> h</item> diff --git a/core/res/res/values-gl/strings.xml b/core/res/res/values-gl/strings.xml index 6d19b882095d..ea629cf898fb 100644 --- a/core/res/res/values-gl/strings.xml +++ b/core/res/res/values-gl/strings.xml @@ -197,7 +197,7 @@ <string name="silent_mode" msgid="7167703389802618663">"Modo de silencio"</string> <string name="turn_on_radio" msgid="3912793092339962371">"Activar a conexión sen fíos"</string> <string name="turn_off_radio" msgid="8198784949987062346">"Desactivar a conexión sen fíos"</string> - <string name="screen_lock" msgid="799094655496098153">"Bloqueo da pantalla"</string> + <string name="screen_lock" msgid="799094655496098153">"Bloqueo de pantalla"</string> <string name="power_off" msgid="4266614107412865048">"Apagar"</string> <string name="silent_mode_silent" msgid="319298163018473078">"Timbre desactivado"</string> <string name="silent_mode_vibrate" msgid="7072043388581551395">"Timbre en vibración"</string> @@ -221,7 +221,7 @@ <string name="global_actions" product="tablet" msgid="408477140088053665">"Opcións de tableta"</string> <string name="global_actions" product="tv" msgid="7240386462508182976">"Opcións da televisión"</string> <string name="global_actions" product="default" msgid="2406416831541615258">"Opcións de teléfono"</string> - <string name="global_action_lock" msgid="2844945191792119712">"Bloqueo da pantalla"</string> + <string name="global_action_lock" msgid="2844945191792119712">"Bloqueo de pantalla"</string> <string name="global_action_power_off" msgid="4471879440839879722">"Apagar"</string> <string name="global_action_emergency" msgid="7112311161137421166">"Emerxencias"</string> <string name="global_action_bug_report" msgid="7934010578922304799">"Informe de erros"</string> diff --git a/core/res/res/values-hr/strings.xml b/core/res/res/values-hr/strings.xml index dcb9f2391fc5..3858a49f2852 100644 --- a/core/res/res/values-hr/strings.xml +++ b/core/res/res/values-hr/strings.xml @@ -1653,7 +1653,7 @@ <string name="package_installed_device_owner" msgid="6875717669960212648">"Instalirao administrator"</string> <string name="package_updated_device_owner" msgid="1847154566357862089">"Ažurirao administrator"</string> <string name="package_deleted_device_owner" msgid="2307122077550236438">"Izbrisao administrator"</string> - <string name="battery_saver_description" msgid="1960431123816253034">"Da bi se produljilo trajanje baterije, ušteda baterije smanjuje performanse uređaja i ograničava vibraciju, lokacijske usluge i većinu pozadinskih radnji. Aplikacije za e-poštu, slanje poruka i druge aplikacije koje se oslanjaju na sinkronizaciju možda se neće ažurirati ako ih ne otvorite.\n\nUšteda baterije isključuje se automatski dok se uređaj puni."</string> + <string name="battery_saver_description" msgid="1960431123816253034">"Da bi se produljilo trajanje baterije, ušteda baterije smanjuje performanse uređaja i ograničava vibraciju, usluge lokacije i većinu pozadinskih radnji. Aplikacije za e-poštu, slanje poruka i druge aplikacije koje se oslanjaju na sinkronizaciju možda se neće ažurirati ako ih ne otvorite.\n\nUšteda baterije isključuje se automatski dok se uređaj puni."</string> <string name="data_saver_description" msgid="6015391409098303235">"Da bi se smanjio podatkovni promet, Ušteda podataka onemogućuje nekim aplikacijama slanje ili primanje podataka u pozadini. Aplikacija koju trenutačno upotrebljavate može pristupiti podacima, no možda će to činiti rjeđe. To može značiti da se, na primjer, slike neće prikazivati dok ih ne dodirnete."</string> <string name="data_saver_enable_title" msgid="4674073932722787417">"Uključiti Uštedu podataka?"</string> <string name="data_saver_enable_button" msgid="7147735965247211818">"Uključi"</string> diff --git a/core/res/res/values-hy/strings.xml b/core/res/res/values-hy/strings.xml index 00c372bae5e0..2fd0329d06ff 100644 --- a/core/res/res/values-hy/strings.xml +++ b/core/res/res/values-hy/strings.xml @@ -1192,7 +1192,7 @@ <string name="usb_accessory_notification_title" msgid="7848236974087653666">"Կապակցված է USB լրասարքի"</string> <string name="usb_notification_message" msgid="3370903770828407960">"Հպեք՝ լրացուցիչ ընտրանքների համար:"</string> <string name="usb_unsupported_audio_accessory_title" msgid="3529881374464628084">"Հայտնաբերված է անալոգային աուդիո լրասարք"</string> - <string name="usb_unsupported_audio_accessory_message" msgid="6309553946441565215">"Կից սարքը համատեղելի չէ այս հեռախոսի հետ: Հպեք` ավելին իմանալու համար:"</string> + <string name="usb_unsupported_audio_accessory_message" msgid="6309553946441565215">"Միացված սարքը համատեղելի չէ այս հեռախոսի հետ: Հպեք` ավելին իմանալու համար:"</string> <string name="adb_active_notification_title" msgid="6729044778949189918">"USB վրիպազերծումը միացված է"</string> <string name="adb_active_notification_message" msgid="4948470599328424059">"Հպեք՝ USB վրիպազերծումն անջատելու համար:"</string> <string name="adb_active_notification_message" product="tv" msgid="8470296818270110396">"Ընտրել` USB կարգաբերումը կասեցնելու համար:"</string> diff --git a/core/res/res/values-kn/strings.xml b/core/res/res/values-kn/strings.xml index 1033b8adc505..e7804b2a6c86 100644 --- a/core/res/res/values-kn/strings.xml +++ b/core/res/res/values-kn/strings.xml @@ -230,7 +230,7 @@ <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ಪರಸ್ಪರ ಸಂವಹನ ವರದಿ"</string> <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಲ್ಲಿ ಇದನ್ನು ಬಳಸಿ. ಇದು ವರದಿಯ ಪ್ರಗತಿಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು, ಸಮಸ್ಯೆ ಕುರಿತು ಹೆಚ್ಚಿನ ವಿವರಗಳನ್ನು ನಮೂದಿಸಲು ಮತ್ತು ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ಅನುಮತಿಸುತ್ತದೆ. ಇದು ವರದಿ ಮಾಡಲು ಹೆಚ್ಚು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುವಂತಹ ಕೆಲವು ಕಡಿಮೆ ಬಳಸಲಾದ ವಿಭಾಗಗಳನ್ನು ತ್ಯಜಿಸಬಹುದು."</string> <string name="bugreport_option_full_title" msgid="6354382025840076439">"ಪೂರ್ಣ ವರದಿ"</string> - <string name="bugreport_option_full_summary" msgid="7210859858969115745">"ನಿಮ್ಮ ಸಾಧನವು ಸ್ಪಂದಿಸುತ್ತಿಲ್ಲದಿರುವಾಗ ಅಥವಾ ತುಂಬಾ ನಿಧಾನವಾಗಿರುವಾಗ ಕನಿಷ್ಟ ಹಸ್ತಕ್ಷೇಪಕ್ಕಾಗಿ ಅಥವಾ ನಿಮಗೆ ಎಲ್ಲಾ ವಿಭಾಗಗಳೂ ಅಗತ್ಯವಿರುವಾಗ ಈ ಆಯ್ಕೆಯನ್ನು ಬಳಸಿ. ಹೆಚ್ಚಿನ ವಿವರಗಳನ್ನು ನಮೂದಿಸಲು ಅಥವಾ ಹೆಚ್ಚುವರಿ ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ನಿಮಗೆ ಅನುಮತಿಸುವುದಿಲ್ಲ."</string> + <string name="bugreport_option_full_summary" msgid="7210859858969115745">"ನಿಮ್ಮ ಸಾಧನವು ಸ್ಪಂದಿಸುತ್ತಿಲ್ಲದಿರುವಾಗ ಅಥವಾ ತುಂಬಾ ನಿಧಾನವಾಗಿರುವಾಗ ಕನಿಷ್ಠ ಹಸ್ತಕ್ಷೇಪಕ್ಕಾಗಿ ಅಥವಾ ನಿಮಗೆ ಎಲ್ಲಾ ವಿಭಾಗಗಳೂ ಅಗತ್ಯವಿರುವಾಗ ಈ ಆಯ್ಕೆಯನ್ನು ಬಳಸಿ. ಹೆಚ್ಚಿನ ವಿವರಗಳನ್ನು ನಮೂದಿಸಲು ಅಥವಾ ಹೆಚ್ಚುವರಿ ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ನಿಮಗೆ ಅನುಮತಿಸುವುದಿಲ್ಲ."</string> <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368"> <item quantity="one">ಬಗ್ ವರದಿ ಮಾಡಲು <xliff:g id="NUMBER_1">%d</xliff:g> ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಸ್ಕ್ರೀನ್ಶಾಟ್ ತೆಗೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ.</item> <item quantity="other">ಬಗ್ ವರದಿ ಮಾಡಲು <xliff:g id="NUMBER_1">%d</xliff:g> ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಸ್ಕ್ರೀನ್ಶಾಟ್ ತೆಗೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ.</item> @@ -1599,7 +1599,7 @@ <string name="restr_pin_confirm_pin" msgid="8501523829633146239">"ಹೊಸ ಪಿನ್ ದೃಢೀಕರಿಸಿ"</string> <string name="restr_pin_create_pin" msgid="8017600000263450337">"ನಿರ್ಬಂಧಗಳನ್ನು ಮಾರ್ಪಡಿಸಲು ಪಿನ್ ರಚಿಸಿ"</string> <string name="restr_pin_error_doesnt_match" msgid="2224214190906994548">"ಪಿನ್ ಗಳು ಹೊಂದಿಕೆಯಾಗುತ್ತಿಲ್ಲ. ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ."</string> - <string name="restr_pin_error_too_short" msgid="8173982756265777792">"ಪಿನ್ ತುಂಬಾ ಚಿಕ್ಕದಾಗಿದೆ. ಕನಿಷ್ಟ ಪಕ್ಷ 4 ಅಂಕಿಗಳಾಗಿರಬೇಕು."</string> + <string name="restr_pin_error_too_short" msgid="8173982756265777792">"ಪಿನ್ ತುಂಬಾ ಚಿಕ್ಕದಾಗಿದೆ. ಕನಿಷ್ಠ ಪಕ್ಷ 4 ಅಂಕಿಗಳಾಗಿರಬೇಕು."</string> <plurals name="restr_pin_countdown" formatted="false" msgid="9061246974881224688"> <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ</item> <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ</item> diff --git a/core/res/res/values-pa/strings.xml b/core/res/res/values-pa/strings.xml index 9fd93226c171..970ee690f375 100644 --- a/core/res/res/values-pa/strings.xml +++ b/core/res/res/values-pa/strings.xml @@ -134,7 +134,7 @@ <item msgid="3910386316304772394">"Wi-Fi ਤੋਂ ਕਾਲਾਂ ਕਰਨ ਅਤੇ ਸੁਨੇਹੇ ਭੇਜਣ ਦੇ ਲਈ, ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਆਪਣੇ ਕੈਰੀਅਰ ਨੂੰ ਇਸ ਸੇਵਾ ਦੀ ਸਥਾਪਨਾ ਕਰਨ ਲਈ ਕਹੋ। ਫਿਰ ਸੈਟਿੰਗਾਂ ਵਿੱਚੋਂ Wi-Fi ਕਾਲਿੰਗ ਨੂੰ ਦੁਬਾਰਾ ਚਾਲੂ ਕਰੋ। (ਗੜਬੜੀ ਕੋਡ: <xliff:g id="CODE">%1$s</xliff:g>)"</item> </string-array> <string-array name="wfcOperatorErrorNotificationMessages"> - <item msgid="7472393097168811593">"ਆਪਣੇ ਕੈਰੀਅਰ ਨਾਲ ਪੰਜੀਕਿਰਤ ਹੋਵੋ (ਗੜਬੜ ਕੋਡ: <xliff:g id="CODE">%1$s</xliff:g>)"</item> + <item msgid="7472393097168811593">"ਆਪਣੇ ਕੈਰੀਅਰ ਨਾਲ ਪੰਜੀਕਰਨ ਕਰੋ (ਗੜਬੜ ਕੋਡ: <xliff:g id="CODE">%1$s</xliff:g>)"</item> </string-array> <string-array name="wfcSpnFormats"> <item msgid="6830082633573257149">"%s"</item> @@ -1191,8 +1191,8 @@ <string name="usb_midi_notification_title" msgid="4850904915889144654">"MIDI ਲਈ USB"</string> <string name="usb_accessory_notification_title" msgid="7848236974087653666">"ਇੱਕ USB ਐਕਸੈਸਰੀ ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ"</string> <string name="usb_notification_message" msgid="3370903770828407960">"ਹੋਰ ਵਿਕਲਪਾਂ ਲਈ ਟੈਪ ਕਰੋ।"</string> - <string name="usb_unsupported_audio_accessory_title" msgid="3529881374464628084">"ਐਨਾਲੌਗ ਔਡੀਓ ਐਕਸੈਸਰੀ ਦਾ ਪਤਾ ਲੱਗਿਆ"</string> - <string name="usb_unsupported_audio_accessory_message" msgid="6309553946441565215">"ਨੱਥੀ ਕੀਤਾ ਡਿਵਾਈਸ ਇਸ ਫ਼ੋਨ ਦੇ ਅਨੁਰੂਪ ਨਹੀਂ ਹੈ। ਹੋਰ ਜਾਣਨ ਲਈ ਟੈਪ ਕਰੋ।"</string> + <string name="usb_unsupported_audio_accessory_title" msgid="3529881374464628084">"ਐਨਾਲੌਗ ਔਡੀਓ ਉਪਸਾਧਨ ਦਾ ਪਤਾ ਲੱਗਿਆ"</string> + <string name="usb_unsupported_audio_accessory_message" msgid="6309553946441565215">"ਨੱਥੀ ਕੀਤੀ ਡੀਵਾਈਸ ਇਸ ਫ਼ੋਨ ਦੇ ਅਨੁਰੂਪ ਨਹੀਂ ਹੈ। ਹੋਰ ਜਾਣਨ ਲਈ ਟੈਪ ਕਰੋ।"</string> <string name="adb_active_notification_title" msgid="6729044778949189918">"USB ਡੀਬਗਿੰਗ ਕਨੈਕਟ ਕੀਤੀ"</string> <string name="adb_active_notification_message" msgid="4948470599328424059">"USB ਡੀਬੱਗਿੰਗ ਨੂੰ ਅਯੋਗ ਬਣਾਉਣ ਲਈ ਟੈਪ ਕਰੋ।"</string> <string name="adb_active_notification_message" product="tv" msgid="8470296818270110396">"USB ਡੀਬੱਗਿੰਗ ਅਯੋਗ ਬਣਾਉਣ ਲਈ ਚੁਣੋ।"</string> diff --git a/core/res/res/values-sw/strings.xml b/core/res/res/values-sw/strings.xml index 53a26348ac90..31479a839c26 100644 --- a/core/res/res/values-sw/strings.xml +++ b/core/res/res/values-sw/strings.xml @@ -366,9 +366,9 @@ <string name="permdesc_readContacts" product="tv" msgid="1839238344654834087">"Huruhusu programu kusoma data kuhusu anwani zako zilizohifadhiwa kwenye runinga yako, pamoja na marudio ya upigaji wako wa simu, utumaji wa barua pepe, au mawasiliano kwa njia nyingine na watu maalum unaowasiliana nao. Idhini hii huruhusu programu kuhifadhi data yako ya mawasiliano, na programu hasidi zinaweza kushiriki data ya mawasiliano bila wewe kujua."</string> <string name="permdesc_readContacts" product="default" msgid="8440654152457300662">"Inaruhusu programu kusoma data kuhusu anwani zako zilizohifadhiwa kwenye simu yako, ikiwa ni pamoja na mara ngapi umepiga simu, kutuma barua pepe au kuwasiliana kwa njia zingine na watu fulani. Idhini hii inaruhusu programu kuhifadhi data yako ya anwani, na programu hasidi zinaweza kushiriki data ya anwani bila ya kujua kwako."</string> <string name="permlab_writeContacts" msgid="5107492086416793544">"kurekebisha anwani zako"</string> - <string name="permdesc_writeContacts" product="tablet" msgid="897243932521953602">"Inaruhusu programu kurekebisha data kuhusu anwani zako zilizohifadhiwa kwenye kompyuta kibao yako, ikijumuisha ni mara ngapi umepiga simu, kutuma barua pepe, au kuwasiliana kwa njia nyingine na wawasiliani maalum. Idhini hii inaruhusu programu kufuta data ya anwani."</string> + <string name="permdesc_writeContacts" product="tablet" msgid="897243932521953602">"Huruhusu programu kurekebisha data kuhusu anwani ulizohifadhi kwenye kompyuta kibao yako, ikiwa ni pamoja na mara ambazo umepiga simu, kutuma barua pepe au kuwasiliana kwa njia nyingine na anwani maalum. Idhini hii inaruhusu programu kufuta data ya anwani."</string> <string name="permdesc_writeContacts" product="tv" msgid="5438230957000018959">"Huruhusu programu kurekebisha data kuhusu anwani zako zilizohifadhiwa kwenye runinga yako, pamoja na marudio ya upigaji wako wa simu, utumaji wa barua pepe, au mawasiliano kwa njia nyingine na watu maalum unaowasiliana nao. Ruhusa hii huruhusu programu kufuta data ya anwani."</string> - <string name="permdesc_writeContacts" product="default" msgid="589869224625163558">"Inaruhusu programu kurekebisha data kuhusu anwani zako zilizohifadhiwa kwenye simu yako, ikijumuisha ni mara ngapi umepiga simu, kutuma barua pepe, au kuwasiliana kwa njia nyingine na wawasiliani maalum. Idhini hii inaruhusu programu kufuta data ya anwani."</string> + <string name="permdesc_writeContacts" product="default" msgid="589869224625163558">"Huruhusu programu kurekebisha data kuhusu anwani ulizohifadhi kwenye simu yako, ikiwa ni pamoja na mara ambazo umepiga simu, kutuma barua pepe au kuwasiliana kwa njia nyingine na anwani maalum. Idhini hii inaruhusu programu kufuta data ya anwani."</string> <string name="permlab_readCallLog" msgid="3478133184624102739">"kusoma rekodi ya simu"</string> <string name="permdesc_readCallLog" msgid="3204122446463552146">"Programu hii inaweza kusoma rekodi yako ya simu zilizopigwa."</string> <string name="permlab_writeCallLog" msgid="8552045664743499354">"kuandika rekodi ya simu"</string> diff --git a/packages/BackupRestoreConfirmation/res/values-da/strings.xml b/packages/BackupRestoreConfirmation/res/values-da/strings.xml index 28aea3374b02..3a749153a0b3 100644 --- a/packages/BackupRestoreConfirmation/res/values-da/strings.xml +++ b/packages/BackupRestoreConfirmation/res/values-da/strings.xml @@ -19,7 +19,7 @@ <string name="backup_confirm_title" msgid="827563724209303345">"Fuld sikkerhedskopiering"</string> <string name="restore_confirm_title" msgid="5469365809567486602">"Fuld genoprettelse"</string> <string name="backup_confirm_text" msgid="1878021282758896593">"Der er anmodet om en fuld sikkerhedskopiering af alle data til en tilsluttet stationær computer. Vil du tillade dette?\n\nHvis du ikke har anmodet om sikkerhedskopiering, skal du ikke tillade denne handling."</string> - <string name="allow_backup_button_label" msgid="4217228747769644068">"Sikkerhedskopier mine data"</string> + <string name="allow_backup_button_label" msgid="4217228747769644068">"Sikkerhedskopiér mine data"</string> <string name="deny_backup_button_label" msgid="6009119115581097708">"Undlad at sikkerhedskopiere"</string> <string name="restore_confirm_text" msgid="7499866728030461776">"Der er anmodet om en fuld sikkerhedskopiering af alle data til en tilsluttet stationær computer. Vil du tillade dette?\n\nHvis du ikke har anmodet om sikkerhedskopiering, skal du ikke tillade denne handling."</string> <string name="allow_restore_button_label" msgid="3081286752277127827">"Gendan mine data"</string> diff --git a/packages/BackupRestoreConfirmation/res/values-hy/strings.xml b/packages/BackupRestoreConfirmation/res/values-hy/strings.xml index a054068d1ce0..285c15d49a05 100644 --- a/packages/BackupRestoreConfirmation/res/values-hy/strings.xml +++ b/packages/BackupRestoreConfirmation/res/values-hy/strings.xml @@ -25,12 +25,12 @@ <string name="allow_restore_button_label" msgid="3081286752277127827">"Վերականգնել իմ տվյալները"</string> <string name="deny_restore_button_label" msgid="1724367334453104378">"Չվերականգնել"</string> <string name="current_password_text" msgid="8268189555578298067">"Խնդրում ենք մուտքագրել ձեր ընթացիկ պահուստային գաղտնաբառը ներքևում`"</string> - <string name="device_encryption_restore_text" msgid="1570864916855208992">"Խնդրում ենք մուտքագրել ձեր սարքի կոդավորված գաղտնաբառը ներքևում:"</string> - <string name="device_encryption_backup_text" msgid="5866590762672844664">"Խնդրում ենք մուտքագրել ձեր սարքի կոդավորված գաղտնաբառը ներքևում: Այն նաև կօգտագործվի պահուստային արխիվի կոդավորման համար:"</string> - <string name="backup_enc_password_text" msgid="4981585714795233099">"Խնդրում ենք մուտքագրել գաղտնաբառը` ամբողջական պահուստավորվող տվյալները կոդավորելու համար: Եթե այն դատարկ թողնեք, ապա կօգտագործվի ձեր առկա պահուստավորման գաղտնաբառը`"</string> - <string name="backup_enc_password_optional" msgid="1350137345907579306">"Եթե ցանկանում եք կոդավորել ամբողջական պահուստավորված տվյալները, մուտքագրեք գաղտնաբառ ստորև`"</string> - <string name="backup_enc_password_required" msgid="7889652203371654149">"Քանի որ ձեր սարքը կոդավորված է, դուք պետք է կոդավորեք նաև ձեր պահուստը: Խնդրում ենք ստորև սահմանել գաղտնաբառը՝"</string> - <string name="restore_enc_password_text" msgid="6140898525580710823">"Եթե վերականգնվող տվյալները կոդավորված են, խնդրում ենք մուտքագրել գաղտնաբառը ստորև`"</string> + <string name="device_encryption_restore_text" msgid="1570864916855208992">"Խնդրում ենք մուտքագրել ձեր սարքի գաղտնագրման գաղտնաբառը ներքևում:"</string> + <string name="device_encryption_backup_text" msgid="5866590762672844664">"Խնդրում ենք մուտքագրել ձեր սարքի գաղտնագրման գաղտնաբառը ներքևում: Այն նաև կօգտագործվի պահուստային արխիվի գաղտնագրման համար:"</string> + <string name="backup_enc_password_text" msgid="4981585714795233099">"Խնդրում ենք մուտքագրել գաղտնաբառը` ամբողջական պահուստավորվող տվյալները գաղտնագրելու համար: Եթե այն դատարկ թողնեք, ապա կօգտագործվի ձեր առկա պահուստավորման գաղտնաբառը`"</string> + <string name="backup_enc_password_optional" msgid="1350137345907579306">"Եթե ցանկանում եք գաղտնագրել ամբողջական պահուստավորված տվյալները, մուտքագրեք գաղտնաբառ ստորև`"</string> + <string name="backup_enc_password_required" msgid="7889652203371654149">"Քանի որ ձեր սարքը գաղտնագրված է, դուք պետք է գաղտնագրեք նաև ձեր պահուստը: Խնդրում ենք ստորև սահմանել գաղտնաբառը՝"</string> + <string name="restore_enc_password_text" msgid="6140898525580710823">"Եթե վերականգնվող տվյալները գաղտնագրված են, խնդրում ենք մուտքագրել գաղտնաբառը ստորև`"</string> <string name="toast_backup_started" msgid="550354281452756121">"Պահուստավորումը սկսվում է..."</string> <string name="toast_backup_ended" msgid="3818080769548726424">"Պահուստավորումն ավարտվեց"</string> <string name="toast_restore_started" msgid="7881679218971277385">"Վերականգնումը մեկնարկեց..."</string> diff --git a/packages/CarrierDefaultApp/res/values-ca/strings.xml b/packages/CarrierDefaultApp/res/values-ca/strings.xml index c1ddbd39c15c..66a8f37b1cf0 100644 --- a/packages/CarrierDefaultApp/res/values-ca/strings.xml +++ b/packages/CarrierDefaultApp/res/values-ca/strings.xml @@ -10,7 +10,7 @@ <string name="no_mobile_data_connection_title" msgid="7449525772416200578">"No hi ha connexió de dades mòbils"</string> <string name="no_mobile_data_connection" msgid="544980465184147010">"Afegeix un pla de dades o d\'itinerància amb %s"</string> <string name="mobile_data_status_notification_channel_name" msgid="833999690121305708">"Estat de les dades mòbils"</string> - <string name="action_bar_label" msgid="4290345990334377177">"Inicia la sessió a la xarxa de telefonia mòbil"</string> + <string name="action_bar_label" msgid="4290345990334377177">"Inicia la sessió a la xarxa mòbil"</string> <string name="ssl_error_warning" msgid="3127935140338254180">"La xarxa a què et vols connectar té problemes de seguretat."</string> <string name="ssl_error_example" msgid="6188711843183058764">"Per exemple, la pàgina d\'inici de sessió podria no pertànyer a l\'organització que es mostra."</string> <string name="ssl_error_continue" msgid="1138548463994095584">"Continua igualment mitjançant el navegador"</string> diff --git a/packages/CarrierDefaultApp/res/values-sw/strings.xml b/packages/CarrierDefaultApp/res/values-sw/strings.xml index a160186b3dff..c546fcee6186 100644 --- a/packages/CarrierDefaultApp/res/values-sw/strings.xml +++ b/packages/CarrierDefaultApp/res/values-sw/strings.xml @@ -3,7 +3,7 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="app_name" msgid="5247871339820894594">"CarrierDefaultApp"</string> <string name="android_system_label" msgid="2797790869522345065">"Mtoa Huduma za Simu"</string> - <string name="portal_notification_id" msgid="5155057562457079297">"Data ya simu za mkononi imekwisha"</string> + <string name="portal_notification_id" msgid="5155057562457079297">"Data ya mtandao wa simu imekwisha"</string> <string name="no_data_notification_id" msgid="668400731803969521">"Data yako ya mtandao wa simu imezimwa"</string> <string name="portal_notification_detail" msgid="2295729385924660881">"Gonga ili utembelee tovuti ya %s"</string> <string name="no_data_notification_detail" msgid="3112125343857014825">"Tafadhali wasiliana na mtoa huduma wako %s"</string> diff --git a/packages/DefaultContainerService/res/values-bs/strings.xml b/packages/DefaultContainerService/res/values-bs/strings.xml index 56b7db12b48e..9be3873ef529 100644 --- a/packages/DefaultContainerService/res/values-bs/strings.xml +++ b/packages/DefaultContainerService/res/values-bs/strings.xml @@ -20,5 +20,5 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="service_name" msgid="4841491635055379553">"Pomoćnik pristupa paketu"</string> + <string name="service_name" msgid="4841491635055379553">"Asistent pristupa paketu"</string> </resources> diff --git a/packages/PrintSpooler/res/values-b+sr+Latn/strings.xml b/packages/PrintSpooler/res/values-b+sr+Latn/strings.xml index 49fe52be9127..9c29ff27d5e0 100644 --- a/packages/PrintSpooler/res/values-b+sr+Latn/strings.xml +++ b/packages/PrintSpooler/res/values-b+sr+Latn/strings.xml @@ -16,7 +16,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="app_label" msgid="4469836075319831821">"Štamp. iz memor."</string> + <string name="app_label" msgid="4469836075319831821">"Štampanje iz memorije"</string> <string name="more_options_button" msgid="2243228396432556771">"Još opcija"</string> <string name="label_destination" msgid="9132510997381599275">"Odredište"</string> <string name="label_copies" msgid="3634531042822968308">"Kopije"</string> diff --git a/packages/PrintSpooler/res/values-bs/strings.xml b/packages/PrintSpooler/res/values-bs/strings.xml index d3f1b80088c0..2e9bfa317c64 100644 --- a/packages/PrintSpooler/res/values-bs/strings.xml +++ b/packages/PrintSpooler/res/values-bs/strings.xml @@ -53,7 +53,7 @@ <string name="print_search_box_shown_utterance" msgid="7967404953901376090">"Okvir za pretraživanje je prikazan"</string> <string name="print_search_box_hidden_utterance" msgid="5727755169343113351">"Okvir za pretraživanje je skriven"</string> <string name="print_add_printer" msgid="1088656468360653455">"Dodaj štampač"</string> - <string name="print_select_printer" msgid="7388760939873368698">"Izaberite štampač"</string> + <string name="print_select_printer" msgid="7388760939873368698">"Odaberite štampač"</string> <string name="print_forget_printer" msgid="5035287497291910766">"Zaboravi ovaj štampač"</string> <plurals name="print_search_result_count_utterance" formatted="false" msgid="6997663738361080868"> <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> štampač je pronađen</item> diff --git a/packages/PrintSpooler/res/values-da/strings.xml b/packages/PrintSpooler/res/values-da/strings.xml index 5f116dc8a28c..f88a4533bb25 100644 --- a/packages/PrintSpooler/res/values-da/strings.xml +++ b/packages/PrintSpooler/res/values-da/strings.xml @@ -100,7 +100,7 @@ </string-array> <string-array name="orientation_labels"> <item msgid="4061931020926489228">"Stående"</item> - <item msgid="3199660090246166812">"Liggende"</item> + <item msgid="3199660090246166812">"Liggende format"</item> </string-array> <string name="print_write_error_message" msgid="5787642615179572543">"Der kunne ikke skrives til filen"</string> <string name="print_error_default_message" msgid="8602678405502922346">"Det virkede desværre ikke. Prøv igen."</string> diff --git a/packages/PrintSpooler/res/values-sr/strings.xml b/packages/PrintSpooler/res/values-sr/strings.xml index c20a5af89e66..cb23c3cc4b81 100644 --- a/packages/PrintSpooler/res/values-sr/strings.xml +++ b/packages/PrintSpooler/res/values-sr/strings.xml @@ -16,7 +16,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="app_label" msgid="4469836075319831821">"Штамп. из мемор."</string> + <string name="app_label" msgid="4469836075319831821">"Штампање из меморије"</string> <string name="more_options_button" msgid="2243228396432556771">"Још опција"</string> <string name="label_destination" msgid="9132510997381599275">"Одредиште"</string> <string name="label_copies" msgid="3634531042822968308">"Копије"</string> diff --git a/packages/SettingsLib/res/values-pt/arrays.xml b/packages/SettingsLib/res/values-pt/arrays.xml index a444b59be6b1..e3f287bb3829 100644 --- a/packages/SettingsLib/res/values-pt/arrays.xml +++ b/packages/SettingsLib/res/values-pt/arrays.xml @@ -190,9 +190,9 @@ </string-array> <string-array name="animator_duration_scale_entries"> <item msgid="6039901060648228241">"Animação desativada"</item> - <item msgid="1138649021950863198">"Escala de animação 5x"</item> + <item msgid="1138649021950863198">"Escala de animação 0,5x"</item> <item msgid="4394388961370833040">"Escala de animação 1x"</item> - <item msgid="8125427921655194973">"Escala de animação 1.5 x"</item> + <item msgid="8125427921655194973">"Escala de animação 1,5x"</item> <item msgid="3334024790739189573">"Escala de animação 2x"</item> <item msgid="3170120558236848008">"Escala de animação 5x"</item> <item msgid="1069584980746680398">"Escala de animação 10x"</item> diff --git a/packages/SettingsLib/res/values-uk/arrays.xml b/packages/SettingsLib/res/values-uk/arrays.xml index 24bb553a9cb5..a8705e729356 100644 --- a/packages/SettingsLib/res/values-uk/arrays.xml +++ b/packages/SettingsLib/res/values-uk/arrays.xml @@ -138,25 +138,25 @@ </string-array> <string-array name="select_logd_size_titles"> <item msgid="8665206199209698501">"Вимкнено"</item> - <item msgid="1593289376502312923">"64 Кб"</item> - <item msgid="487545340236145324">"256 Кб"</item> - <item msgid="2423528675294333831">"1 Мб"</item> - <item msgid="180883774509476541">"4 Мб"</item> - <item msgid="2803199102589126938">"16 Мб"</item> + <item msgid="1593289376502312923">"64 КБ"</item> + <item msgid="487545340236145324">"256 КБ"</item> + <item msgid="2423528675294333831">"1 МБ"</item> + <item msgid="180883774509476541">"4 МБ"</item> + <item msgid="2803199102589126938">"16 МБ"</item> </string-array> <string-array name="select_logd_size_lowram_titles"> <item msgid="6089470720451068364">"Вимкнено"</item> - <item msgid="4622460333038586791">"64 Кб"</item> - <item msgid="2212125625169582330">"256 Кб"</item> - <item msgid="1704946766699242653">"1 Мб"</item> + <item msgid="4622460333038586791">"64 КБ"</item> + <item msgid="2212125625169582330">"256 КБ"</item> + <item msgid="1704946766699242653">"1 МБ"</item> </string-array> <string-array name="select_logd_size_summaries"> <item msgid="6921048829791179331">"Вимкнено"</item> - <item msgid="2969458029344750262">"Буфер журналу: 64 Кб"</item> - <item msgid="1342285115665698168">"Буфер журналу: 256 Кб"</item> - <item msgid="1314234299552254621">"Буфер журналу: 1 Мб"</item> - <item msgid="3606047780792894151">"Буфер журналу: 4 Мб"</item> - <item msgid="5431354956856655120">"Буфер журналу: 16 Мб"</item> + <item msgid="2969458029344750262">"Буфер журналу: 64 КБ"</item> + <item msgid="1342285115665698168">"Буфер журналу: 256 КБ"</item> + <item msgid="1314234299552254621">"Буфер журналу: 1 МБ"</item> + <item msgid="3606047780792894151">"Буфер журналу: 4 МБ"</item> + <item msgid="5431354956856655120">"Буфер журналу: 16 МБ"</item> </string-array> <string-array name="select_logpersist_titles"> <item msgid="1744840221860799971">"Вимкнено"</item> diff --git a/packages/SystemUI/res/values-am/strings_tv.xml b/packages/SystemUI/res/values-am/strings_tv.xml index 89fd6920b409..7a375a9e8991 100644 --- a/packages/SystemUI/res/values-am/strings_tv.xml +++ b/packages/SystemUI/res/values-am/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"ፎቶ በፎቶ"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"ስዕል-ላይ-ስዕል"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(ርዕስ የሌለው ፕሮግራም)"</string> <string name="pip_close" msgid="3480680679023423574">"PIPን ዝጋ"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"ሙሉ ማያ ገጽ"</string> diff --git a/packages/SystemUI/res/values-ar/strings.xml b/packages/SystemUI/res/values-ar/strings.xml index 29c03657fadc..021294af72a6 100644 --- a/packages/SystemUI/res/values-ar/strings.xml +++ b/packages/SystemUI/res/values-ar/strings.xml @@ -254,7 +254,7 @@ <string name="gps_notification_found_text" msgid="4619274244146446464">"تم تعيين الموقع بواسطة GPS"</string> <string name="accessibility_location_active" msgid="2427290146138169014">"طلبات الموقع نشطة"</string> <string name="accessibility_clear_all" msgid="5235938559247164925">"محو جميع الإشعارات."</string> - <string name="notification_group_overflow_indicator" msgid="1863231301642314183">"و<xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="notification_group_overflow_indicator" msgid="1863231301642314183">"+ <xliff:g id="NUMBER">%s</xliff:g>"</string> <plurals name="notification_group_overflow_description" formatted="false" msgid="4579313201268495404"> <item quantity="zero"><xliff:g id="NUMBER_1">%s</xliff:g> إشعار آخر بداخل المجموعة.</item> <item quantity="two">إشعاران (<xliff:g id="NUMBER_1">%s</xliff:g>) آخران بداخل المجموعة.</item> diff --git a/packages/SystemUI/res/values-bg/strings_tv.xml b/packages/SystemUI/res/values-bg/strings_tv.xml index ffe9007ef1e0..a5eb8b930a32 100644 --- a/packages/SystemUI/res/values-bg/strings_tv.xml +++ b/packages/SystemUI/res/values-bg/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Картина в картина"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Картина в картината"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Програма без заглавие)"</string> <string name="pip_close" msgid="3480680679023423574">"Затваряне на PIP"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Цял екран"</string> diff --git a/packages/SystemUI/res/values-cs/strings_tv.xml b/packages/SystemUI/res/values-cs/strings_tv.xml index f27974fa8570..a9282184ec24 100644 --- a/packages/SystemUI/res/values-cs/strings_tv.xml +++ b/packages/SystemUI/res/values-cs/strings_tv.xml @@ -21,6 +21,6 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="notification_channel_tv_pip" msgid="134047986446577723">"Obraz v obraze"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Bez názvu)"</string> - <string name="pip_close" msgid="3480680679023423574">"Ukončit PIP"</string> + <string name="pip_close" msgid="3480680679023423574">"Ukončit obraz v obraze (PIP)"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Celá obrazovka"</string> </resources> diff --git a/packages/SystemUI/res/values-da/strings_tv.xml b/packages/SystemUI/res/values-da/strings_tv.xml index d24cb3abe669..aa8af7442e18 100644 --- a/packages/SystemUI/res/values-da/strings_tv.xml +++ b/packages/SystemUI/res/values-da/strings_tv.xml @@ -21,6 +21,6 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="notification_channel_tv_pip" msgid="134047986446577723">"Integreret billede"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Program uden titel)"</string> - <string name="pip_close" msgid="3480680679023423574">"Luk PIP"</string> + <string name="pip_close" msgid="3480680679023423574">"Luk integreret billede"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Fuld skærm"</string> </resources> diff --git a/packages/SystemUI/res/values-de/strings_tv.xml b/packages/SystemUI/res/values-de/strings_tv.xml index c83a52e50805..adae2592e069 100644 --- a/packages/SystemUI/res/values-de/strings_tv.xml +++ b/packages/SystemUI/res/values-de/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Bild-in-Bild"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Bild im Bild"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Kein Programmtitel)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP schließen"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Vollbild"</string> diff --git a/packages/SystemUI/res/values-el/strings.xml b/packages/SystemUI/res/values-el/strings.xml index 7ac5f69ea40c..7d890a3e2ce5 100644 --- a/packages/SystemUI/res/values-el/strings.xml +++ b/packages/SystemUI/res/values-el/strings.xml @@ -51,8 +51,8 @@ <string name="bluetooth_tethered" msgid="7094101612161133267">"Έγινε σύνδεση μέσω Bluetooth"</string> <string name="status_bar_input_method_settings_configure_input_methods" msgid="3504292471512317827">"Ρύθμιση μεθόδων εισαγωγής"</string> <string name="status_bar_use_physical_keyboard" msgid="7551903084416057810">"Φυσικό πληκτρολόγιο"</string> - <string name="usb_device_permission_prompt" msgid="834698001271562057">"Να επιτρέπεται στην εφαρμογή <xliff:g id="APPLICATION">%1$s</xliff:g> η πρόσβαση στη συσκευή USB;"</string> - <string name="usb_accessory_permission_prompt" msgid="5171775411178865750">"Να επιτρέπεται στην εφαρμογή <xliff:g id="APPLICATION">%1$s</xliff:g> η πρόσβαση στο αξεσουάρ USB;"</string> + <string name="usb_device_permission_prompt" msgid="834698001271562057">"Να επιτρέπεται στο <xliff:g id="APPLICATION">%1$s</xliff:g> η πρόσβαση στη συσκευή USB;"</string> + <string name="usb_accessory_permission_prompt" msgid="5171775411178865750">"Να επιτρέπεται στο <xliff:g id="APPLICATION">%1$s</xliff:g> η πρόσβαση στο αξεσουάρ USB;"</string> <string name="usb_device_confirm_prompt" msgid="5161205258635253206">"Άνοιγμα του <xliff:g id="ACTIVITY">%1$s</xliff:g> κατά τη σύνδεση αυτής της συσκευής USB;"</string> <string name="usb_accessory_confirm_prompt" msgid="3808984931830229888">"Άνοιγμα του <xliff:g id="ACTIVITY">%1$s</xliff:g> κατά τη σύνδεση αυτού του αξεσουάρ USB;"</string> <string name="usb_accessory_uri_prompt" msgid="513450621413733343">"Δεν έχετε εφαρμογή που να συνεργάζεται με το αξεσουάρ USB. Για περισσότερα: <xliff:g id="URL">%1$s</xliff:g>"</string> diff --git a/packages/SystemUI/res/values-en-rAU/strings_tv.xml b/packages/SystemUI/res/values-en-rAU/strings_tv.xml index ffcd655e160b..31cbd8377fd5 100644 --- a/packages/SystemUI/res/values-en-rAU/strings_tv.xml +++ b/packages/SystemUI/res/values-en-rAU/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-Picture"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-picture"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(No title program)"</string> <string name="pip_close" msgid="3480680679023423574">"Close PIP"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Full screen"</string> diff --git a/packages/SystemUI/res/values-en-rGB/strings_tv.xml b/packages/SystemUI/res/values-en-rGB/strings_tv.xml index ffcd655e160b..31cbd8377fd5 100644 --- a/packages/SystemUI/res/values-en-rGB/strings_tv.xml +++ b/packages/SystemUI/res/values-en-rGB/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-Picture"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-picture"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(No title program)"</string> <string name="pip_close" msgid="3480680679023423574">"Close PIP"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Full screen"</string> diff --git a/packages/SystemUI/res/values-en-rIN/strings_tv.xml b/packages/SystemUI/res/values-en-rIN/strings_tv.xml index ffcd655e160b..31cbd8377fd5 100644 --- a/packages/SystemUI/res/values-en-rIN/strings_tv.xml +++ b/packages/SystemUI/res/values-en-rIN/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-Picture"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-picture"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(No title program)"</string> <string name="pip_close" msgid="3480680679023423574">"Close PIP"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Full screen"</string> diff --git a/packages/SystemUI/res/values-eu/strings_tv.xml b/packages/SystemUI/res/values-eu/strings_tv.xml index 6dd81a6f963c..081d1fee046f 100644 --- a/packages/SystemUI/res/values-eu/strings_tv.xml +++ b/packages/SystemUI/res/values-eu/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Pantaila txikia"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Pantaila txiki gainjarria"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Programa izengabea)"</string> <string name="pip_close" msgid="3480680679023423574">"Itxi PIPa"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Pantaila osoa"</string> diff --git a/packages/SystemUI/res/values-hi/strings_tv.xml b/packages/SystemUI/res/values-hi/strings_tv.xml index 39f06f6b728f..5e65e4668950 100644 --- a/packages/SystemUI/res/values-hi/strings_tv.xml +++ b/packages/SystemUI/res/values-hi/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"चित्र में चित्र"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"स्क्रीन में स्क्रीन"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(कोई शीर्षक कार्यक्रम नहीं)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP बंद करें"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"पूर्ण स्क्रीन"</string> diff --git a/packages/SystemUI/res/values-hr/strings_car.xml b/packages/SystemUI/res/values-hr/strings_car.xml index d38620bdecf5..0a281d7ba0f0 100644 --- a/packages/SystemUI/res/values-hr/strings_car.xml +++ b/packages/SystemUI/res/values-hr/strings_car.xml @@ -20,5 +20,5 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="unknown_user_label" msgid="4323896111737677955">"Nepoznato"</string> - <string name="start_driving" msgid="864023351402918991">"Početak vožnje"</string> + <string name="start_driving" msgid="864023351402918991">"Započni vožnju"</string> </resources> diff --git a/packages/SystemUI/res/values-in/strings_tv.xml b/packages/SystemUI/res/values-in/strings_tv.xml index ca3b32fc2cde..a1aa16816b4d 100644 --- a/packages/SystemUI/res/values-in/strings_tv.xml +++ b/packages/SystemUI/res/values-in/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Gambar-dalam-Gambar"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-picture"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Program tanpa judul)"</string> <string name="pip_close" msgid="3480680679023423574">"Tutup PIP"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Layar penuh"</string> diff --git a/packages/SystemUI/res/values-it/strings_tv.xml b/packages/SystemUI/res/values-it/strings_tv.xml index 629e30628956..81d76d541bf4 100644 --- a/packages/SystemUI/res/values-it/strings_tv.xml +++ b/packages/SystemUI/res/values-it/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-Picture"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture in picture"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Programma senza titolo)"</string> <string name="pip_close" msgid="3480680679023423574">"Chiudi PIP"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Schermo intero"</string> diff --git a/packages/SystemUI/res/values-ja/strings_tv.xml b/packages/SystemUI/res/values-ja/strings_tv.xml index 134bb18ccad8..4596551677a5 100644 --- a/packages/SystemUI/res/values-ja/strings_tv.xml +++ b/packages/SystemUI/res/values-ja/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"PIP"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"ピクチャー イン ピクチャー"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(無題の番組)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP を閉じる"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"全画面表示"</string> diff --git a/packages/SystemUI/res/values-ka/strings_tv.xml b/packages/SystemUI/res/values-ka/strings_tv.xml index 1a9759085653..f4f818bd43e0 100644 --- a/packages/SystemUI/res/values-ka/strings_tv.xml +++ b/packages/SystemUI/res/values-ka/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"სურათი სურათში"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"ეკრანი ეკრანში"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(პროგრამის სათაურის გარეშე)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP-ის დახურვა"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"სრულ ეკრანზე"</string> diff --git a/packages/SystemUI/res/values-kk/strings_tv.xml b/packages/SystemUI/res/values-kk/strings_tv.xml index 305ad2ec5e77..71120170655f 100644 --- a/packages/SystemUI/res/values-kk/strings_tv.xml +++ b/packages/SystemUI/res/values-kk/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Сурет ішіндегі сурет"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Суреттегі сурет"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Атаусыз бағдарлама)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP жабу"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Толық экран"</string> diff --git a/packages/SystemUI/res/values-km/strings_tv.xml b/packages/SystemUI/res/values-km/strings_tv.xml index 5da818e8627b..641bba3de836 100644 --- a/packages/SystemUI/res/values-km/strings_tv.xml +++ b/packages/SystemUI/res/values-km/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"រូបភាពក្នុងរូបភាព"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"រូបក្នុងរូប"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(កម្មវិធីគ្មានចំណងជើង)"</string> <string name="pip_close" msgid="3480680679023423574">"បិទ PIP"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"ពេញអេក្រង់"</string> diff --git a/packages/SystemUI/res/values-ko/strings.xml b/packages/SystemUI/res/values-ko/strings.xml index 4c532cf0a6e2..3d63cb708201 100644 --- a/packages/SystemUI/res/values-ko/strings.xml +++ b/packages/SystemUI/res/values-ko/strings.xml @@ -674,7 +674,7 @@ <string name="left_icon" msgid="3096287125959387541">"왼쪽 아이콘"</string> <string name="right_icon" msgid="3952104823293824311">"오른쪽 아이콘"</string> <string name="drag_to_add_tiles" msgid="7058945779098711293">"드래그하여 타일 추가"</string> - <string name="drag_to_remove_tiles" msgid="3361212377437088062">"삭제하려면 여기를 드래그"</string> + <string name="drag_to_remove_tiles" msgid="3361212377437088062">"여기로 드래그하여 삭제"</string> <string name="qs_edit" msgid="2232596095725105230">"수정"</string> <string name="tuner_time" msgid="6572217313285536011">"시간"</string> <string-array name="clock_options"> diff --git a/packages/SystemUI/res/values-mn/strings_tv.xml b/packages/SystemUI/res/values-mn/strings_tv.xml index bbc94c80de83..e250c2db2d86 100644 --- a/packages/SystemUI/res/values-mn/strings_tv.xml +++ b/packages/SystemUI/res/values-mn/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Зураг-доторх-Зураг"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Дэлгэцэн-доторх-Дэлгэц"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Гарчиггүй хөтөлбөр)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP-г хаах"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Бүтэн дэлгэц"</string> diff --git a/packages/SystemUI/res/values-ne/strings_tv.xml b/packages/SystemUI/res/values-ne/strings_tv.xml index 2c5c1863ffa0..2e42b6c0345e 100644 --- a/packages/SystemUI/res/values-ne/strings_tv.xml +++ b/packages/SystemUI/res/values-ne/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"तस्बिरभित्रको तस्बिर"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Picture-in-Picture"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(शीर्षकविहीन कार्यक्रम)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP लाई बन्द गर्नुहोस्"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"पूर्ण स्क्रिन"</string> diff --git a/packages/SystemUI/res/values-nl/strings_tv.xml b/packages/SystemUI/res/values-nl/strings_tv.xml index fae484fe5276..8270feebc122 100644 --- a/packages/SystemUI/res/values-nl/strings_tv.xml +++ b/packages/SystemUI/res/values-nl/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Beeld-in-beeld"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Scherm-in-scherm"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Naamloos programma)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP sluiten"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Volledig scherm"</string> diff --git a/packages/SystemUI/res/values-ta/strings_tv.xml b/packages/SystemUI/res/values-ta/strings_tv.xml index 5ddab5646e8c..f7c81ee340e3 100644 --- a/packages/SystemUI/res/values-ta/strings_tv.xml +++ b/packages/SystemUI/res/values-ta/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"பிக்ச்சர் இன் பிக்ச்சர்"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"பிக்ச்சர்-இன்-பிக்ச்சர்"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(தலைப்பு இல்லை)"</string> <string name="pip_close" msgid="3480680679023423574">"PIPஐ மூடு"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"முழுத்திரை"</string> diff --git a/packages/SystemUI/res/values-tr/strings_tv.xml b/packages/SystemUI/res/values-tr/strings_tv.xml index ec2c7844c37c..fb3951099300 100644 --- a/packages/SystemUI/res/values-tr/strings_tv.xml +++ b/packages/SystemUI/res/values-tr/strings_tv.xml @@ -19,7 +19,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="notification_channel_tv_pip" msgid="134047986446577723">"Ekran İçinde Ekran"</string> + <string name="notification_channel_tv_pip" msgid="134047986446577723">"Pencere İçinde Pencere"</string> <string name="pip_notification_unknown_title" msgid="6289156118095849438">"(Başlıksız program)"</string> <string name="pip_close" msgid="3480680679023423574">"PIP\'yi kapat"</string> <string name="pip_fullscreen" msgid="8604643018538487816">"Tam ekran"</string> diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index 68caab1a7a8d..3d2213bf56e8 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -5786,15 +5786,18 @@ public class StatusBar extends SystemUI implements DemoMode, boolean handled = superOnClickHandler(view, pendingIntent, fillInIntent); // close the shade if it was open - if (handled) { + if (handled && !mNotificationPanel.isFullyCollapsed()) { animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, true /* force */); visibilityChanged(false); mAssistManager.hideAssist(); + + // Wait for activity start. + return true; + } else { + return false; } - // Wait for activity start. - return handled; } }, afterKeyguardGone); return true; @@ -6844,12 +6847,16 @@ public class StatusBar extends SystemUI implements DemoMode, } }.start(); - // close the shade if it was open - animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, - true /* force */, true /* delayed */); - visibilityChanged(false); + if (!mNotificationPanel.isFullyCollapsed()) { + // close the shade if it was open + animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, + true /* force */, true /* delayed */); + visibilityChanged(false); - return true; + return true; + } else { + return false; + } } }, afterKeyguardGone); } @@ -7001,12 +7008,16 @@ public class StatusBar extends SystemUI implements DemoMode, new Thread(runnable).start(); } - // close the shade if it was open - animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, - true /* force */, true /* delayed */); - visibilityChanged(false); + if (!mNotificationPanel.isFullyCollapsed()) { + // close the shade if it was open + animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, + true /* force */, true /* delayed */); + visibilityChanged(false); - return true; + return true; + } else { + return false; + } } }, afterKeyguardGone); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java index 3913254aab23..6f710da6fe7d 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java @@ -102,6 +102,9 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb private final ArrayList<Runnable> mAfterKeyguardGoneRunnables = new ArrayList<>(); private boolean mDeferScrimFadeOut; + // Dismiss action to be launched when we stop dozing or the keyguard is gone. + private PendingDismissActionRequest mPendingDismissAction; + private final KeyguardUpdateMonitorCallback mUpdateMonitorCallback = new KeyguardUpdateMonitorCallback() { @Override @@ -162,13 +165,18 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb } else { mStatusBar.showKeyguard(); if (hideBouncerWhenShowing) { - mBouncer.hide(false /* destroyView */); + hideBouncer(false /* destroyView */); mBouncer.prepare(); } } updateStates(); } + private void hideBouncer(boolean destroyView) { + mBouncer.hide(destroyView); + cancelPendingDismissAction(); + } + private void showBouncer() { if (mShowing) { mBouncer.show(false /* resetSecuritySelection */); @@ -179,6 +187,15 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb public void dismissWithAction(OnDismissAction r, Runnable cancelAction, boolean afterKeyguardGone) { if (mShowing) { + cancelPendingDismissAction(); + // If we're dozing, this needs to be delayed until after we wake up - unless we're + // wake-and-unlocking, because there dozing will last until the end of the transition. + if (mDozing && !isWakeAndUnlocking()) { + mPendingDismissAction = new PendingDismissActionRequest( + r, cancelAction, afterKeyguardGone); + return; + } + if (!afterKeyguardGone) { mBouncer.showWithDismissAction(r, cancelAction); } else { @@ -189,6 +206,11 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb updateStates(); } + private boolean isWakeAndUnlocking() { + int mode = mFingerprintUnlockController.getMode(); + return mode == MODE_WAKE_AND_UNLOCK || mode == MODE_WAKE_AND_UNLOCK_PULSING; + } + /** * Adds a {@param runnable} to be executed after Keyguard is gone. */ @@ -204,7 +226,9 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb if (mOccluded && !mDozing) { mStatusBar.hideKeyguard(); mStatusBar.stopWaitingForKeyguardExit(); - mBouncer.hide(false /* destroyView */); + if (hideBouncerWhenShowing || mBouncer.needsFullscreenBouncer()) { + hideBouncer(false /* destroyView */); + } } else { showBouncerOrKeyguard(hideBouncerWhenShowing); } @@ -254,6 +278,10 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb reset(dozing /* hideBouncerWhenShowing */); } updateStates(); + + if (!dozing) { + launchPendingDismissAction(); + } } } @@ -329,6 +357,7 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb */ public void hide(long startTime, long fadeoutDuration) { mShowing = false; + launchPendingDismissAction(); if (KeyguardUpdateMonitor.getInstance(mContext).needsSlowUnlockTransition()) { fadeoutDuration = KEYGUARD_DISMISS_DURATION_LOCKED; @@ -342,7 +371,7 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb public void run() { mStatusBarWindowManager.setKeyguardShowing(false); mStatusBarWindowManager.setKeyguardFadingAway(true); - mBouncer.hide(true /* destroyView */); + hideBouncer(true /* destroyView */); updateStates(); mScrimController.animateKeyguardFadingOut( StatusBar.FADE_KEYGUARD_START_DELAY, @@ -368,7 +397,7 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb } mStatusBar.setKeyguardFadingAway(startTime, delay, fadeoutDuration); mFingerprintUnlockController.startKeyguardFadingAway(); - mBouncer.hide(true /* destroyView */); + hideBouncer(true /* destroyView */); if (wakeUnlockPulsing) { mStatusBarWindowManager.setKeyguardFadingAway(true); mStatusBar.fadeKeyguardWhilePulsing(); @@ -411,11 +440,11 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb } public void onDensityOrFontScaleChanged() { - mBouncer.hide(true /* destroyView */); + hideBouncer(true /* destroyView */); } public void onOverlayChanged() { - mBouncer.hide(true /* destroyView */); + hideBouncer(true /* destroyView */); mBouncer.prepare(); } @@ -655,4 +684,38 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb public ViewRootImpl getViewRootImpl() { return mStatusBar.getStatusBarView().getViewRootImpl(); } + + public void launchPendingDismissAction() { + PendingDismissActionRequest request = mPendingDismissAction; + mPendingDismissAction = null; + if (request != null) { + if (mShowing) { + dismissWithAction(request.dismissAction, request.cancelAction, + request.afterKeyguardGone); + } else if (request.dismissAction != null) { + request.dismissAction.onDismiss(); + } + } + } + + public void cancelPendingDismissAction() { + PendingDismissActionRequest request = mPendingDismissAction; + mPendingDismissAction = null; + if (request != null && request.cancelAction != null) { + request.cancelAction.run(); + } + } + + private static class PendingDismissActionRequest { + final OnDismissAction dismissAction; + final Runnable cancelAction; + final boolean afterKeyguardGone; + + PendingDismissActionRequest(OnDismissAction dismissAction, Runnable cancelAction, + boolean afterKeyguardGone) { + this.dismissAction = dismissAction; + this.cancelAction = cancelAction; + this.afterKeyguardGone = afterKeyguardGone; + } + } } diff --git a/packages/VpnDialogs/res/values-ar/strings.xml b/packages/VpnDialogs/res/values-ar/strings.xml index d29c40715a21..e36eef4a0b83 100644 --- a/packages/VpnDialogs/res/values-ar/strings.xml +++ b/packages/VpnDialogs/res/values-ar/strings.xml @@ -17,7 +17,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="prompt" msgid="3183836924226407828">"طلب الاتصال"</string> - <string name="warning" msgid="809658604548412033">"يريد <xliff:g id="APP">%s</xliff:g> إعداد الاتصال بالشبكة الظاهرية الخاصة التي تتيح له مراقبة حركة المرور على الشبكة. فلا توافق إلا إذا كنت تثق في المصدر. <br /> <br /> <img src=vpn_icon /> يظهر في الجزء العلوي من الشاشة عندما تكون الشبكة الظاهرية الخاصة نشطة."</string> + <string name="warning" msgid="809658604548412033">"يريد <xliff:g id="APP">%s</xliff:g> إعداد الاتصال بالشبكة الافتراضية الخاصة التي تتيح له مراقبة حركة المرور على الشبكة. فلا توافق إلا إذا كنت تثق في المصدر. <br /> <br /> <img src=vpn_icon /> يظهر في الجزء العلوي من الشاشة عندما تكون الشبكة الافتراضية الخاصة نشطة."</string> <string name="legacy_title" msgid="192936250066580964">"VPN متصلة"</string> <string name="configure" msgid="4905518375574791375">"تهيئة"</string> <string name="disconnect" msgid="971412338304200056">"قطع الاتصال"</string> diff --git a/services/core/java/com/android/server/location/GnssLocationProvider.java b/services/core/java/com/android/server/location/GnssLocationProvider.java index cdf25cfe65f6..11a4eb48f64d 100644 --- a/services/core/java/com/android/server/location/GnssLocationProvider.java +++ b/services/core/java/com/android/server/location/GnssLocationProvider.java @@ -543,7 +543,9 @@ public class GnssLocationProvider implements LocationProviderInterface { loadPropertiesFromResource(context, mProperties); String lpp_profile = mProperties.getProperty("LPP_PROFILE"); // set the persist property LPP_PROFILE for the value - SystemProperties.set(LPP_PROFILE, lpp_profile); + if (lpp_profile != null) { + SystemProperties.set(LPP_PROFILE, lpp_profile); + } } else { // reset the persist property SystemProperties.set(LPP_PROFILE, ""); diff --git a/services/core/java/com/android/server/wm/AppWindowAnimator.java b/services/core/java/com/android/server/wm/AppWindowAnimator.java index f3a09ed14936..ddbbde1eb421 100644 --- a/services/core/java/com/android/server/wm/AppWindowAnimator.java +++ b/services/core/java/com/android/server/wm/AppWindowAnimator.java @@ -198,6 +198,14 @@ public class AppWindowAnimator { return animation != null || mAppToken.inPendingTransaction; } + /** + * @return whether an animation is about to start, i.e. the animation is set already but we + * haven't processed the first frame yet. + */ + boolean isAnimationStarting() { + return animation != null && !animating; + } + public int getTransit() { return mTransit; } diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 81c5164534a5..c968653b814f 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -1219,8 +1219,9 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP // TODO(b/62846907): Checking against {@link mLastReportedConfiguration} could be flaky as // this is not necessarily what the client has processed yet. Find a // better indicator consistent with the client. - return mOrientationChanging || (isVisible() - && getConfiguration().orientation != mLastReportedConfiguration.orientation); + return (mOrientationChanging || (isVisible() + && getConfiguration().orientation != mLastReportedConfiguration.orientation)) + && !mSeamlesslyRotated; } void setOrientationChanging(boolean changing) { @@ -1457,8 +1458,18 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP @Override public boolean canAffectSystemUiFlags() { final boolean shown = mWinAnimator.getShown(); - final boolean exiting = mAnimatingExit || mDestroying - || mAppToken != null && mAppToken.hidden; + + // We only consider the app to be exiting when the animation has started. After the app + // transition is executed the windows are marked exiting before the new windows have been + // shown. Thus, wait considering a window to be exiting after the animation has actually + // started. + final boolean appAnimationStarting = mAppToken != null + && mAppToken.mAppAnimator.isAnimationStarting(); + final boolean exitingSelf = mAnimatingExit && (!mWinAnimator.isAnimationStarting() + && !appAnimationStarting); + final boolean appExiting = mAppToken != null && mAppToken.hidden && !appAnimationStarting; + + final boolean exiting = exitingSelf || mDestroying || appExiting; final boolean translucent = mAttrs.alpha == 0.0f; return shown && !exiting && !translucent; } @@ -2026,6 +2037,11 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP if (dc == null) { return; } + + // If layout is currently deferred, we want to hold of with updating the layers. + if (mService.mWindowPlacerLocked.isLayoutDeferred()) { + return; + } final DimLayer.DimLayerUser dimLayerUser = getDimLayerUser(); if (dimLayerUser != null && dc.mDimLayerController.isDimming(dimLayerUser, mWinAnimator)) { // Force an animation pass just to update the mDimLayer layer. diff --git a/services/core/java/com/android/server/wm/WindowSurfacePlacer.java b/services/core/java/com/android/server/wm/WindowSurfacePlacer.java index 690989251f61..581b0447dafc 100644 --- a/services/core/java/com/android/server/wm/WindowSurfacePlacer.java +++ b/services/core/java/com/android/server/wm/WindowSurfacePlacer.java @@ -127,6 +127,10 @@ class WindowSurfacePlacer { } } + boolean isLayoutDeferred() { + return mDeferDepth > 0; + } + final void performSurfacePlacement() { performSurfacePlacement(false /* force */); } diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index b5b32e454ab9..190361bd59cd 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -1642,8 +1642,7 @@ public class TelephonyManager { * @hide */ public String getNetworkCountryIso(int subId) { - int phoneId = SubscriptionManager.getPhoneId(subId); - return getNetworkCountryIsoForPhone(phoneId); + return getNetworkCountryIsoForPhone(getPhoneId(subId)); } /** @@ -1658,7 +1657,14 @@ public class TelephonyManager { */ /** {@hide} */ public String getNetworkCountryIsoForPhone(int phoneId) { - return getTelephonyProperty(phoneId, TelephonyProperties.PROPERTY_OPERATOR_ISO_COUNTRY, ""); + try { + ITelephony telephony = getITelephony(); + if (telephony == null) + return ""; + return telephony.getNetworkCountryIsoForPhone(phoneId); + } catch (RemoteException ex) { + return ""; + } } /** Network type is unknown */ diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl index a0e5b7b0a1d6..654adb280310 100644 --- a/telephony/java/com/android/internal/telephony/ITelephony.aidl +++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl @@ -377,6 +377,13 @@ interface ITelephony { Bundle getCellLocation(String callingPkg); /** + * Returns the ISO country code equivalent of the current registered + * operator's MCC (Mobile Country Code). + * @see android.telephony.TelephonyManager#getNetworkCountryIso + */ + String getNetworkCountryIsoForPhone(int phoneId); + + /** * Returns the neighboring cell information of the device. */ List<NeighboringCellInfo> getNeighboringCellInfo(String callingPkg); diff --git a/tests/net/java/android/net/NetworkCapabilitiesTest.java b/tests/net/java/android/net/NetworkCapabilitiesTest.java index e3b06c875236..7346f9f95041 100644 --- a/tests/net/java/android/net/NetworkCapabilitiesTest.java +++ b/tests/net/java/android/net/NetworkCapabilitiesTest.java @@ -21,10 +21,14 @@ import static android.net.NetworkCapabilities.NET_CAPABILITY_EIMS; import static android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET; import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_METERED; import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED; +import static android.net.NetworkCapabilities.NET_CAPABILITY_VALIDATED; import static android.net.NetworkCapabilities.RESTRICTED_CAPABILITIES; +import static android.net.NetworkCapabilities.TRANSPORT_CELLULAR; +import static android.net.NetworkCapabilities.TRANSPORT_WIFI; import static android.net.NetworkCapabilities.UNRESTRICTED_CAPABILITIES; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertTrue; @@ -114,4 +118,45 @@ public class NetworkCapabilitiesTest { assertFalse(netCap.hasCapability(NET_CAPABILITY_NOT_RESTRICTED)); } + @Test + public void testDescribeImmutableDifferences() { + NetworkCapabilities nc1; + NetworkCapabilities nc2; + + // Transports changing + nc1 = new NetworkCapabilities().addTransportType(TRANSPORT_CELLULAR); + nc2 = new NetworkCapabilities().addTransportType(TRANSPORT_WIFI); + assertNotEquals("", nc1.describeImmutableDifferences(nc2)); + assertEquals("", nc1.describeImmutableDifferences(nc1)); + + // Mutable capability changing + nc1 = new NetworkCapabilities().addCapability(NET_CAPABILITY_VALIDATED); + nc2 = new NetworkCapabilities(); + assertEquals("", nc1.describeImmutableDifferences(nc2)); + assertEquals("", nc1.describeImmutableDifferences(nc1)); + + // NOT_METERED changing (http://b/63326103) + nc1 = new NetworkCapabilities() + .addCapability(NET_CAPABILITY_NOT_METERED) + .addCapability(NET_CAPABILITY_INTERNET); + nc2 = new NetworkCapabilities().addCapability(NET_CAPABILITY_INTERNET); + assertEquals("", nc1.describeImmutableDifferences(nc2)); + assertEquals("", nc1.describeImmutableDifferences(nc1)); + + // Immutable capability changing + nc1 = new NetworkCapabilities() + .addCapability(NET_CAPABILITY_INTERNET) + .removeCapability(NET_CAPABILITY_NOT_RESTRICTED); + nc2 = new NetworkCapabilities().addCapability(NET_CAPABILITY_INTERNET); + assertNotEquals("", nc1.describeImmutableDifferences(nc2)); + assertEquals("", nc1.describeImmutableDifferences(nc1)); + + // Specifier changing + nc1 = new NetworkCapabilities().addTransportType(TRANSPORT_WIFI); + nc2 = new NetworkCapabilities() + .addTransportType(TRANSPORT_WIFI) + .setNetworkSpecifier(new StringNetworkSpecifier("specs")); + assertNotEquals("", nc1.describeImmutableDifferences(nc2)); + assertEquals("", nc1.describeImmutableDifferences(nc1)); + } } |