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

Commit ae3efa53 authored by David Brown's avatar David Brown
Browse files

Move the "voice_capable" resource into the framework.

There's currently a config.xml param in the phone app saying whether the
current device is "voice capable", which is used to determine (among other
things) whether the OTASP call should run in interactive mode.

But both Contacts and Settings are about to need this flag too, so it
really belongs in the framework instead.  As of this change it's now
"com.android.internal.R.bool.voice_capable".

Also add a corresponding TelephonyManager call so that unbundled and 3rd
party apps can access it too.

Change-Id: Ie9a8803295bf97eb32154291aac8fce1e21c7b25
parent 8902abb7
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -377,4 +377,17 @@
    <!-- 2 means give warning -->
    <integer name="config_datause_notification_type">2</integer>

    <!-- Flag indicating whether the current device is "voice capable".
         If true, this means that the device supports circuit-switched
         (i.e. voice) phone calls over the telephony network, and is
         allowed to display the in-call UI while a cellular voice call is
         active.  This can be overridden to false for "data only" devices
         which can't make voice calls and don't support any in-call UI.

         Note: this flag is subtly different from the
         PackageManager.FEATURE_TELEPHONY system feature, which is
         available on *any* device with a telephony radio, even if the
         device is data-only. -->
    <bool name="config_voice_capable">true</bool>

</resources>
+21 −0
Original line number Diff line number Diff line
@@ -912,4 +912,25 @@ public class TelephonyManager {
            return null;
        }
    }

    /**
     * @return true if the current device is "voice capable".
     * <p>
     * "Voice capable" means that this device supports circuit-switched
     * (i.e. voice) phone calls over the telephony network, and is allowed
     * to display the in-call UI while a cellular voice call is active.
     * This will be false on "data only" devices which can't make voice
     * calls and don't support any in-call UI.
     * <p>
     * Note: the meaning of this flag is subtly different from the
     * PackageManager.FEATURE_TELEPHONY system feature, which is available
     * on any device with a telephony radio, even if the device is
     * data-only.
     *
     * @hide pending API review
     */
    public boolean isVoiceCapable() {
        return mContext.getResources().getBoolean(
                com.android.internal.R.bool.config_voice_capable);
    }
}