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

Commit 4a5e2744 authored by Eugene Susla's avatar Eugene Susla
Browse files

Enable sms role for OS with preconfigured system handler

(see attached bug for context)

Fixes: 132972702
Test: atest CtsRoleTestCases
Change-Id: I49b84a0a75dc0990b5e9c5354047811d197a3fb0
parent 7795a196
Loading
Loading
Loading
Loading
+9 −3
Original line number Original line Diff line number Diff line
@@ -51,7 +51,9 @@ public class SmsRoleBehavior implements RoleBehavior {
            return false;
            return false;
        }
        }
        TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
        TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
        if (!telephonyManager.isSmsCapable()) {
        if (!telephonyManager.isSmsCapable()
                // Ensure sms role is present on car despite !isSmsCapable config (b/132972702)
                && getDefaultHolder(role, context) == null) {
            return false;
            return false;
        }
        }
        return true;
        return true;
@@ -60,8 +62,7 @@ public class SmsRoleBehavior implements RoleBehavior {
    @Nullable
    @Nullable
    @Override
    @Override
    public String getFallbackHolder(@NonNull Role role, @NonNull Context context) {
    public String getFallbackHolder(@NonNull Role role, @NonNull Context context) {
        String defaultPackageName = ExclusiveDefaultHolderMixin.getDefaultHolder(role,
        String defaultPackageName = getDefaultHolder(role, context);
                "config_defaultSms", context);
        if (defaultPackageName != null) {
        if (defaultPackageName != null) {
            return defaultPackageName;
            return defaultPackageName;
        }
        }
@@ -74,6 +75,11 @@ public class SmsRoleBehavior implements RoleBehavior {
        return CollectionUtils.firstOrNull(qualifyingPackageNames);
        return CollectionUtils.firstOrNull(qualifyingPackageNames);
    }
    }


    @Nullable
    private static String getDefaultHolder(@NonNull Role role, @NonNull Context context) {
        return ExclusiveDefaultHolderMixin.getDefaultHolder(role, "config_defaultSms", context);
    }

    @Nullable
    @Nullable
    @Override
    @Override
    public CharSequence getConfirmationMessage(@NonNull Role role, @NonNull String packageName,
    public CharSequence getConfirmationMessage(@NonNull Role role, @NonNull String packageName,