summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--res/drawable/ic_lock.xml31
-rw-r--r--res/layout-television/permissions_frame.xml2
-rw-r--r--res/values-television/colors.xml4
-rw-r--r--res/values/strings.xml3
-rw-r--r--src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java2
-rw-r--r--src/com/android/packageinstaller/permission/ui/ManagePermissionsFragment.java49
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();