Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 17
java-version: 21
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v6
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 17
java-version: 21
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v6
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 17
java-version: 21
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v6
with:
Expand Down
2 changes: 0 additions & 2 deletions .idea/gradle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion .idea/kotlinc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@
> - 🏠 Internal
> - 💅 Polish

## Unreleased

* 🚀 Added support for THEOplayer 11.0. ([#98](https://github.com/THEOplayer/android-ui/pull/98))
* 🚀 Updated to Jetpack Compose version 1.10.6 ([BOM](https://developer.android.com/jetpack/compose/bom) 2026.03.01).

## v1.13.4 (2026-04-07)

* 🐛 The language menu now prefers to show CEA-608/708 closed caption tracks with their localized language name (if available) instead of their language code (e.g. "en") or channel number (e.g. "CC1"). ([#84](https://github.com/THEOplayer/android-ui/pull/84), [#95](https://github.com/THEOplayer/android-ui/pull/95))
Expand Down
19 changes: 12 additions & 7 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinVersion

plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.compose.compiler)
}

Expand Down Expand Up @@ -54,12 +53,9 @@ android {
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlin {
compilerOptions {
apiVersion = KotlinVersion.KOTLIN_2_0
jvmTarget = JvmTarget.JVM_1_8
}

// Required by Google IMA SDK v3.37.0+
isCoreLibraryDesugaringEnabled = true
}
buildFeatures {
compose = true
Expand All @@ -71,11 +67,20 @@ android {
}
}

kotlin {
compilerOptions {
apiVersion = KotlinVersion.KOTLIN_2_0
jvmTarget = JvmTarget.JVM_1_8
}
}

dependencies {
val mavenImplementation = configurations.getByName("mavenImplementation")
val latestPlayerImplementation = configurations.getByName("latestPlayerImplementation")
val minPlayerImplementation = configurations.getByName("minPlayerImplementation")

coreLibraryDesugaring(libs.androidTools.desugarJdkLibs)

implementation(platform(libs.androidx.compose.bom))

implementation(libs.androidx.ktx)
Expand Down
1 change: 0 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ buildscript {
plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.compose.compiler) apply false
alias(libs.plugins.dokka) apply false
}
1 change: 0 additions & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,5 @@ android.nonFinalResIds=true
org.gradle.configuration-cache=true
# Enable Dokka v2
org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled
org.jetbrains.dokka.experimental.gradle.pluginMode.noWarn=true
# The version of the THEOplayer Open Video UI for Android.
version=1.13.4
13 changes: 13 additions & 0 deletions gradle/gradle-daemon-jvm.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#This file is generated by updateDaemonJvm
toolchainUrl.FREE_BSD.AARCH64=https\://api.foojay.io/disco/v3.0/ids/56a19bc915b9ba2eb62ba7554c61b919/redirect
toolchainUrl.FREE_BSD.X86_64=https\://api.foojay.io/disco/v3.0/ids/398ffe3949748bfb1d5636f023d228fd/redirect
toolchainUrl.LINUX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/56a19bc915b9ba2eb62ba7554c61b919/redirect
toolchainUrl.LINUX.X86_64=https\://api.foojay.io/disco/v3.0/ids/398ffe3949748bfb1d5636f023d228fd/redirect
toolchainUrl.MAC_OS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/e99bae143b75f9a10ead10248f02055e/redirect
toolchainUrl.MAC_OS.X86_64=https\://api.foojay.io/disco/v3.0/ids/04e088f8677de3b384108493cc9481d0/redirect
toolchainUrl.UNIX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/56a19bc915b9ba2eb62ba7554c61b919/redirect
toolchainUrl.UNIX.X86_64=https\://api.foojay.io/disco/v3.0/ids/398ffe3949748bfb1d5636f023d228fd/redirect
toolchainUrl.WINDOWS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/e55dccbfe27cb97945148c61a39c89c5/redirect
toolchainUrl.WINDOWS.X86_64=https\://api.foojay.io/disco/v3.0/ids/dbd05c4936d573642f94cd149e1356c8/redirect
toolchainVendor=JETBRAINS
toolchainVersion=21
23 changes: 12 additions & 11 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,24 @@
android-minSdk = "23"
android-compileSdk = "36"
android-targetSdk = "36"
gradle = "8.13.0"
kotlin = "2.2.10"
ktx = "1.17.0"
lifecycle-compose = "2.9.3"
gradle = "9.1.1"
kotlin = "2.3.20"
ktx = "1.18.0"
lifecycle-compose = "2.10.0"
activity-compose = "1.13.0"
appcompat = "1.7.1"
compose-bom = "2025.08.01"
compose-bom = "2026.03.01"
junit4 = "4.13.2"
mockk = "1.14.9"
playServices-castFramework = "21.5.0"
ui-test-junit4 = "1.9.0" # ...not in BOM for some reason?
playServices-castFramework = "22.3.1"
ui-test-junit4 = "1.10.6" # ...not in BOM for some reason?
androidx-junit = "1.3.0"
androidx-espresso = "3.7.0"
androidx-mediarouter = "1.8.1"
dokka = "2.0.0"
theoplayer = { prefer = "10.+", strictly = "[7.6.0, 11.0)" }
theoplayer-compile = { prefer = "10.+", strictly = "[10.13.0, 11.0)" }
desugar-jdk-libs = "2.1.5"
dokka = "2.2.0"
theoplayer = { prefer = "11.+", strictly = "[7.6.0, 12.0)" }
theoplayer-compile = { prefer = "11.+", strictly = "[10.13.0, 12.0)" }
theoplayer-min = { strictly = "7.6.0" }
core = "1.18.0"
core-pip = "1.0.0-alpha02"
Expand All @@ -42,6 +43,7 @@ androidx-espresso = { group = "androidx.test.espresso", name = "espresso-core",
androidx-mediarouter = { group = "androidx.mediarouter", name = "mediarouter", version.ref = "androidx-mediarouter" }
androidx-core = { group = "androidx.core", name = "core", version.ref = "core" }
androidx-core-pip = { group = "androidx.core", name = "core-pip", version.ref = "core-pip" }
androidTools-desugarJdkLibs = { group = "com.android.tools", name = "desugar_jdk_libs", version.ref = "desugar-jdk-libs" }
playServices-castFramework = { group = "com.google.android.gms", name = "play-services-cast-framework", version.ref = "playServices-castFramework" }
gradle-plugin = { group = "com.android.tools.build", name = "gradle", version.ref = "gradle" }
dokka-base = { group = "org.jetbrains.dokka", name = "dokka-base", version.ref = "dokka" }
Expand All @@ -60,7 +62,6 @@ theoplayer-compile = { group = "com.theoplayer.theoplayer-sdk-android", name = "
[plugins]
android-application = { id = "com.android.application", version.ref = "gradle" }
android-library = { id = "com.android.library", version.ref = "gradle" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" }
dokka-javadoc = { id = "org.jetbrains.dokka-javadoc" }
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Mon Nov 20 16:01:06 CET 2023
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
3 changes: 3 additions & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ pluginManagement {
gradlePluginPortal()
}
}
plugins {
id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
Expand Down
20 changes: 10 additions & 10 deletions ui/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ buildscript {

plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.compose.compiler)
alias(libs.plugins.dokka)
alias(libs.plugins.dokka.javadoc)
Expand Down Expand Up @@ -44,12 +43,6 @@ android {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlin {
compilerOptions {
apiVersion = KotlinVersion.KOTLIN_2_0
jvmTarget = JvmTarget.JVM_1_8
}
}
buildFeatures {
compose = true
}
Expand All @@ -67,6 +60,13 @@ android {
}
}

kotlin {
compilerOptions {
apiVersion = KotlinVersion.KOTLIN_2_0
jvmTarget = JvmTarget.JVM_1_8
}
}

dependencies {
implementation(platform(libs.androidx.compose.bom))

Expand Down Expand Up @@ -97,7 +97,7 @@ dependencies {
dokka {
moduleName = rootProject.name

dokkaSourceSets.main {
dokkaSourceSets.configureEach {
sourceLink {
localDirectory = file("src/main/java")
remoteUrl("https://github.com/THEOplayer/android-ui/blob/${version}/ui/src/main/java")
Expand All @@ -106,8 +106,8 @@ dokka {

externalDocumentationLinks {
register("com.theoplayer.android.api") {
url("https://optiview.dolby.com/docs/theoplayer/v10/api-reference/android/")
packageListUrl("https://optiview.dolby.com/docs/theoplayer/v10/api-reference/android/package-list")
url("https://optiview.dolby.com/docs/theoplayer/v11/api-reference/android/")
packageListUrl("https://optiview.dolby.com/docs/theoplayer/v11/api-reference/android/package-list")
}
}
}
Expand Down