Refactor activity decorations and transitions
Reuse some code, and prevent the need to have to apply transitions in multiple places. Change-Id: I5319e49136d6d05de3eb03eff8dae0f3560e509a
This commit is contained in:
@@ -43,6 +43,7 @@ public abstract class BaseSetupWizardActivity extends AppCompatActivity implemen
|
||||
NavigationBarListener {
|
||||
|
||||
public static final String TAG = BaseSetupWizardActivity.class.getSimpleName();
|
||||
public static final int DEFAULT_TRANSITION = TransitionHelper.TRANSITION_FADE_THROUGH;
|
||||
|
||||
private NavigationLayout mNavigationBar;
|
||||
|
||||
@@ -68,10 +69,10 @@ public abstract class BaseSetupWizardActivity extends AppCompatActivity implemen
|
||||
Log.v(TAG, "handleOnBackPressed()");
|
||||
}
|
||||
finishAction(RESULT_CANCELED, new Intent().putExtra("onBackPressed", true));
|
||||
TransitionHelper.applyBackwardTransition(BaseSetupWizardActivity.this,
|
||||
TransitionHelper.TRANSITION_FADE_THROUGH, true);
|
||||
}
|
||||
});
|
||||
// Apply default transition, to take effect whenever leaving this activity.
|
||||
applyForwardTransition();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -229,10 +230,12 @@ public abstract class BaseSetupWizardActivity extends AppCompatActivity implemen
|
||||
protected final void finishAction(int resultCode, Intent data) {
|
||||
if (resultCode != RESULT_CANCELED) {
|
||||
nextAction(resultCode, data);
|
||||
finish();
|
||||
} else {
|
||||
setResult(resultCode, data);
|
||||
finish();
|
||||
applyBackwardTransition();
|
||||
}
|
||||
finish();
|
||||
}
|
||||
|
||||
public final void nextAction(int resultCode) {
|
||||
@@ -252,23 +255,21 @@ public abstract class BaseSetupWizardActivity extends AppCompatActivity implemen
|
||||
startActivityForResult(intent);
|
||||
}
|
||||
|
||||
/** Adorn the Intent with Setup Wizard-related extras. */
|
||||
protected Intent decorateIntent(Intent intent) {
|
||||
return intent
|
||||
.putExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, isFirstRun())
|
||||
.putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true)
|
||||
.putExtra(WizardManagerHelper.EXTRA_THEME, ThemeHelper.THEME_GLIF_V4);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void startActivity(Intent intent) {
|
||||
intent.putExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, isFirstRun());
|
||||
intent.putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true);
|
||||
intent.putExtra(WizardManagerHelper.EXTRA_THEME, ThemeHelper.THEME_GLIF_V4);
|
||||
super.startActivity(intent);
|
||||
TransitionHelper.applyForwardTransition(this,
|
||||
TransitionHelper.TRANSITION_FADE_THROUGH, true);
|
||||
super.startActivity(decorateIntent(intent));
|
||||
}
|
||||
|
||||
protected final void startActivityForResult(@NonNull Intent intent) {
|
||||
intent.putExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, isFirstRun());
|
||||
intent.putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true);
|
||||
intent.putExtra(WizardManagerHelper.EXTRA_THEME, ThemeHelper.THEME_GLIF_V4);
|
||||
activityResultLauncher.launch(intent);
|
||||
TransitionHelper.applyForwardTransition(this,
|
||||
TransitionHelper.TRANSITION_FADE_THROUGH, true);
|
||||
activityResultLauncher.launch(decorateIntent(intent));
|
||||
}
|
||||
|
||||
protected void onActivityResult(ActivityResult activityResult) {
|
||||
@@ -330,4 +331,13 @@ public abstract class BaseSetupWizardActivity extends AppCompatActivity implemen
|
||||
protected int getIconResId() {
|
||||
return -1;
|
||||
}
|
||||
|
||||
protected void applyForwardTransition() {
|
||||
TransitionHelper.applyForwardTransition(this, DEFAULT_TRANSITION, true);
|
||||
}
|
||||
|
||||
protected void applyBackwardTransition() {
|
||||
TransitionHelper.applyBackwardTransition(BaseSetupWizardActivity.this,
|
||||
DEFAULT_TRANSITION, true);
|
||||
}
|
||||
}
|
||||
|
@@ -13,8 +13,6 @@ import android.content.Intent;
|
||||
|
||||
import androidx.activity.result.ActivityResult;
|
||||
|
||||
import com.google.android.setupdesign.transition.TransitionHelper;
|
||||
|
||||
import org.lineageos.setupwizard.util.SetupWizardUtils;
|
||||
|
||||
public class SimMissingActivity extends SubBaseActivity {
|
||||
@@ -42,8 +40,6 @@ public class SimMissingActivity extends SubBaseActivity {
|
||||
} else {
|
||||
finishAction(RESULT_CANCELED, data);
|
||||
}
|
||||
TransitionHelper.applyBackwardTransition(this,
|
||||
TransitionHelper.TRANSITION_FADE_THROUGH, true);
|
||||
} else if (!SetupWizardUtils.simMissing(this)) {
|
||||
nextAction(RESULT_OK);
|
||||
}
|
||||
|
@@ -19,8 +19,6 @@ import android.util.Log;
|
||||
|
||||
import androidx.activity.result.ActivityResult;
|
||||
|
||||
import com.google.android.setupdesign.transition.TransitionHelper;
|
||||
|
||||
public abstract class SubBaseActivity extends BaseSetupWizardActivity {
|
||||
|
||||
public static final String TAG = SubBaseActivity.class.getSimpleName();
|
||||
@@ -82,8 +80,6 @@ public abstract class SubBaseActivity extends BaseSetupWizardActivity {
|
||||
finishAction(RESULT_ACTIVITY_NOT_FOUND);
|
||||
} else if (data != null && data.getBooleanExtra("onBackPressed", false)) {
|
||||
onStartSubactivity();
|
||||
TransitionHelper.applyBackwardTransition(this,
|
||||
TransitionHelper.TRANSITION_FADE_THROUGH, true);
|
||||
} else {
|
||||
finishAction(RESULT_CANCELED);
|
||||
}
|
||||
|
Reference in New Issue
Block a user