*** Original commit ***

Fix capitalization of language in track selector

Issue: #9452

***

PiperOrigin-RevId: 400706984
This commit is contained in:
olly 2021-10-04 14:42:09 +01:00 committed by kim-vde
parent ac4a7e919a
commit 912c47ff6f
3 changed files with 2 additions and 15 deletions

View File

@ -35,8 +35,6 @@
`Player.addListener`.
* Fix initial timestamp display in `PlayerControlView`
([#9524](https://github.com/google/ExoPlayer/issues/9254)).
* Fix capitalization of languages in the track selector
([#9452](https://github.com/google/ExoPlayer/issues/9452)).
* Extractors:
* MP4: Correctly handle HEVC tracks with pixel aspect ratios other than 1.
* TS: Correctly handle HEVC tracks with pixel aspect ratios other than 1.

View File

@ -2243,11 +2243,6 @@ public final class Util {
return systemLocales;
}
/** Returns the default {@link Locale.Category#DISPLAY DISPLAY} {@link Locale}. */
public static Locale getDefaultDisplayLocale() {
return Util.SDK_INT >= 24 ? Locale.getDefault(Locale.Category.DISPLAY) : Locale.getDefault();
}
/**
* Uncompresses the data in {@code input}.
*

View File

@ -104,14 +104,8 @@ public class DefaultTrackNameProvider implements TrackNameProvider {
if (TextUtils.isEmpty(language) || C.LANGUAGE_UNDETERMINED.equals(language)) {
return "";
}
Locale languageLocale =
Util.SDK_INT >= 21 ? Locale.forLanguageTag(language) : new Locale(language);
Locale displayLocale = Util.getDefaultDisplayLocale();
String languageName = languageLocale.getDisplayName(displayLocale);
// Capitalize the first letter. See: https://github.com/google/ExoPlayer/issues/9452.
int firstCodePointLength = languageName.offsetByCodePoints(0, 1);
return languageName.substring(0, firstCodePointLength).toUpperCase(displayLocale)
+ languageName.substring(firstCodePointLength);
Locale locale = Util.SDK_INT >= 21 ? Locale.forLanguageTag(language) : new Locale(language);
return locale.getDisplayName();
}
private String buildRoleString(Format format) {