Loading quickstep/src/com/android/launcher3/proxy/ProxyActivityStarter.java +24 −5 Original line number Diff line number Diff line Loading @@ -53,13 +53,10 @@ public class ProxyActivityStarter extends Activity { try { if (mParams.intent != null) { startActivityForResult(mParams.intent, mParams.requestCode, mParams.options); startActivity(); return; } else if (mParams.intentSender != null) { startIntentSenderForResult(mParams.intentSender, mParams.requestCode, mParams.fillInIntent, mParams.flagsMask, mParams.flagsValues, mParams.extraFlags, mParams.options); startIntentSender(); return; } } catch (NullPointerException | ActivityNotFoundException | SecurityException Loading @@ -83,4 +80,26 @@ public class ProxyActivityStarter extends Activity { .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED | Intent.FLAG_ACTIVITY_CLEAR_TASK); } private void startActivity() throws SendIntentException { if (mParams.requireActivityResult) { startActivityForResult(mParams.intent, mParams.requestCode, mParams.options); } else { startActivity(mParams.intent, mParams.options); finishAndRemoveTask(); } } private void startIntentSender() throws SendIntentException { if (mParams.requireActivityResult) { startIntentSenderForResult(mParams.intentSender, mParams.requestCode, mParams.fillInIntent, mParams.flagsMask, mParams.flagsValues, mParams.extraFlags, mParams.options); } else { startIntentSender(mParams.intentSender, mParams.fillInIntent, mParams.flagsMask, mParams.flagsValues, mParams.extraFlags, mParams.options); finishAndRemoveTask(); } } } quickstep/src/com/android/launcher3/uioverrides/ApiWrapper.java +5 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,11 @@ public class ApiWrapper { || Flags.enablePrivateSpaceInstallShortcut())) { StartActivityParams params = new StartActivityParams((PendingIntent) null, 0); params.intentSender = launcherApps.getAppMarketActivityIntent(packageName, user); ActivityOptions options = ActivityOptions.makeBasic() .setPendingIntentBackgroundActivityStartMode(ActivityOptions .MODE_BACKGROUND_ACTIVITY_START_ALLOWED); params.options = options.toBundle(); params.requireActivityResult = false; return ProxyActivityStarter.getLaunchIntent(context, params); } else { return new Intent(Intent.ACTION_VIEW) Loading src/com/android/launcher3/util/StartActivityParams.java +3 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ public class StartActivityParams implements Parcelable { public int flagsValues; public int extraFlags; public Bundle options; public boolean requireActivityResult = true; public StartActivityParams(Activity activity, int requestCode) { this(activity.createPendingResult(requestCode, new Intent(), Loading @@ -74,6 +75,7 @@ public class StartActivityParams implements Parcelable { flagsValues = parcel.readInt(); extraFlags = parcel.readInt(); options = parcel.readBundle(); requireActivityResult = parcel.readInt() != 0; } Loading @@ -94,6 +96,7 @@ public class StartActivityParams implements Parcelable { parcel.writeInt(flagsValues); parcel.writeInt(extraFlags); parcel.writeBundle(options); parcel.writeInt(requireActivityResult ? 1 : 0); } /** Perform the operation on the pendingIntent. */ Loading Loading
quickstep/src/com/android/launcher3/proxy/ProxyActivityStarter.java +24 −5 Original line number Diff line number Diff line Loading @@ -53,13 +53,10 @@ public class ProxyActivityStarter extends Activity { try { if (mParams.intent != null) { startActivityForResult(mParams.intent, mParams.requestCode, mParams.options); startActivity(); return; } else if (mParams.intentSender != null) { startIntentSenderForResult(mParams.intentSender, mParams.requestCode, mParams.fillInIntent, mParams.flagsMask, mParams.flagsValues, mParams.extraFlags, mParams.options); startIntentSender(); return; } } catch (NullPointerException | ActivityNotFoundException | SecurityException Loading @@ -83,4 +80,26 @@ public class ProxyActivityStarter extends Activity { .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED | Intent.FLAG_ACTIVITY_CLEAR_TASK); } private void startActivity() throws SendIntentException { if (mParams.requireActivityResult) { startActivityForResult(mParams.intent, mParams.requestCode, mParams.options); } else { startActivity(mParams.intent, mParams.options); finishAndRemoveTask(); } } private void startIntentSender() throws SendIntentException { if (mParams.requireActivityResult) { startIntentSenderForResult(mParams.intentSender, mParams.requestCode, mParams.fillInIntent, mParams.flagsMask, mParams.flagsValues, mParams.extraFlags, mParams.options); } else { startIntentSender(mParams.intentSender, mParams.fillInIntent, mParams.flagsMask, mParams.flagsValues, mParams.extraFlags, mParams.options); finishAndRemoveTask(); } } }
quickstep/src/com/android/launcher3/uioverrides/ApiWrapper.java +5 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,11 @@ public class ApiWrapper { || Flags.enablePrivateSpaceInstallShortcut())) { StartActivityParams params = new StartActivityParams((PendingIntent) null, 0); params.intentSender = launcherApps.getAppMarketActivityIntent(packageName, user); ActivityOptions options = ActivityOptions.makeBasic() .setPendingIntentBackgroundActivityStartMode(ActivityOptions .MODE_BACKGROUND_ACTIVITY_START_ALLOWED); params.options = options.toBundle(); params.requireActivityResult = false; return ProxyActivityStarter.getLaunchIntent(context, params); } else { return new Intent(Intent.ACTION_VIEW) Loading
src/com/android/launcher3/util/StartActivityParams.java +3 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ public class StartActivityParams implements Parcelable { public int flagsValues; public int extraFlags; public Bundle options; public boolean requireActivityResult = true; public StartActivityParams(Activity activity, int requestCode) { this(activity.createPendingResult(requestCode, new Intent(), Loading @@ -74,6 +75,7 @@ public class StartActivityParams implements Parcelable { flagsValues = parcel.readInt(); extraFlags = parcel.readInt(); options = parcel.readBundle(); requireActivityResult = parcel.readInt() != 0; } Loading @@ -94,6 +96,7 @@ public class StartActivityParams implements Parcelable { parcel.writeInt(flagsValues); parcel.writeInt(extraFlags); parcel.writeBundle(options); parcel.writeInt(requireActivityResult ? 1 : 0); } /** Perform the operation on the pendingIntent. */ Loading