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

Commit 523ab845 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Don't report data stall for disconnected DataNetwork" into tm-dev am: 70e86662

parents eb24c0b0 70e86662
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -2587,8 +2587,18 @@ public class DataNetworkController extends Handler {
            return;
        }

        // TODO: Add DataConfigManager.isRecoveryOnBadNetworkEnabled()
        if (!mDataSettingsManager.isRecoveryOnBadNetworkEnabled()) {
            log("Ignore data network validation status changed becaused"
                    + "data stall recovery is disabled.");
            return;
        }

        if (dataNetwork.isInternetSupported()) {
            if (status == NetworkAgent.VALIDATION_STATUS_NOT_VALID
                    && (dataNetwork.getCurrentState() == null || dataNetwork.isDisconnected())) {
                log("Ignoring invalid validation status for disconnected DataNetwork");
                return;
            }
            mDataNetworkControllerCallbacks.forEach(callback -> callback.invokeFromExecutor(
                    () -> callback.onInternetDataNetworkValidationStatusChanged(status)));
        }
+11 −0
Original line number Diff line number Diff line
@@ -564,6 +564,15 @@ public class DataSettingsManager extends Handler {
        return mDataEnabledOverride.isDataAllowedInVoiceCall();
    }

    /**
     * Check whether data stall recovery on bad network is enabled.
     * @return {@code true} if data stall recovery is enabled and {@code false} otherwise.
     */
    public boolean isRecoveryOnBadNetworkEnabled() {
        return Settings.Global.getInt(mResolver,
                Settings.Global.DATA_STALL_RECOVERY_ON_BAD_NETWORK, 1) == 1;
    }

    private void notifyDataEnabledChanged(boolean enabled,
            @TelephonyManager.DataEnabledChangedReason int reason) {
        logl("notifyDataEnabledChanged: enabled=" + enabled + ", reason="
@@ -669,6 +678,8 @@ public class DataSettingsManager extends Handler {
        pw.println("device_provisioned=" + Settings.Global.getInt(
                mResolver, Settings.Global.DEVICE_PROVISIONED, 0));
        pw.println("isProvisioningDataEnabled=" + isProvisioningDataEnabled());
        pw.println("data_stall_recovery_on_bad_network=" + Settings.Global.getInt(
                mResolver, Settings.Global.DATA_STALL_RECOVERY_ON_BAD_NETWORK, 1));
        pw.println("mDataEnabledSettings=" + mDataEnabledSettings.entrySet().stream()
                .map(entry ->
                        dataEnabledChangedReasonToString(entry.getKey()) + "=" + entry.getValue())