summaryrefslogtreecommitdiffstats
path: root/src/com/cyanogenmod
diff options
context:
space:
mode:
authorcretin45 <cretin45@gmail.com>2015-02-13 10:51:10 -0800
committercretin45 <cretin45@gmail.com>2015-02-13 10:51:10 -0800
commit16486aead0176916174b5234b2a73fb4a833ff7a (patch)
treee10c7c41589814e31dcf41bd36c794beaeff0496 /src/com/cyanogenmod
parent97fdf91ee844142ba6983d8b0deeb5f552dc5f58 (diff)
downloadpackages_apps_SetupWizard-16486aead0176916174b5234b2a73fb4a833ff7a.zip
packages_apps_SetupWizard-16486aead0176916174b5234b2a73fb4a833ff7a.tar.gz
packages_apps_SetupWizard-16486aead0176916174b5234b2a73fb4a833ff7a.tar.bz2
SetupWizard. Don't show account pages if no connectivity
Change-Id: I36e181f67e9fc0efef39cc58f7dc80bbbfd5b49d
Diffstat (limited to 'src/com/cyanogenmod')
-rw-r--r--src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java25
1 files changed, 23 insertions, 2 deletions
diff --git a/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java b/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java
index 7482762..3c8b5ad 100644
--- a/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java
+++ b/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java
@@ -19,6 +19,8 @@ package com.cyanogenmod.setupwizard.setup;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
+import android.net.ConnectivityManager;
+import android.net.NetworkInfo;
import android.telephony.TelephonyManager;
import com.android.internal.telephony.TelephonyIntents;
@@ -53,10 +55,10 @@ public class CMSetupWizardData extends AbstractSetupData {
.setHidden(!isSimInserted() || SetupWizardUtils.isMobileDataEnabled(mContext)));
}
if (SetupWizardUtils.hasGMS(mContext)) {
- pages.add(new GmsAccountPage(mContext, this));
+ pages.add(new GmsAccountPage(mContext, this).setHidden(true));
}
if (SetupWizardUtils.isOwner()) {
- pages.add(new CyanogenServicesPage(mContext, this));
+ pages.add(new CyanogenServicesPage(mContext, this).setHidden(true));
pages.add(new CyanogenSettingsPage(mContext, this));
pages.add(new OtherSettingsPage(mContext, this));
pages.add(new DateTimePage(mContext, this));
@@ -80,9 +82,13 @@ public class CMSetupWizardData extends AbstractSetupData {
simCardMissingPage.setHidden(isSimInserted());
}
showHideMobileDataPage();
+ } else if (intent.getAction()
+ .equals(ConnectivityManager.CONNECTIVITY_ACTION)) {
+ showHideAccountPages();
} else if (intent.getAction()
.equals(TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED)) {
showHideMobileDataPage();
+ showHideAccountPages();
} else if (intent.getAction().equals(Intent.ACTION_TIMEZONE_CHANGED) ||
intent.getAction().equals(TelephonyIntents.ACTION_NETWORK_SET_TIMEZONE)) {
mTimeZoneSet = true;
@@ -94,6 +100,20 @@ public class CMSetupWizardData extends AbstractSetupData {
}
}
+ private void showHideAccountPages() {
+ boolean isConnected = SetupWizardUtils.isNetworkConnected(mContext);
+ GmsAccountPage gmsAccountPage =
+ (GmsAccountPage) getPage(GmsAccountPage.TAG);
+ if (gmsAccountPage != null) {
+ gmsAccountPage.setHidden(!isConnected);
+ }
+ CyanogenServicesPage cyanogenServicesPage =
+ (CyanogenServicesPage) getPage(CyanogenServicesPage.TAG);
+ if (cyanogenServicesPage != null) {
+ cyanogenServicesPage.setHidden(!isConnected);
+ }
+ }
+
private void showHideMobileDataPage() {
MobileDataPage mobileDataPage =
(MobileDataPage) getPage(MobileDataPage.TAG);
@@ -116,6 +136,7 @@ public class CMSetupWizardData extends AbstractSetupData {
filter.addAction(TelephonyIntents.ACTION_SIM_STATE_CHANGED);
filter.addAction(TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED);
}
+ filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
filter.addAction(Intent.ACTION_TIMEZONE_CHANGED);
filter.addAction(Intent.ACTION_TIME_CHANGED);
filter.addAction(TelephonyIntents.ACTION_NETWORK_SET_TIME);