From e39d98bdb3d0a735fced80df36bee39c08ee398b Mon Sep 17 00:00:00 2001 From: cretin45 Date: Fri, 30 Jan 2015 10:52:47 -0800 Subject: [PATCH] SetupWizard. Let each page optionally handle deferred actions on finish Change-Id: I040d8dd472cc73ee034b3dbe8177a5b2e3314918 --- .../cyanogenmod/setupwizard/setup/AbstractSetupData.java | 6 ++++++ src/com/cyanogenmod/setupwizard/setup/Page.java | 1 + src/com/cyanogenmod/setupwizard/setup/SetupPage.java | 3 +++ 3 files changed, 10 insertions(+) diff --git a/src/com/cyanogenmod/setupwizard/setup/AbstractSetupData.java b/src/com/cyanogenmod/setupwizard/setup/AbstractSetupData.java index e0e3faf..184afba 100644 --- a/src/com/cyanogenmod/setupwizard/setup/AbstractSetupData.java +++ b/src/com/cyanogenmod/setupwizard/setup/AbstractSetupData.java @@ -133,6 +133,12 @@ public abstract class AbstractSetupData extends BroadcastReceiver implements Set } } + public void finishPages() { + for (Page page : mPageList.values()) { + page.onFinishSetup(); + } + } + public Bundle save() { Bundle bundle = new Bundle(); for (Page page : mPageList.values()) { diff --git a/src/com/cyanogenmod/setupwizard/setup/Page.java b/src/com/cyanogenmod/setupwizard/setup/Page.java index dbdb56f..18d7e39 100644 --- a/src/com/cyanogenmod/setupwizard/setup/Page.java +++ b/src/com/cyanogenmod/setupwizard/setup/Page.java @@ -44,6 +44,7 @@ public interface Page { public boolean doPreviousAction(); public boolean doNextAction(); public void doLoadAction(Activity context, int action); + public void onFinishSetup(); public boolean onActivityResult(int requestCode, int resultCode, Intent data); public SetupDataCallbacks getCallbacks(); } diff --git a/src/com/cyanogenmod/setupwizard/setup/SetupPage.java b/src/com/cyanogenmod/setupwizard/setup/SetupPage.java index bb9ecd4..4479ab4 100644 --- a/src/com/cyanogenmod/setupwizard/setup/SetupPage.java +++ b/src/com/cyanogenmod/setupwizard/setup/SetupPage.java @@ -69,6 +69,9 @@ public abstract class SetupPage implements Page { return false; } + @Override + public void onFinishSetup() {} + @Override public void doLoadAction(Activity context, int action) { if (context == null || context.isFinishing()) { return; }