summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJason Monk <jmonk@google.com>2015-05-19 12:54:53 -0400
committerJason Monk <jmonk@google.com>2015-05-19 13:02:41 -0400
commit7c719ca27ff887903f8890e8181ed8e28bb6e886 (patch)
tree76cdf3bcc6b958d67d21241e685555845e7c025f /src
parentfed504a8ca875d7bba8fd9f4876b7d34fdc1f319 (diff)
downloadandroid_packages_apps_PackageInstaller-7c719ca27ff887903f8890e8181ed8e28bb6e886.tar.gz
android_packages_apps_PackageInstaller-7c719ca27ff887903f8890e8181ed8e28bb6e886.tar.bz2
android_packages_apps_PackageInstaller-7c719ca27ff887903f8890e8181ed8e28bb6e886.zip
Handle dark themes in permissions UI
- Settings > Apps > Advanced > Permissions - Permission icon needed tinting - Settings > Apps > [App] > Permissions - Permission icon also needed tinting - Grant permission dialog - Needed new base theme - App name color span needed dark color - Progress text needed dark color Bug: 21154903 Change-Id: I34045ac71ca87abbb4ce828435f583f53ab0d3da
Diffstat (limited to 'src')
-rw-r--r--src/com/android/packageinstaller/permission/ui/AppPermissionsFragment.java6
-rw-r--r--src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java2
-rw-r--r--src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java5
-rw-r--r--src/com/android/packageinstaller/permission/utils/Utils.java11
4 files changed, 20 insertions, 4 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/AppPermissionsFragment.java b/src/com/android/packageinstaller/permission/ui/AppPermissionsFragment.java
index 2310306a..827c806b 100644
--- a/src/com/android/packageinstaller/permission/ui/AppPermissionsFragment.java
+++ b/src/com/android/packageinstaller/permission/ui/AppPermissionsFragment.java
@@ -243,8 +243,10 @@ public final class AppPermissionsFragment extends SettingsWithHeader
SwitchPreference preference = new SwitchPreference(activity);
preference.setOnPreferenceChangeListener(this);
preference.setKey(group.getName());
- preference.setIcon(Utils.loadDrawable(activity.getPackageManager(),
- group.getIconPkg(), group.getIconResId()));
+ Drawable icon = Utils.loadDrawable(activity.getPackageManager(),
+ group.getIconPkg(), group.getIconResId());
+ preference.setIcon(Utils.applyTint(getContext(), icon,
+ android.R.attr.colorControlNormal));
preference.setTitle(group.getLabel());
preference.setPersistent(false);
preference.setEnabled(!group.isPolicyFixed());
diff --git a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
index 6f824ea0..3a6644e7 100644
--- a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
+++ b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
@@ -156,7 +156,7 @@ public class GrantPermissionsActivity extends Activity implements
// Bold/color the app name.
int appLabelStart = message.toString().indexOf(appLabel.toString(), 0);
int appLabelLength = appLabel.length();
- int color = getResources().getColor(R.color.grant_permissions_app_color, null);
+ int color = getColor(R.color.grant_permissions_app_color);
message.setSpan(new ForegroundColorSpan(color), appLabelStart,
appLabelStart + appLabelLength, 0);
diff --git a/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java b/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java
index 5158b5e8..4437e5cf 100644
--- a/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java
+++ b/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java
@@ -22,12 +22,14 @@ import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.content.res.Resources;
import android.content.res.Resources.Theme;
+import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceFragment;
import android.preference.PreferenceScreen;
import android.util.Log;
+import android.util.TypedValue;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
@@ -161,7 +163,8 @@ public final class ManagePermissionsFragment extends PreferenceFragment
Preference preference = new Preference(activity);
preference.setOnPreferenceClickListener(this);
preference.setKey(group.getName());
- preference.setIcon(group.getIcon());
+ preference.setIcon(Utils.applyTint(getContext(), group.getIcon(),
+ android.R.attr.colorControlNormal));
preference.setTitle(group.getLabel());
preference.setPersistent(false);
diff --git a/src/com/android/packageinstaller/permission/utils/Utils.java b/src/com/android/packageinstaller/permission/utils/Utils.java
index 7abb2627..7bbe5982 100644
--- a/src/com/android/packageinstaller/permission/utils/Utils.java
+++ b/src/com/android/packageinstaller/permission/utils/Utils.java
@@ -17,10 +17,13 @@
package com.android.packageinstaller.permission.utils;
import android.Manifest;
+import android.content.Context;
import android.content.pm.PackageManager;
import android.content.res.Resources;
+import android.content.res.Resources.Theme;
import android.graphics.drawable.Drawable;
import android.util.Log;
+import android.util.TypedValue;
public class Utils {
private static final String LOG_TAG = "Utils";
@@ -56,4 +59,12 @@ public class Utils {
}
}
}
+
+ public static Drawable applyTint(Context context, Drawable icon, int attr) {
+ Theme theme = context.getTheme();
+ TypedValue typedValue = new TypedValue();
+ theme.resolveAttribute(attr, typedValue, true);
+ icon.setTint(context.getColor(typedValue.resourceId));
+ return icon;
+ }
}