diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 3b8153fd8423..a598d90b4356 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -2047,6 +2047,13 @@ public static void setShowGTalkServiceStatusForUser(ContentResolver cr, boolean /** @hide */ public static final int VOLUME_OVERLAY_NONE = 3; + /** + * Volume panel background color + * + * @hide + */ + public static final String VOLUME_PANEL_BG_COLOR = "volume_panel_bg_color"; + /** * Whether the torch will pulse on incoming call * @hide diff --git a/core/java/android/view/VolumePanel.java b/core/java/android/view/VolumePanel.java index bcad5ce61abd..fbc1e4814d64 100644 --- a/core/java/android/view/VolumePanel.java +++ b/core/java/android/view/VolumePanel.java @@ -29,6 +29,7 @@ import android.content.IntentFilter; import android.content.res.Resources; import android.database.ContentObserver; +import android.graphics.drawable.Drawable; import android.media.AudioManager; import android.media.AudioService; import android.media.AudioSystem; @@ -118,6 +119,8 @@ public class VolumePanel extends Handler implements OnSeekBarChangeListener, Vie private boolean mVoiceCapable; private boolean mVolumeLinkNotification; private int mCurrentOverlayStyle = -1; + private Drawable defaultBackground; + private int mPanelColor; // True if we want to play tones on the system stream when the master stream is specified. private final boolean mPlayMasterStreamTones; @@ -236,6 +239,7 @@ public void onChange(boolean selfChange) { Settings.System.MODE_VOLUME_OVERLAY, VOLUME_OVERLAY_EXPANDABLE, UserHandle.USER_CURRENT); changeOverlayStyle(overlayStyle); + setColor(); } }; @@ -359,7 +363,9 @@ public void onDismiss(DialogInterface dialog) { context.getContentResolver().registerContentObserver( Settings.System.getUriFor(Settings.System.MODE_VOLUME_OVERLAY), false, mSettingsObserver, UserHandle.USER_ALL); - + context.getContentResolver().registerContentObserver( + Settings.System.getUriFor(Settings.System.VOLUME_PANEL_BG_COLOR), false, + mSettingsObserver, UserHandle.USER_ALL); boolean masterVolumeKeySounds = mContext.getResources().getBoolean( com.android.internal.R.bool.config_useVolumeKeySounds); @@ -367,6 +373,7 @@ public void onDismiss(DialogInterface dialog) { mMoreButton.setOnClickListener(this); listenToRingerMode(); + setColor(); } private void changeOverlayStyle(int newStyle) { @@ -417,10 +424,31 @@ public void setTheme() { // Force reload the background (to do not get the old cached one) // and update the states. mPanel.setBackgroundResource(R.color.transparent); - mPanel.setBackgroundResource(R.drawable.dialog_full_holo_dark); + setColor(); updateStates(); } + private void setColor() { + ContentResolver resolver = mContext.getContentResolver(); + + defaultBackground = mContext.getResources().getDrawable( + R.drawable.dialog_full_holo_dark).getCurrent(); + mPanelColor = Settings.System.getIntForUser(resolver, + Settings.System.VOLUME_PANEL_BG_COLOR, -2, UserHandle.USER_CURRENT); + + if (mPanelColor == Integer.MIN_VALUE + || mPanelColor == -2) { + // Flag to reset volume panel background color + mPanel.setBackground(defaultBackground); + } else { + if (mPanelColor != 0x00ffffff) { + mPanel.setBackgroundColor(mPanelColor); + } else { + mPanel.setBackgroundResource(R.drawable.dialog_full_holo_dark); + } + } + } + private void listenToRingerMode() { final IntentFilter filter = new IntentFilter(); filter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION); diff --git a/core/res/res/values-pl/slim_strings.xml b/core/res/res/values-pl/slim_strings.xml new file mode 100644 index 000000000000..67078ee016ee --- /dev/null +++ b/core/res/res/values-pl/slim_strings.xml @@ -0,0 +1,109 @@ + + + + + + włącz/wyłącz Kontrolę Prywatności + Pozwala aplikacji decydować, kiedy inna aplikacja zostanie uruchomiona w trybie ochrony prywatności. W trybie tym aplikacje nie mają dostępu do osobistych danych użytkownika, takich jak kontakty, historia połączeń czy wiadomości. + Kontrola Prywatności aktywna + %1$s nie będzie mieć dostępu do osobistych danych + %1$s nie będzie mieć dostępu do uprawnień + + Domyślny + + + Uruchom ponownie tablet + Uruchom ponownie telefon + + + + Zrzut ekranu + + + Uruchom ponownie + + Uruchom w trybie Recovery + + Uruchom w trybie Bootloader + + Uruchom Bootmenu + + Uruchom w trybie Fastboot + + Uruchom w trybie Download + + + Ponowne uruchamianie\u2026 + + Telefon zostanie uruchomiony ponownie. + + + Uruchom ponownie + + + Profil + + + Wyłącz Wi-Fi AP + + + Rozszerzony pulpit włączony + + + Rozszerzony pulpit wyłączony + + + Kontrola Pie włączona + + + Kontrola Pie wyłączone + + + Nie możesz wyłączyć Kontroli Pie. Żadna inna opcja nawigacji nie jest włączona. Włącz najpierw pasek nawigacji, aby wyłączyć Kontrolę Pie. + + + Pasek nawigacji włączony + + + Pasek nawigacji wyłączony + + + Nie możesz wyłączyć paska nawigacji. Żadna inna opcja nawigacji nie jest włączona. Włącz najpierw Kontrolę Pie, aby wyłączyć pasek nawigacji. + + + Przesuń aby aktywować cel + + + %s nie jest zainstalowana + + + Automatyczna korekcja jasności jest włączona. Ręczna zmiana ustawień jest niemożliwa. + + + zastępowanie przycisku zasilania + + Pozwala aplikacji na zastępowanie przycisku zasilania + + + włącz lub wyłącz powiadomienia Heads-Up + Pozwala aplikacji decydować, kiedy inna aplikacja będzie mogła wyświetlać normalne powiadomienia jako powiadomienia Heads-Up. + + +