Loading packages/PackageInstaller/src/com/android/packageinstaller/v2/ui/fragments/AnonymousSourceFragment.java +25 −1 Original line number Original line Diff line number Diff line Loading @@ -34,7 +34,10 @@ import com.android.packageinstaller.v2.ui.InstallActionListener; public class AnonymousSourceFragment extends DialogFragment { public class AnonymousSourceFragment extends DialogFragment { public static String TAG = AnonymousSourceFragment.class.getSimpleName(); public static String TAG = AnonymousSourceFragment.class.getSimpleName(); @NonNull private InstallActionListener mInstallActionListener; private InstallActionListener mInstallActionListener; @NonNull private AlertDialog mDialog; @Override @Override public void onAttach(@NonNull Context context) { public void onAttach(@NonNull Context context) { Loading @@ -45,7 +48,7 @@ public class AnonymousSourceFragment extends DialogFragment { @NonNull @NonNull @Override @Override public Dialog onCreateDialog(Bundle savedInstanceState) { public Dialog onCreateDialog(Bundle savedInstanceState) { return new AlertDialog.Builder(getActivity()) mDialog = new AlertDialog.Builder(requireContext()) .setMessage(R.string.anonymous_source_warning) .setMessage(R.string.anonymous_source_warning) .setPositiveButton(R.string.anonymous_source_continue, .setPositiveButton(R.string.anonymous_source_continue, ((dialog, which) -> mInstallActionListener.onPositiveResponse( ((dialog, which) -> mInstallActionListener.onPositiveResponse( Loading @@ -53,6 +56,7 @@ public class AnonymousSourceFragment extends DialogFragment { .setNegativeButton(R.string.cancel, .setNegativeButton(R.string.cancel, ((dialog, which) -> mInstallActionListener.onNegativeResponse( ((dialog, which) -> mInstallActionListener.onNegativeResponse( InstallStage.STAGE_USER_ACTION_REQUIRED))).create(); InstallStage.STAGE_USER_ACTION_REQUIRED))).create(); return mDialog; } } @Override @Override Loading @@ -60,4 +64,24 @@ public class AnonymousSourceFragment extends DialogFragment { super.onCancel(dialog); super.onCancel(dialog); mInstallActionListener.onNegativeResponse(InstallStage.STAGE_USER_ACTION_REQUIRED); mInstallActionListener.onNegativeResponse(InstallStage.STAGE_USER_ACTION_REQUIRED); } } @Override public void onStart() { super.onStart(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setFilterTouchesWhenObscured(true); } @Override public void onPause() { super.onPause(); // This prevents tapjacking since an overlay activity started in front of Pia will // cause Pia to be paused. mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false); } @Override public void onResume() { super.onResume(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(true); } } } packages/PackageInstaller/src/com/android/packageinstaller/v2/ui/fragments/ExternalSourcesBlockedFragment.java +26 −1 Original line number Original line Diff line number Diff line Loading @@ -35,8 +35,12 @@ import com.android.packageinstaller.v2.ui.InstallActionListener; public class ExternalSourcesBlockedFragment extends DialogFragment { public class ExternalSourcesBlockedFragment extends DialogFragment { private final String TAG = ExternalSourcesBlockedFragment.class.getSimpleName(); private final String TAG = ExternalSourcesBlockedFragment.class.getSimpleName(); @NonNull private final InstallUserActionRequired mDialogData; private final InstallUserActionRequired mDialogData; @NonNull private InstallActionListener mInstallActionListener; private InstallActionListener mInstallActionListener; @NonNull private AlertDialog mDialog; public ExternalSourcesBlockedFragment(InstallUserActionRequired dialogData) { public ExternalSourcesBlockedFragment(InstallUserActionRequired dialogData) { mDialogData = dialogData; mDialogData = dialogData; Loading @@ -51,7 +55,7 @@ public class ExternalSourcesBlockedFragment extends DialogFragment { @NonNull @NonNull @Override @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { return new AlertDialog.Builder(requireContext()) mDialog = new AlertDialog.Builder(requireContext()) .setTitle(mDialogData.getAppLabel()) .setTitle(mDialogData.getAppLabel()) .setIcon(mDialogData.getAppIcon()) .setIcon(mDialogData.getAppIcon()) .setMessage(R.string.untrusted_external_source_warning) .setMessage(R.string.untrusted_external_source_warning) Loading @@ -62,6 +66,7 @@ public class ExternalSourcesBlockedFragment extends DialogFragment { (dialog, which) -> mInstallActionListener.onNegativeResponse( (dialog, which) -> mInstallActionListener.onNegativeResponse( mDialogData.getStageCode())) mDialogData.getStageCode())) .create(); .create(); return mDialog; } } @Override @Override Loading @@ -69,4 +74,24 @@ public class ExternalSourcesBlockedFragment extends DialogFragment { super.onCancel(dialog); super.onCancel(dialog); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); } } @Override public void onStart() { super.onStart(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setFilterTouchesWhenObscured(true); } @Override public void onPause() { super.onPause(); // This prevents tapjacking since an overlay activity started in front of Pia will // cause Pia to be paused. mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false); } @Override public void onResume() { super.onResume(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(true); } } } packages/PackageInstaller/src/com/android/packageinstaller/v2/ui/fragments/InstallConfirmationFragment.java +24 −2 Original line number Original line Diff line number Diff line Loading @@ -42,6 +42,8 @@ public class InstallConfirmationFragment extends DialogFragment { private final InstallUserActionRequired mDialogData; private final InstallUserActionRequired mDialogData; @NonNull @NonNull private InstallActionListener mInstallActionListener; private InstallActionListener mInstallActionListener; @NonNull private AlertDialog mDialog; public InstallConfirmationFragment(@NonNull InstallUserActionRequired dialogData) { public InstallConfirmationFragment(@NonNull InstallUserActionRequired dialogData) { mDialogData = dialogData; mDialogData = dialogData; Loading @@ -58,7 +60,7 @@ public class InstallConfirmationFragment extends DialogFragment { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { View dialogView = getLayoutInflater().inflate(R.layout.install_content_view, null); View dialogView = getLayoutInflater().inflate(R.layout.install_content_view, null); AlertDialog dialog = new AlertDialog.Builder(requireContext()) mDialog = new AlertDialog.Builder(requireContext()) .setIcon(mDialogData.getAppIcon()) .setIcon(mDialogData.getAppIcon()) .setTitle(mDialogData.getAppLabel()) .setTitle(mDialogData.getAppLabel()) .setView(dialogView) .setView(dialogView) Loading @@ -84,7 +86,7 @@ public class InstallConfirmationFragment extends DialogFragment { } } viewToEnable.setVisibility(View.VISIBLE); viewToEnable.setVisibility(View.VISIBLE); return dialog; return mDialog; } } @Override @Override Loading @@ -92,4 +94,24 @@ public class InstallConfirmationFragment extends DialogFragment { super.onCancel(dialog); super.onCancel(dialog); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); } } @Override public void onStart() { super.onStart(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setFilterTouchesWhenObscured(true); } @Override public void onPause() { super.onPause(); // This prevents tapjacking since an overlay activity started in front of Pia will // cause Pia to be paused. mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false); } @Override public void onResume() { super.onResume(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(true); } } } Loading
packages/PackageInstaller/src/com/android/packageinstaller/v2/ui/fragments/AnonymousSourceFragment.java +25 −1 Original line number Original line Diff line number Diff line Loading @@ -34,7 +34,10 @@ import com.android.packageinstaller.v2.ui.InstallActionListener; public class AnonymousSourceFragment extends DialogFragment { public class AnonymousSourceFragment extends DialogFragment { public static String TAG = AnonymousSourceFragment.class.getSimpleName(); public static String TAG = AnonymousSourceFragment.class.getSimpleName(); @NonNull private InstallActionListener mInstallActionListener; private InstallActionListener mInstallActionListener; @NonNull private AlertDialog mDialog; @Override @Override public void onAttach(@NonNull Context context) { public void onAttach(@NonNull Context context) { Loading @@ -45,7 +48,7 @@ public class AnonymousSourceFragment extends DialogFragment { @NonNull @NonNull @Override @Override public Dialog onCreateDialog(Bundle savedInstanceState) { public Dialog onCreateDialog(Bundle savedInstanceState) { return new AlertDialog.Builder(getActivity()) mDialog = new AlertDialog.Builder(requireContext()) .setMessage(R.string.anonymous_source_warning) .setMessage(R.string.anonymous_source_warning) .setPositiveButton(R.string.anonymous_source_continue, .setPositiveButton(R.string.anonymous_source_continue, ((dialog, which) -> mInstallActionListener.onPositiveResponse( ((dialog, which) -> mInstallActionListener.onPositiveResponse( Loading @@ -53,6 +56,7 @@ public class AnonymousSourceFragment extends DialogFragment { .setNegativeButton(R.string.cancel, .setNegativeButton(R.string.cancel, ((dialog, which) -> mInstallActionListener.onNegativeResponse( ((dialog, which) -> mInstallActionListener.onNegativeResponse( InstallStage.STAGE_USER_ACTION_REQUIRED))).create(); InstallStage.STAGE_USER_ACTION_REQUIRED))).create(); return mDialog; } } @Override @Override Loading @@ -60,4 +64,24 @@ public class AnonymousSourceFragment extends DialogFragment { super.onCancel(dialog); super.onCancel(dialog); mInstallActionListener.onNegativeResponse(InstallStage.STAGE_USER_ACTION_REQUIRED); mInstallActionListener.onNegativeResponse(InstallStage.STAGE_USER_ACTION_REQUIRED); } } @Override public void onStart() { super.onStart(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setFilterTouchesWhenObscured(true); } @Override public void onPause() { super.onPause(); // This prevents tapjacking since an overlay activity started in front of Pia will // cause Pia to be paused. mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false); } @Override public void onResume() { super.onResume(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(true); } } }
packages/PackageInstaller/src/com/android/packageinstaller/v2/ui/fragments/ExternalSourcesBlockedFragment.java +26 −1 Original line number Original line Diff line number Diff line Loading @@ -35,8 +35,12 @@ import com.android.packageinstaller.v2.ui.InstallActionListener; public class ExternalSourcesBlockedFragment extends DialogFragment { public class ExternalSourcesBlockedFragment extends DialogFragment { private final String TAG = ExternalSourcesBlockedFragment.class.getSimpleName(); private final String TAG = ExternalSourcesBlockedFragment.class.getSimpleName(); @NonNull private final InstallUserActionRequired mDialogData; private final InstallUserActionRequired mDialogData; @NonNull private InstallActionListener mInstallActionListener; private InstallActionListener mInstallActionListener; @NonNull private AlertDialog mDialog; public ExternalSourcesBlockedFragment(InstallUserActionRequired dialogData) { public ExternalSourcesBlockedFragment(InstallUserActionRequired dialogData) { mDialogData = dialogData; mDialogData = dialogData; Loading @@ -51,7 +55,7 @@ public class ExternalSourcesBlockedFragment extends DialogFragment { @NonNull @NonNull @Override @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { return new AlertDialog.Builder(requireContext()) mDialog = new AlertDialog.Builder(requireContext()) .setTitle(mDialogData.getAppLabel()) .setTitle(mDialogData.getAppLabel()) .setIcon(mDialogData.getAppIcon()) .setIcon(mDialogData.getAppIcon()) .setMessage(R.string.untrusted_external_source_warning) .setMessage(R.string.untrusted_external_source_warning) Loading @@ -62,6 +66,7 @@ public class ExternalSourcesBlockedFragment extends DialogFragment { (dialog, which) -> mInstallActionListener.onNegativeResponse( (dialog, which) -> mInstallActionListener.onNegativeResponse( mDialogData.getStageCode())) mDialogData.getStageCode())) .create(); .create(); return mDialog; } } @Override @Override Loading @@ -69,4 +74,24 @@ public class ExternalSourcesBlockedFragment extends DialogFragment { super.onCancel(dialog); super.onCancel(dialog); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); } } @Override public void onStart() { super.onStart(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setFilterTouchesWhenObscured(true); } @Override public void onPause() { super.onPause(); // This prevents tapjacking since an overlay activity started in front of Pia will // cause Pia to be paused. mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false); } @Override public void onResume() { super.onResume(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(true); } } }
packages/PackageInstaller/src/com/android/packageinstaller/v2/ui/fragments/InstallConfirmationFragment.java +24 −2 Original line number Original line Diff line number Diff line Loading @@ -42,6 +42,8 @@ public class InstallConfirmationFragment extends DialogFragment { private final InstallUserActionRequired mDialogData; private final InstallUserActionRequired mDialogData; @NonNull @NonNull private InstallActionListener mInstallActionListener; private InstallActionListener mInstallActionListener; @NonNull private AlertDialog mDialog; public InstallConfirmationFragment(@NonNull InstallUserActionRequired dialogData) { public InstallConfirmationFragment(@NonNull InstallUserActionRequired dialogData) { mDialogData = dialogData; mDialogData = dialogData; Loading @@ -58,7 +60,7 @@ public class InstallConfirmationFragment extends DialogFragment { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { View dialogView = getLayoutInflater().inflate(R.layout.install_content_view, null); View dialogView = getLayoutInflater().inflate(R.layout.install_content_view, null); AlertDialog dialog = new AlertDialog.Builder(requireContext()) mDialog = new AlertDialog.Builder(requireContext()) .setIcon(mDialogData.getAppIcon()) .setIcon(mDialogData.getAppIcon()) .setTitle(mDialogData.getAppLabel()) .setTitle(mDialogData.getAppLabel()) .setView(dialogView) .setView(dialogView) Loading @@ -84,7 +86,7 @@ public class InstallConfirmationFragment extends DialogFragment { } } viewToEnable.setVisibility(View.VISIBLE); viewToEnable.setVisibility(View.VISIBLE); return dialog; return mDialog; } } @Override @Override Loading @@ -92,4 +94,24 @@ public class InstallConfirmationFragment extends DialogFragment { super.onCancel(dialog); super.onCancel(dialog); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); mInstallActionListener.onNegativeResponse(mDialogData.getStageCode()); } } @Override public void onStart() { super.onStart(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setFilterTouchesWhenObscured(true); } @Override public void onPause() { super.onPause(); // This prevents tapjacking since an overlay activity started in front of Pia will // cause Pia to be paused. mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false); } @Override public void onResume() { super.onResume(); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(true); } } }