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

Commit 7a359404 authored by Tyler Gunn's avatar Tyler Gunn Committed by Automerger Merge Worker
Browse files

DO NOT MERGE Add helper method in phone to get new carrier config key. am: e0aee3c0

parents c3763d4d e0aee3c0
Loading
Loading
Loading
Loading
+22 −0
Original line number Diff line number Diff line
@@ -714,6 +714,28 @@ public abstract class Phone extends Handler implements PhoneInternalInterface {
                CarrierConfigManager.KEY_PREVENT_CLIR_ACTIVATION_AND_DEACTIVATION_CODE_BOOL);
    }

    /**
     * Determines if the carrier prefers to use an in service sim for a normal routed emergency
     * call.
     * @return true when carrier config
     * {@link CarrierConfigManager#KEY_PREFER_IN_SERVICE_SIM_FOR_NORMAL_ROUTED_EMERGENCY_CALLS_BOOL}
     * is true.
     */
    public boolean shouldPreferInServiceSimForNormalRoutedEmergencyCall() {
        CarrierConfigManager configManager = (CarrierConfigManager)
                getContext().getSystemService(Context.CARRIER_CONFIG_SERVICE);
        PersistableBundle b = configManager.getConfigForSubId(getSubId(), CarrierConfigManager
                .KEY_PREFER_IN_SERVICE_SIM_FOR_NORMAL_ROUTED_EMERGENCY_CALLS_BOOL);
        if (b != null) {
            return b.getBoolean(CarrierConfigManager
                            .KEY_PREFER_IN_SERVICE_SIM_FOR_NORMAL_ROUTED_EMERGENCY_CALLS_BOOL,
                    false);
        } else {
            // Default value set in CarrierConfigManager
            return false;
        }
    }

    /**
     * When overridden the derived class needs to call
     * super.handleMessage(msg) so this method has a
+17 −0
Original line number Diff line number Diff line
@@ -934,6 +934,23 @@ public class EmergencyNumberTracker extends Handler {
        return null;
    }

    /**
     * Get a list of the {@link EmergencyNumber}s that have the corresponding emergency number.
     * Note: {@link #getEmergencyNumber(String)} assumes there is ONLY one record for a phone number
     * when in reality there CAN be multiple instances if the same number is reported by the radio
     * for a specific mcc and the emergency number database specifies the number without an mcc
     * specified.
     *
     * @param emergencyNumber the emergency number to find.
     * @return the list of emergency numbers matching.
     */
    public List<EmergencyNumber> getEmergencyNumbers(String emergencyNumber) {
        final String toFind = PhoneNumberUtils.stripSeparators(emergencyNumber);
        return getEmergencyNumberList().stream()
                .filter(num -> num.getNumber().equals(toFind))
                .toList();
    }

    /**
     * Get the emergency service categories for the corresponding emergency number. The only
     * trusted sources for the categories are the