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

Commit 6e4519c9 authored by Inseob Kim's avatar Inseob Kim
Browse files

Don't use product specific resources

Bug: 320565449
Test: boot
Test: atest SettingsLibTests SettingsLibUnitTests SettingsLibRoboTests
Test: atest SystemUITests
Flag: NA
Change-Id: I562a0f5549273bcd22a4483f9ce24db4e417c5df
parent 560fa56b
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1340,11 +1340,11 @@
    <string name="notice_header" translatable="false"></string>

    <!-- Name of the phone device. [CHAR LIMIT=30] -->
    <string name="media_transfer_this_device_name" product="default">This phone</string>
    <string name="media_transfer_this_device_name">This phone</string>
    <!-- Name of the tablet device. [CHAR LIMIT=30] -->
    <string name="media_transfer_this_device_name" product="tablet">This tablet</string>
    <string name="media_transfer_this_device_name_tablet">This tablet</string>
    <!-- Name of the default media output of the TV. [CHAR LIMIT=30] -->
    <string name="media_transfer_this_device_name" product="tv">@string/tv_media_transfer_default</string>
    <string name="media_transfer_this_device_name_tv">@string/tv_media_transfer_default</string>
    <!-- Name of the dock device. [CHAR LIMIT=30] -->
    <string name="media_transfer_dock_speaker_device_name">Dock speaker</string>
    <!-- Default name of the external device. [CHAR LIMIT=30] -->
+19 −1
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ import android.hardware.hdmi.HdmiDeviceInfo;
import android.hardware.hdmi.HdmiPortInfo;
import android.media.MediaRoute2Info;
import android.media.RouteListingPreference;
import android.os.SystemProperties;
import android.util.Log;

import androidx.annotation.NonNull;
@@ -45,6 +46,7 @@ import androidx.annotation.VisibleForTesting;
import com.android.settingslib.R;
import com.android.settingslib.media.flags.Flags;

import java.util.Arrays;
import java.util.List;

/**
@@ -63,6 +65,17 @@ public class PhoneMediaDevice extends MediaDevice {

    private final DeviceIconUtil mDeviceIconUtil;

    /** Returns this device name for media transfer. */
    public static @NonNull String getMediaTransferThisDeviceName(@NonNull Context context) {
        if (isTv(context)) {
            return context.getString(R.string.media_transfer_this_device_name_tv);
        } else if (isTablet()) {
            return context.getString(R.string.media_transfer_this_device_name_tablet);
        } else {
            return context.getString(R.string.media_transfer_this_device_name);
        }
    }

    /** Returns the device name for the given {@code routeInfo}. */
    public static String getSystemRouteNameFromType(
            @NonNull Context context, @NonNull MediaRoute2Info routeInfo) {
@@ -80,7 +93,7 @@ public class PhoneMediaDevice extends MediaDevice {
                name = context.getString(R.string.media_transfer_dock_speaker_device_name);
                break;
            case TYPE_BUILTIN_SPEAKER:
                name = context.getString(R.string.media_transfer_this_device_name);
                name = getMediaTransferThisDeviceName(context);
                break;
            case TYPE_HDMI:
                name = context.getString(isTv ? R.string.tv_media_transfer_default :
@@ -135,6 +148,11 @@ public class PhoneMediaDevice extends MediaDevice {
                && Flags.enableTvMediaOutputDialog();
    }

    static boolean isTablet() {
        return Arrays.asList(SystemProperties.get("ro.build.characteristics").split(","))
                .contains("tablet");
    }

    // MediaRoute2Info.getType was made public on API 34, but exists since API 30.
    @SuppressWarnings("NewApi")
    @Override
+2 −1
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import static android.media.MediaRoute2Info.TYPE_WIRED_HEADSET;
import static com.android.settingslib.media.PhoneMediaDevice.PHONE_ID;
import static com.android.settingslib.media.PhoneMediaDevice.USB_HEADSET_ID;
import static com.android.settingslib.media.PhoneMediaDevice.WIRED_HEADSET_ID;
import static com.android.settingslib.media.PhoneMediaDevice.getMediaTransferThisDeviceName;

import static com.google.common.truth.Truth.assertThat;

@@ -114,7 +115,7 @@ public class PhoneMediaDeviceTest {
        when(mInfo.getType()).thenReturn(TYPE_BUILTIN_SPEAKER);

        assertThat(mPhoneMediaDevice.getName())
                .isEqualTo(mContext.getString(R.string.media_transfer_this_device_name));
                .isEqualTo(getMediaTransferThisDeviceName(mContext));
    }

    @EnableFlags(Flags.FLAG_ENABLE_AUDIO_POLICIES_DEVICE_AND_BLUETOOTH_CONTROLLER)
+1 −4
Original line number Diff line number Diff line
@@ -475,10 +475,7 @@ public class MediaDeviceManagerTest : SysuiTestCase() {

        // Then the device name is the PhoneMediaDevice string
        val data = captureDeviceData(KEY)
        assertThat(data.name)
            .isEqualTo(
                context.getString(com.android.settingslib.R.string.media_transfer_this_device_name)
            )
        assertThat(data.name).isEqualTo(PhoneMediaDevice.getMediaTransferThisDeviceName(context))
    }

    @Test