Loading src/com/android/packageinstaller/permission/ui/wear/AppPermissionsFragmentWear.java +9 −7 Original line number Diff line number Diff line Loading @@ -55,7 +55,6 @@ public final class AppPermissionsFragmentWear extends TitledSettingsFragment { private PermissionsSettingsAdapter mAdapter; private boolean mHasConfirmedRevoke; private int mPendingPermGroupIndex = -1; public static AppPermissionsFragmentWear newInstance(String packageName) { return setPackageName(new AppPermissionsFragmentWear(), packageName); Loading Loading @@ -216,11 +215,11 @@ public final class AppPermissionsFragmentWear extends TitledSettingsFragment { } else { final boolean grantedByDefault = group.hasGrantedByDefaultPermission(); if (grantedByDefault || (!group.hasRuntimePermission() && !mHasConfirmedRevoke)) { mPendingPermGroupIndex = index; Intent intent = new Intent(getActivity(), WarningConfirmationActivity.class); intent.putExtra(WarningConfirmationActivity.EXTRA_WARNING_MESSAGE, getString(grantedByDefault ? R.string.system_warning : R.string.old_sdk_deny_warning)); intent.putExtra(WarningConfirmationActivity.EXTRA_INDEX, index); startActivityForResult(intent, WARNING_CONFIRMATION_REQUEST); } else { group.revokeRuntimePermissions(false); Loading @@ -234,18 +233,21 @@ public final class AppPermissionsFragmentWear extends TitledSettingsFragment { public void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == WARNING_CONFIRMATION_REQUEST) { if (resultCode == Activity.RESULT_OK) { SettingsAdapter.Setting<AppPermissionGroup> setting = mAdapter.get(mPendingPermGroupIndex); int index = data.getIntExtra(WarningConfirmationActivity.EXTRA_INDEX, -1); if (index == -1) { Log.e(LOG_TAG, "Warning confirmation request came back with no index."); return; } SettingsAdapter.Setting<AppPermissionGroup> setting = mAdapter.get(index); final AppPermissionGroup group = setting.data; group.revokeRuntimePermissions(false); if (!group.hasGrantedByDefaultPermission()) { mHasConfirmedRevoke = true; } updatePermissionGroupSetting(mPendingPermGroupIndex); updatePermissionGroupSetting(index); } mPendingPermGroupIndex = -1; } else { super.onActivityResult(requestCode, resultCode, data); } Loading src/com/android/packageinstaller/permission/ui/wear/WarningConfirmationActivity.java +12 −4 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.packageinstaller.permission.ui.wear; import android.app.Activity; import android.content.Intent; import android.graphics.drawable.Drawable; import android.graphics.drawable.Icon; import android.os.Bundle; Loading @@ -25,6 +26,8 @@ import com.android.packageinstaller.R; public final class WarningConfirmationActivity extends Activity { public final static String EXTRA_WARNING_MESSAGE = "EXTRA_WARNING_MESSAGE"; // Saved index that will be returned in the onActivityResult() callback public final static String EXTRA_INDEX = "EXTRA_INDEX"; private ConfirmationViewHandler mViewHandler; private String mMessage; Loading @@ -43,14 +46,12 @@ public final class WarningConfirmationActivity extends Activity { @Override public void onButton1() { setResult(Activity.RESULT_CANCELED); finish(); setResultAndFinish(Activity.RESULT_CANCELED); } @Override public void onButton2() { setResult(Activity.RESULT_OK); finish(); setResultAndFinish(Activity.RESULT_OK); } @Override Loading Loading @@ -107,4 +108,11 @@ public final class WarningConfirmationActivity extends Activity { setContentView(mViewHandler.createView()); mViewHandler.invalidate(); } private void setResultAndFinish(int result) { Intent intent = new Intent(); intent.putExtra(EXTRA_INDEX, getIntent().getIntExtra(EXTRA_INDEX, -1)); setResult(result, intent); finish(); } } Loading
src/com/android/packageinstaller/permission/ui/wear/AppPermissionsFragmentWear.java +9 −7 Original line number Diff line number Diff line Loading @@ -55,7 +55,6 @@ public final class AppPermissionsFragmentWear extends TitledSettingsFragment { private PermissionsSettingsAdapter mAdapter; private boolean mHasConfirmedRevoke; private int mPendingPermGroupIndex = -1; public static AppPermissionsFragmentWear newInstance(String packageName) { return setPackageName(new AppPermissionsFragmentWear(), packageName); Loading Loading @@ -216,11 +215,11 @@ public final class AppPermissionsFragmentWear extends TitledSettingsFragment { } else { final boolean grantedByDefault = group.hasGrantedByDefaultPermission(); if (grantedByDefault || (!group.hasRuntimePermission() && !mHasConfirmedRevoke)) { mPendingPermGroupIndex = index; Intent intent = new Intent(getActivity(), WarningConfirmationActivity.class); intent.putExtra(WarningConfirmationActivity.EXTRA_WARNING_MESSAGE, getString(grantedByDefault ? R.string.system_warning : R.string.old_sdk_deny_warning)); intent.putExtra(WarningConfirmationActivity.EXTRA_INDEX, index); startActivityForResult(intent, WARNING_CONFIRMATION_REQUEST); } else { group.revokeRuntimePermissions(false); Loading @@ -234,18 +233,21 @@ public final class AppPermissionsFragmentWear extends TitledSettingsFragment { public void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == WARNING_CONFIRMATION_REQUEST) { if (resultCode == Activity.RESULT_OK) { SettingsAdapter.Setting<AppPermissionGroup> setting = mAdapter.get(mPendingPermGroupIndex); int index = data.getIntExtra(WarningConfirmationActivity.EXTRA_INDEX, -1); if (index == -1) { Log.e(LOG_TAG, "Warning confirmation request came back with no index."); return; } SettingsAdapter.Setting<AppPermissionGroup> setting = mAdapter.get(index); final AppPermissionGroup group = setting.data; group.revokeRuntimePermissions(false); if (!group.hasGrantedByDefaultPermission()) { mHasConfirmedRevoke = true; } updatePermissionGroupSetting(mPendingPermGroupIndex); updatePermissionGroupSetting(index); } mPendingPermGroupIndex = -1; } else { super.onActivityResult(requestCode, resultCode, data); } Loading
src/com/android/packageinstaller/permission/ui/wear/WarningConfirmationActivity.java +12 −4 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.packageinstaller.permission.ui.wear; import android.app.Activity; import android.content.Intent; import android.graphics.drawable.Drawable; import android.graphics.drawable.Icon; import android.os.Bundle; Loading @@ -25,6 +26,8 @@ import com.android.packageinstaller.R; public final class WarningConfirmationActivity extends Activity { public final static String EXTRA_WARNING_MESSAGE = "EXTRA_WARNING_MESSAGE"; // Saved index that will be returned in the onActivityResult() callback public final static String EXTRA_INDEX = "EXTRA_INDEX"; private ConfirmationViewHandler mViewHandler; private String mMessage; Loading @@ -43,14 +46,12 @@ public final class WarningConfirmationActivity extends Activity { @Override public void onButton1() { setResult(Activity.RESULT_CANCELED); finish(); setResultAndFinish(Activity.RESULT_CANCELED); } @Override public void onButton2() { setResult(Activity.RESULT_OK); finish(); setResultAndFinish(Activity.RESULT_OK); } @Override Loading Loading @@ -107,4 +108,11 @@ public final class WarningConfirmationActivity extends Activity { setContentView(mViewHandler.createView()); mViewHandler.invalidate(); } private void setResultAndFinish(int result) { Intent intent = new Intent(); intent.putExtra(EXTRA_INDEX, getIntent().getIntExtra(EXTRA_INDEX, -1)); setResult(result, intent); finish(); } }