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

Commit 11518405 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "Add Dual Transfer Mode support."

parents e80d894b 8be479ba
Loading
Loading
Loading
Loading
+12 −2
Original line number Original line Diff line number Diff line
@@ -642,6 +642,7 @@ public class GsmServiceStateTracker extends ServiceStateTracker {
                    int regState = ServiceState.RIL_REG_STATE_UNKNOWN;
                    int regState = ServiceState.RIL_REG_STATE_UNKNOWN;
                    int reasonRegStateDenied = -1;
                    int reasonRegStateDenied = -1;
                    int psc = -1;
                    int psc = -1;
                    int cssIndicator = 0;
                    if (states.length > 0) {
                    if (states.length > 0) {
                        try {
                        try {
                            regState = Integer.parseInt(states[0]);
                            regState = Integer.parseInt(states[0]);
@@ -658,6 +659,9 @@ public class GsmServiceStateTracker extends ServiceStateTracker {
                                    type = Integer.parseInt(states[3]);
                                    type = Integer.parseInt(states[3]);
                                }
                                }
                            }
                            }
                            if (states.length >= 7 && (states[7] != null)) {
                                cssIndicator = Integer.parseInt(states[7]);
                            }
                            if (states.length > 14) {
                            if (states.length > 14) {
                                if (states[14] != null && states[14].length() > 0) {
                                if (states[14] != null && states[14].length() > 0) {
                                    psc = Integer.parseInt(states[14], 16);
                                    psc = Integer.parseInt(states[14], 16);
@@ -671,6 +675,7 @@ public class GsmServiceStateTracker extends ServiceStateTracker {
                    mGsmRoaming = regCodeIsRoaming(regState);
                    mGsmRoaming = regCodeIsRoaming(regState);
                    mNewSS.setState(regCodeToServiceState(regState));
                    mNewSS.setState(regCodeToServiceState(regState));
                    mNewSS.setRilVoiceRadioTechnology(type);
                    mNewSS.setRilVoiceRadioTechnology(type);
                    mNewSS.setCssIndicator(cssIndicator);


                    if ((regState == ServiceState.RIL_REG_STATE_DENIED
                    if ((regState == ServiceState.RIL_REG_STATE_DENIED
                            || regState == ServiceState.RIL_REG_STATE_DENIED_EMERGENCY_CALL_ENABLED)
                            || regState == ServiceState.RIL_REG_STATE_DENIED_EMERGENCY_CALL_ENABLED)
@@ -1457,11 +1462,16 @@ public class GsmServiceStateTracker extends ServiceStateTracker {


    /**
    /**
     * @return true if phone is camping on a technology (eg UMTS)
     * @return true if phone is camping on a technology (eg UMTS)
     * that could support voice and data simultaneously.
     * that could support voice and data simultaneously or
     * concurrent services support indicator is set to '1'.
     */
     */
    @Override
    @Override
    public boolean isConcurrentVoiceAndDataAllowed() {
    public boolean isConcurrentVoiceAndDataAllowed() {
        return (mSS.getRilDataRadioTechnology() >= ServiceState.RIL_RADIO_TECHNOLOGY_UMTS);
        if (mSS.getRilDataRadioTechnology() >= ServiceState.RIL_RADIO_TECHNOLOGY_UMTS) {
            return true;
        } else {
            return mSS.getCssIndicator() == 1;
        }
    }
    }


    /**
    /**