summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAnthony Hugh <ahugh@google.com>2015-09-18 17:18:10 -0700
committerAnthony Hugh <ahugh@google.com>2015-09-22 10:56:16 -0700
commit6161f39f583cf202969125757d78010bdc06457c (patch)
tree50d06d0df5565e0c7105cfc2e8d4d26971f11511 /src
parent38e80af4a571207b1c8cbe550b8e29479ea086a4 (diff)
downloadandroid_packages_apps_PackageInstaller-6161f39f583cf202969125757d78010bdc06457c.tar.gz
android_packages_apps_PackageInstaller-6161f39f583cf202969125757d78010bdc06457c.tar.bz2
android_packages_apps_PackageInstaller-6161f39f583cf202969125757d78010bdc06457c.zip
Update Grant Permissions dialog to redlines
Changes: - Refactor the ViewHandler a bit to be more generic. This should help with another upcoming Wear dialog. - Update assets for buttons - Add deny asset - Fix margins and other UI number tweaks BUG: 24133550 Change-Id: I330bdf3217fa5c554f71d9105a0475106b6f3e12
Diffstat (limited to 'src')
-rw-r--r--src/com/android/packageinstaller/permission/ui/GrantPermissionsWatchViewHandler.java53
-rw-r--r--src/com/android/packageinstaller/permission/ui/wear/ConfirmationViewHandler.java (renamed from src/com/android/packageinstaller/permission/ui/PermissionConfirmationViewHandler.java)88
-rw-r--r--src/com/android/packageinstaller/permission/ui/wear/settings/PermissionsSettingsAdapter.java2
3 files changed, 84 insertions, 59 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/GrantPermissionsWatchViewHandler.java b/src/com/android/packageinstaller/permission/ui/GrantPermissionsWatchViewHandler.java
index a3d3b805..242d0bce 100644
--- a/src/com/android/packageinstaller/permission/ui/GrantPermissionsWatchViewHandler.java
+++ b/src/com/android/packageinstaller/permission/ui/GrantPermissionsWatchViewHandler.java
@@ -2,6 +2,7 @@ package com.android.packageinstaller.permission.ui;
import android.content.Context;
import android.graphics.PixelFormat;
+import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.os.Bundle;
import android.util.Log;
@@ -9,18 +10,19 @@ import android.view.View;
import android.view.WindowManager;
import com.android.packageinstaller.R;
+import com.android.packageinstaller.permission.ui.wear.ConfirmationViewHandler;
/**
* Watch-specific view handler for the grant permissions activity.
*/
-final class GrantPermissionsWatchViewHandler extends PermissionConfirmationViewHandler
+final class GrantPermissionsWatchViewHandler extends ConfirmationViewHandler
implements GrantPermissionsViewHandler {
private static final String TAG = "GrantPermsWatchViewH";
private static final String ARG_GROUP_NAME = "ARG_GROUP_NAME";
private final Context mContext;
-
+
private ResultListener mResultListener;
private String mGroupName;
@@ -101,56 +103,71 @@ final class GrantPermissionsWatchViewHandler extends PermissionConfirmationViewH
}
}
- @Override // PermissionConfirmationViewHandler
- public void onAllow() {
+ @Override // ConfirmationViewHandler
+ public void onButton1() {
onClick(true /* granted */, false /* doNotAskAgain */);
}
- @Override // PermissionConfirmationViewHandler
- public void onDeny() {
+ @Override // ConfirmationViewHandler
+ public void onButton2() {
onClick(false /* granted */, false /* doNotAskAgain */);
}
- @Override // PermissionConfirmationViewHandler
- public void onDenyDoNotAskAgain() {
+ @Override // ConfirmationViewHandler
+ public void onButton3() {
onClick(false /* granted */, true /* doNotAskAgain */);
}
- @Override // PermissionConfirmationViewHandler
+ @Override // ConfirmationViewHandler
public CharSequence getCurrentPageText() {
return mCurrentPageText;
}
- @Override // PermissionConfirmationViewHandler
+ @Override // ConfirmationViewHandler
public Icon getPermissionIcon() {
return mIcon;
}
- @Override // PermissionConfirmationViewHandler
+ @Override // ConfirmationViewHandler
public CharSequence getMessage() {
return mMessage;
}
- @Override // PermissionConfirmationViewHandler
+ @Override // ConfirmationViewHandler
public int getButtonBarMode() {
return mShowDoNotAsk ? MODE_VERTICAL_BUTTONS : MODE_HORIZONTAL_BUTTONS;
}
- @Override // PermissionConfirmationViewHandler
- public CharSequence getVerticalAllowText() {
+ @Override // ConfirmationViewHandler
+ public CharSequence getVerticalButton1Text() {
return mContext.getString(R.string.grant_dialog_button_allow);
}
- @Override // PermissionConfirmationViewHandler
- public CharSequence getVerticalDenyText() {
+ @Override // ConfirmationViewHandler
+ public CharSequence getVerticalButton2Text() {
return mContext.getString(R.string.grant_dialog_button_deny);
}
- @Override // PermissionConfirmationViewHandler
- public CharSequence getVerticalDenyDoNotAskAgainText() {
+ @Override // ConfirmationViewHandler
+ public CharSequence getVerticalButton3Text() {
return mContext.getString(R.string.grant_dialog_button_deny_dont_ask_again);
}
+ @Override // ConfirmationViewHandler
+ public Drawable getVerticalButton1Icon(){
+ return mContext.getDrawable(R.drawable.confirm_button);
+ }
+
+ @Override // ConfirmationViewHandler
+ public Drawable getVerticalButton2Icon(){
+ return mContext.getDrawable(R.drawable.cancel_button);
+ }
+
+ @Override // ConfirmationViewHandler
+ public Drawable getVerticalButton3Icon(){
+ return mContext.getDrawable(R.drawable.deny_button);
+ }
+
private void onClick(boolean granted, boolean doNotAskAgain) {
if (mResultListener != null) {
mResultListener.onPermissionGrantResult(mGroupName, granted, doNotAskAgain);
diff --git a/src/com/android/packageinstaller/permission/ui/PermissionConfirmationViewHandler.java b/src/com/android/packageinstaller/permission/ui/wear/ConfirmationViewHandler.java
index 3e32c7f2..d28866ef 100644
--- a/src/com/android/packageinstaller/permission/ui/PermissionConfirmationViewHandler.java
+++ b/src/com/android/packageinstaller/permission/ui/wear/ConfirmationViewHandler.java
@@ -1,8 +1,9 @@
-package com.android.packageinstaller.permission.ui;
+package com.android.packageinstaller.permission.ui.wear;
import android.animation.ObjectAnimator;
import android.animation.PropertyValuesHolder;
import android.content.Context;
+import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.os.Handler;
import android.os.Message;
@@ -20,7 +21,7 @@ import android.widget.TextView;
import com.android.packageinstaller.R;
-public abstract class PermissionConfirmationViewHandler implements
+public abstract class ConfirmationViewHandler implements
Handler.Callback,
View.OnClickListener,
ViewTreeObserver.OnScrollChangedListener {
@@ -38,9 +39,9 @@ public abstract class PermissionConfirmationViewHandler implements
private ViewGroup mContent;
private ViewGroup mHorizontalButtonBar;
private ViewGroup mVerticalButtonBar;
- private Button mVerticalAllow;
- private Button mVerticalDeny;
- private Button mVerticalDenyDoNotAskAgain;
+ private Button mVerticalButton1;
+ private Button mVerticalButton2;
+ private Button mVerticalButton3;
private View mButtonBarContainer;
private Context mContext;
@@ -53,17 +54,22 @@ public abstract class PermissionConfirmationViewHandler implements
private boolean mHiddenBefore;
// TODO: Move these into a builder
- public abstract void onAllow();
- public abstract void onDeny();
- public abstract void onDenyDoNotAskAgain();
- public abstract CharSequence getVerticalAllowText();
- public abstract CharSequence getVerticalDenyText();
- public abstract CharSequence getVerticalDenyDoNotAskAgainText();
+ /** In the 2 button layout, this is allow button */
+ public abstract void onButton1();
+ /** In the 2 button layout, this is deny button */
+ public abstract void onButton2();
+ public abstract void onButton3();
+ public abstract CharSequence getVerticalButton1Text();
+ public abstract CharSequence getVerticalButton2Text();
+ public abstract CharSequence getVerticalButton3Text();
+ public abstract Drawable getVerticalButton1Icon();
+ public abstract Drawable getVerticalButton2Icon();
+ public abstract Drawable getVerticalButton3Icon();
public abstract CharSequence getCurrentPageText();
public abstract Icon getPermissionIcon();
public abstract CharSequence getMessage();
- public PermissionConfirmationViewHandler(Context context) {
+ public ConfirmationViewHandler(Context context) {
mContext = context;
}
@@ -84,13 +90,12 @@ public abstract class PermissionConfirmationViewHandler implements
horizontalAllow.setOnClickListener(this);
horizontalDeny.setOnClickListener(this);
- mVerticalAllow = (Button) mRoot.findViewById(R.id.vertical_allow_button);
- mVerticalDeny = (Button) mRoot.findViewById(R.id.vertical_deny_button);
- mVerticalDenyDoNotAskAgain =
- (Button) mRoot.findViewById(R.id.vertical_deny_do_not_ask_again_button);
- mVerticalAllow.setOnClickListener(this);
- mVerticalDeny.setOnClickListener(this);
- mVerticalDenyDoNotAskAgain.setOnClickListener(this);
+ mVerticalButton1 = (Button) mRoot.findViewById(R.id.vertical_button1);
+ mVerticalButton2 = (Button) mRoot.findViewById(R.id.vertical_button2);
+ mVerticalButton3 = (Button) mRoot.findViewById(R.id.vertical_button3);
+ mVerticalButton1.setOnClickListener(this);
+ mVerticalButton2.setOnClickListener(this);
+ mVerticalButton3.setOnClickListener(this);
mInterpolator = AnimationUtils.loadInterpolator(mContext,
android.R.interpolator.fast_out_slow_in);
@@ -116,7 +121,7 @@ public abstract class PermissionConfirmationViewHandler implements
mCurrentPageText.setText(currentPageText);
mCurrentPageText.setVisibility(View.VISIBLE);
} else {
- mCurrentPageText.setVisibility(View.INVISIBLE);
+ mCurrentPageText.setVisibility(View.GONE);
}
Icon icon = getPermissionIcon();
@@ -124,7 +129,7 @@ public abstract class PermissionConfirmationViewHandler implements
mIcon.setImageIcon(icon);
mIcon.setVisibility(View.VISIBLE);
} else {
- mIcon.setVisibility(View.INVISIBLE);
+ mIcon.setVisibility(View.GONE);
}
mMessage.setText(getMessage());
@@ -136,16 +141,16 @@ public abstract class PermissionConfirmationViewHandler implements
case MODE_VERTICAL_BUTTONS:
mHorizontalButtonBar.setVisibility(View.GONE);
mVerticalButtonBar.setVisibility(View.VISIBLE);
- mVerticalAllow.setText(getVerticalAllowText());
- mVerticalDeny.setText(getVerticalDenyText());
- mVerticalDenyDoNotAskAgain.setText(getVerticalDenyDoNotAskAgainText());
-
- mVerticalAllow.setCompoundDrawablesWithIntrinsicBounds(
- mContext.getDrawable(R.drawable.confirm_button), null, null, null);
- mVerticalDeny.setCompoundDrawablesWithIntrinsicBounds(
- mContext.getDrawable(R.drawable.cancel_button), null, null, null);
- mVerticalDenyDoNotAskAgain.setCompoundDrawablesWithIntrinsicBounds(
- mContext.getDrawable(R.drawable.cancel_button), null, null, null);
+ mVerticalButton1.setText(getVerticalButton1Text());
+ mVerticalButton2.setText(getVerticalButton2Text());
+ mVerticalButton3.setText(getVerticalButton3Text());
+
+ mVerticalButton1.setCompoundDrawablesWithIntrinsicBounds(
+ getVerticalButton1Icon(), null, null, null);
+ mVerticalButton2.setCompoundDrawablesWithIntrinsicBounds(
+ getVerticalButton2Icon(), null, null, null);
+ mVerticalButton3.setCompoundDrawablesWithIntrinsicBounds(
+ getVerticalButton3Icon(), null, null, null);
break;
}
@@ -194,15 +199,15 @@ public abstract class PermissionConfirmationViewHandler implements
int id = v.getId();
switch (id) {
case R.id.horizontal_allow_button:
- case R.id.vertical_allow_button:
- onAllow();
+ case R.id.vertical_button1:
+ onButton1();
break;
case R.id.horizontal_deny_button:
- case R.id.vertical_deny_button:
- onDeny();
+ case R.id.vertical_button2:
+ onButton2();
break;
- case R.id.vertical_deny_do_not_ask_again_button:
- onDenyDoNotAskAgain();
+ case R.id.vertical_button3:
+ onButton3();
break;
}
}
@@ -227,8 +232,11 @@ public abstract class PermissionConfirmationViewHandler implements
// get the offset to the top of the button bar
int offset = mScrollingContainer.getHeight() + mButtonBarContainer.getHeight() -
mContent.getHeight() + Math.max(mScrollingContainer.getScrollY(), 0);
- int translationY = offset > 0 ? mButtonBarContainer.getHeight() - offset :
- mButtonBarContainer.getHeight();
+ // The desired margin space between the button bar and the bottom of the dialog text
+ int topMargin = mContext.getResources().getDimensionPixelSize(
+ R.dimen.conf_diag_button_container_top_margin);
+ int translationY = topMargin + (offset > 0 ?
+ mButtonBarContainer.getHeight() - offset : mButtonBarContainer.getHeight());
if (!mHiddenBefore || mButtonBarAnimator == null) {
// hasn't hidden the bar yet, just hide now to the right height
@@ -274,4 +282,4 @@ public abstract class PermissionConfirmationViewHandler implements
mButtonBarAnimator.setInterpolator(mInterpolator);
mButtonBarAnimator.start();
}
-}
+} \ No newline at end of file
diff --git a/src/com/android/packageinstaller/permission/ui/wear/settings/PermissionsSettingsAdapter.java b/src/com/android/packageinstaller/permission/ui/wear/settings/PermissionsSettingsAdapter.java
index 69629f01..0e0adcbb 100644
--- a/src/com/android/packageinstaller/permission/ui/wear/settings/PermissionsSettingsAdapter.java
+++ b/src/com/android/packageinstaller/permission/ui/wear/settings/PermissionsSettingsAdapter.java
@@ -77,7 +77,7 @@ public final class PermissionsSettingsAdapter extends SettingsAdapter<AppPermiss
private final TextView mState;
private final float mCenteredAlpha = 1.0f;
private final float mNonCenteredAlpha = 0.5f;
-
+
public PermissionsSettingsItem (Context context) {
super(context);
mState = (TextView) findViewById(R.id.state);