Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f481da98 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Remove extra messages in DataSettingsManager"

parents 5e0b00cf 8d5b5dda
Loading
Loading
Loading
Loading
+41 −78
Original line number Diff line number Diff line
@@ -65,28 +65,18 @@ public class DataSettingsManager extends Handler {
    private static final int EVENT_SUBSCRIPTIONS_CHANGED = 4;
    /** Event for set data enabled for reason. */
    private static final int EVENT_SET_DATA_ENABLED_FOR_REASON = 5;
    /** Event for set user data enabled. */
    private static final int EVENT_SET_USER_DATA_ENABLED = 6;
    /** Event for set policy data enabled. */
    private static final int EVENT_SET_POLICY_DATA_ENABLED = 7;
    /** Event for set carrier data enabled. */
    private static final int EVENT_SET_CARRIER_DATA_ENABLED = 8;
    /** Event for set thermal data enabled. */
    private static final int EVENT_SET_THERMAL_DATA_ENABLED = 9;
    /** Event for set data roaming enabled. */
    private static final int EVENT_SET_DATA_ROAMING_ENABLED = 10;
    private static final int EVENT_SET_DATA_ROAMING_ENABLED = 6;
    /** Event for set always allow MMS data. */
    private static final int EVENT_SET_ALWAYS_ALLOW_MMS_DATA = 11;
    private static final int EVENT_SET_ALWAYS_ALLOW_MMS_DATA = 7;
    /** Event for set allow data during voice call. */
    private static final int EVENT_SET_ALLOW_DATA_DURING_VOICE_CALL = 12;
    /** Event for update data enabled. */
    private static final int EVENT_UPDATE_DATA_ENABLED = 13;
    private static final int EVENT_SET_ALLOW_DATA_DURING_VOICE_CALL = 8;
    /** Event for device provisioned changed. */
    private static final int EVENT_PROVISIONED_CHANGED = 14;
    private static final int EVENT_PROVISIONED_CHANGED = 9;
    /** Event for provisioning data enabled setting changed. */
    private static final int EVENT_PROVISIONING_DATA_ENABLED_CHANGED = 15;
    private static final int EVENT_PROVISIONING_DATA_ENABLED_CHANGED = 10;
    /** Event for registering all events. */
    private static final int EVENT_REGISTER_ALL_EVENTS = 16;
    private static final int EVENT_REGISTER_ALL_EVENTS = 11;

    private final Phone mPhone;
    private final ContentResolver mResolver;
@@ -217,54 +207,6 @@ public class DataSettingsManager extends Handler {
                }
                break;
            }
            case EVENT_SET_USER_DATA_ENABLED: {
                boolean enabled = (boolean) msg.obj;
                // Can't disable data for stand alone opportunistic subscription.
                if (isStandAloneOpportunistic(mSubId, mPhone.getContext()) && !enabled) return;
                boolean changed = GlobalSettingsHelper.setInt(mPhone.getContext(),
                        Settings.Global.MOBILE_DATA, mSubId, (enabled ? 1 : 0));
                log("Set user data enabled to " + enabled + ", changed=" + changed);
                if (changed) {
                    logl("UserDataEnabled changed to " + enabled);
                    mPhone.notifyUserMobileDataStateChanged(enabled);
                    updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_USER);
                    // TODO: MultiSimSettingController should register the callback instead of let
                    //   DataSettingsManager directly feed information to it.
                    //   Also revisit if sub id is really needed.
                    MultiSimSettingController.getInstance().notifyUserDataEnabled(mSubId, enabled);
                }
                break;
            }
            case EVENT_SET_POLICY_DATA_ENABLED: {
                boolean enabled = (boolean) msg.obj;
                if (mDataEnabledSettings.get(TelephonyManager.DATA_ENABLED_REASON_POLICY)
                        != enabled) {
                    logl("PolicyDataEnabled changed to " + enabled);
                    mDataEnabledSettings.put(TelephonyManager.DATA_ENABLED_REASON_POLICY, enabled);
                    updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_POLICY);
                }
                break;
            }
            case EVENT_SET_CARRIER_DATA_ENABLED: {
                boolean enabled = (boolean) msg.obj;
                if (mDataEnabledSettings.get(TelephonyManager.DATA_ENABLED_REASON_CARRIER)
                        != enabled) {
                    logl("CarrierDataEnabled changed to " + enabled);
                    mDataEnabledSettings.put(TelephonyManager.DATA_ENABLED_REASON_CARRIER, enabled);
                    updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_CARRIER);
                }
                break;
            }
            case EVENT_SET_THERMAL_DATA_ENABLED: {
                boolean enabled = (boolean) msg.obj;
                if (mDataEnabledSettings.get(TelephonyManager.DATA_ENABLED_REASON_THERMAL)
                        != enabled) {
                    logl("ThermalDataEnabled changed to " + enabled);
                    mDataEnabledSettings.put(TelephonyManager.DATA_ENABLED_REASON_THERMAL, enabled);
                    updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_THERMAL);
                }
                break;
            }
            case EVENT_SET_DATA_ROAMING_ENABLED: {
                boolean enabled = (boolean) msg.obj;
                // Will trigger handleDataOnRoamingChange() through observer
@@ -305,15 +247,6 @@ public class DataSettingsManager extends Handler {
                }
                break;
            }
            case EVENT_UPDATE_DATA_ENABLED: {
                boolean prevDataEnabled = mIsDataEnabled;
                mIsDataEnabled = isDataEnabled(ApnSetting.TYPE_ALL);
                log("mIsDataEnabled=" + mIsDataEnabled + ", prevDataEnabled=" + prevDataEnabled);
                if (prevDataEnabled != mIsDataEnabled) {
                    notifyDataEnabledChanged(mIsDataEnabled, (int) msg.obj);
                }
                break;
            }
            case EVENT_PROVISIONED_CHANGED: {
                updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_UNKNOWN);
                break;
@@ -384,7 +317,12 @@ public class DataSettingsManager extends Handler {
    }

    private void updateDataEnabledAndNotify(@TelephonyManager.DataEnabledChangedReason int reason) {
        obtainMessage(EVENT_UPDATE_DATA_ENABLED, reason).sendToTarget();
        boolean prevDataEnabled = mIsDataEnabled;
        mIsDataEnabled = isDataEnabled(ApnSetting.TYPE_ALL);
        log("mIsDataEnabled=" + mIsDataEnabled + ", prevDataEnabled=" + prevDataEnabled);
        if (prevDataEnabled != mIsDataEnabled) {
            notifyDataEnabledChanged(mIsDataEnabled, reason);
        }
    }

    /**
@@ -448,7 +386,20 @@ public class DataSettingsManager extends Handler {
     * @param enabled {@code true} to enable user data and {@code false} to disable.
     */
    private void setUserDataEnabled(boolean enabled) {
        obtainMessage(EVENT_SET_USER_DATA_ENABLED, enabled).sendToTarget();
        // Can't disable data for stand alone opportunistic subscription.
        if (isStandAloneOpportunistic(mSubId, mPhone.getContext()) && !enabled) return;
        boolean changed = GlobalSettingsHelper.setInt(mPhone.getContext(),
                Settings.Global.MOBILE_DATA, mSubId, (enabled ? 1 : 0));
        log("Set user data enabled to " + enabled + ", changed=" + changed);
        if (changed) {
            logl("UserDataEnabled changed to " + enabled);
            mPhone.notifyUserMobileDataStateChanged(enabled);
            updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_USER);
            // TODO: MultiSimSettingController should register the callback instead of let
            //   DataSettingsManager directly feed information to it.
            //   Also revisit if sub id is really needed.
            MultiSimSettingController.getInstance().notifyUserDataEnabled(mSubId, enabled);
        }
    }

    /**
@@ -474,7 +425,11 @@ public class DataSettingsManager extends Handler {
     * @param enabled {@code true} to enable policy data and {@code false} to disable.
     */
    private void setPolicyDataEnabled(boolean enabled) {
        obtainMessage(EVENT_SET_POLICY_DATA_ENABLED, enabled).sendToTarget();
        if (mDataEnabledSettings.get(TelephonyManager.DATA_ENABLED_REASON_POLICY) != enabled) {
            logl("PolicyDataEnabled changed to " + enabled);
            mDataEnabledSettings.put(TelephonyManager.DATA_ENABLED_REASON_POLICY, enabled);
            updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_POLICY);
        }
    }

    /**
@@ -482,7 +437,11 @@ public class DataSettingsManager extends Handler {
     * @param enabled {@code true} to enable carrier data and {@code false} to disable.
     */
    private void setCarrierDataEnabled(boolean enabled) {
        obtainMessage(EVENT_SET_CARRIER_DATA_ENABLED, enabled).sendToTarget();
        if (mDataEnabledSettings.get(TelephonyManager.DATA_ENABLED_REASON_CARRIER) != enabled) {
            logl("CarrierDataEnabled changed to " + enabled);
            mDataEnabledSettings.put(TelephonyManager.DATA_ENABLED_REASON_CARRIER, enabled);
            updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_CARRIER);
        }
    }

    /**
@@ -490,7 +449,11 @@ public class DataSettingsManager extends Handler {
     * @param enabled {@code true} to enable thermal data and {@code false} to disable.
     */
    private void setThermalDataEnabled(boolean enabled) {
        obtainMessage(EVENT_SET_THERMAL_DATA_ENABLED, enabled).sendToTarget();
        if (mDataEnabledSettings.get(TelephonyManager.DATA_ENABLED_REASON_THERMAL) != enabled) {
            logl("ThermalDataEnabled changed to " + enabled);
            mDataEnabledSettings.put(TelephonyManager.DATA_ENABLED_REASON_THERMAL, enabled);
            updateDataEnabledAndNotify(TelephonyManager.DATA_ENABLED_REASON_THERMAL);
        }
    }

    /**