diff options
-rw-r--r-- | res/drawable/ic_lock.xml | 31 | ||||
-rw-r--r-- | res/layout-television/permissions_frame.xml | 2 | ||||
-rw-r--r-- | res/values-television/colors.xml | 4 | ||||
-rw-r--r-- | res/values/strings.xml | 3 | ||||
-rw-r--r-- | src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java | 2 | ||||
-rw-r--r-- | src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java | 49 |
6 files changed, 88 insertions, 3 deletions
diff --git a/res/drawable/ic_lock.xml b/res/drawable/ic_lock.xml new file mode 100644 index 00000000..396bd988 --- /dev/null +++ b/res/drawable/ic_lock.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +Copyright (C) 2015 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:viewportWidth="48" + android:viewportHeight="48"> + <path + android:pathData="M0 0h48v48H0z" /> + <path + android:fillColor="#000000" + android:pathData="M36 16h-2v-4c0-5.52-4.48-10-10-10S14 6.48 14 12v4h-2c-2.21 0-4 1.79-4 4v20c0 +2.21 1.79 4 4 4h24c2.21 0 4-1.79 4-4V20c0-2.21-1.79-4-4-4zM24 34c-2.21 +0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4zm6.2-18H17.8v-4c0-3.42 2.78-6.2 +6.2-6.2 3.42 0 6.2 2.78 6.2 6.2v4z" /> +</vector> diff --git a/res/layout-television/permissions_frame.xml b/res/layout-television/permissions_frame.xml index d32d6280..14cb0883 100644 --- a/res/layout-television/permissions_frame.xml +++ b/res/layout-television/permissions_frame.xml @@ -50,7 +50,7 @@ <ImageView android:id="@+id/lb_icon" android:layout_width="@dimen/lb_content_fragment_icon_width" - android:layout_height="wrap_content" + android:layout_height="@dimen/lb_content_fragment_icon_width" android:layout_alignParentEnd="true" android:layout_centerVertical="true" android:layout_marginStart="@dimen/lb_content_fragment_delimiter_padding" diff --git a/res/values-television/colors.xml b/res/values-television/colors.xml index 1fe60dc7..eb6bfa7d 100644 --- a/res/values-television/colors.xml +++ b/res/values-television/colors.xml @@ -23,6 +23,8 @@ <color name="grant_permissions_button_color">@color/grant_permissions_white_text_alpha_100</color> <color name="grant_permissions_focus_highlight">#26eeeeee</color> - <color name="grant_permissions_white_text_alpha_100">#ffeeeeee</color> + <color name="grant_permissions_white_text_alpha_100">@color/off_white</color> <color name="grant_permissions_white_text_alpha_70">#b2eeeeee</color> + + <color name="off_white">#ffeeeeee</color> </resources> diff --git a/res/values/strings.xml b/res/values/strings.xml index 72ac495c..47cea64d 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -197,6 +197,9 @@ <string name="permdesc_togglePermissions" translatable="false">Allows the holder to launch the UI for toggling app permissions. Should never be needed for normal apps.</string> + <!-- Breadcrumb for page of managing application permissions [CHAR LIMIT=50] --> + <string name="app_permissions_breadcrumb">Apps</string> + <!-- Title for page of managing application permissions --> <string name="app_permissions">App permissions</string> <!-- Checkbox that allows user to not be questioned about this permission diff --git a/src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java b/src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java index 2fc1a02b..934ed369 100644 --- a/src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java +++ b/src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java @@ -29,7 +29,7 @@ public final class ManagePermissionsActivity extends Activity { public void onCreate(Bundle icicle) { super.onCreate(icicle); - Fragment fragment = null; + Fragment fragment; String action = getIntent().getAction(); switch (action) { diff --git a/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java b/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java index 6dc5cda4..00d30d19 100644 --- a/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java +++ b/src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java @@ -15,11 +15,13 @@ */ package com.android.packageinstaller.permission.ui; +import android.annotation.Nullable; import android.app.ActionBar; import android.app.Activity; import android.app.FragmentTransaction; import android.content.ActivityNotFoundException; import android.content.Intent; +import android.graphics.drawable.Drawable; import android.os.Bundle; import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; @@ -27,9 +29,15 @@ import android.preference.PreferenceFragment; import android.preference.PreferenceScreen; import android.util.ArraySet; import android.util.Log; +import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.ListView; +import android.widget.TextView; import com.android.packageinstaller.R; import com.android.packageinstaller.permission.model.PermissionApps; @@ -137,6 +145,27 @@ public final class ManagePermissionsFragment extends PreferenceFragment updatePermissionsUi(); } + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + ViewGroup rootView = (ViewGroup) inflater.inflate(R.layout.permissions_frame, container, + false); + ViewGroup prefsContainer = (ViewGroup) rootView.findViewById(R.id.prefs_container); + if (prefsContainer == null) { + prefsContainer = rootView; + } + prefsContainer.addView(super.onCreateView(inflater, prefsContainer, savedInstanceState)); + View emptyView = rootView.findViewById(R.id.no_permissions); + ((ListView) rootView.findViewById(android.R.id.list)).setEmptyView(emptyView); + return rootView; + } + + @Override + public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + updatePermissionsUi(); + } + private void updatePermissionsUi() { Activity activity = getActivity(); @@ -144,6 +173,26 @@ public final class ManagePermissionsFragment extends PreferenceFragment return; } + final ViewGroup rootView = (ViewGroup) getView(); + if (rootView != null) { + final ImageView iconView = (ImageView) rootView.findViewById(R.id.lb_icon); + if (iconView != null) { + // Set the icon as the background instead of the image because ImageView + // doesn't properly scale vector drawables beyond their intrinsic size + Drawable icon = activity.getDrawable(R.drawable.ic_lock); + icon.setTint(activity.getColor(R.color.off_white)); + iconView.setBackground(icon); + } + final TextView titleView = (TextView) rootView.findViewById(R.id.lb_title); + if (titleView != null) { + titleView.setText(R.string.app_permissions); + } + final TextView breadcrumbView = (TextView) rootView.findViewById(R.id.lb_breadcrumb); + if (breadcrumbView != null) { + breadcrumbView.setText(R.string.app_permissions_breadcrumb); + } + } + List<PermissionGroup> groups = mPermissions.getGroups(); PreferenceScreen screen = getPreferenceScreen(); |