mirror of
https://github.com/gabehf/Fladder.git
synced 2026-03-16 02:35:59 -07:00
feat: Android TV support (#503)
Co-authored-by: PartyDonut <PartyDonut@users.noreply.github.com>
This commit is contained in:
parent
7ab8c015b9
commit
c299492d6d
168 changed files with 12019 additions and 3073 deletions
|
|
@ -0,0 +1,54 @@
|
|||
package nl.jknaapen.fladder
|
||||
|
||||
import android.graphics.PixelFormat
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import android.view.WindowManager
|
||||
import androidx.activity.ComponentActivity
|
||||
import androidx.activity.compose.setContent
|
||||
import androidx.activity.enableEdgeToEdge
|
||||
import androidx.annotation.OptIn
|
||||
import androidx.annotation.RequiresApi
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.media3.common.util.UnstableApi
|
||||
import nl.jknaapen.fladder.composables.controls.CustomVideoControls
|
||||
import nl.jknaapen.fladder.objects.VideoPlayerObject
|
||||
import nl.jknaapen.fladder.player.ExoPlayer
|
||||
import nl.jknaapen.fladder.utility.ScaledContent
|
||||
import nl.jknaapen.fladder.utility.leanBackEnabled
|
||||
|
||||
class VideoPlayerActivity : ComponentActivity() {
|
||||
@RequiresApi(Build.VERSION_CODES.O)
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
enableEdgeToEdge()
|
||||
super.onCreate(savedInstanceState)
|
||||
VideoPlayerObject.currentActivity = this
|
||||
|
||||
window.setFlags(
|
||||
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
|
||||
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED
|
||||
)
|
||||
|
||||
window.setFormat(PixelFormat.TRANSLUCENT)
|
||||
|
||||
setContent {
|
||||
VideoPlayerTheme {
|
||||
VideoPlayerScreen()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@RequiresApi(Build.VERSION_CODES.O)
|
||||
@OptIn(UnstableApi::class)
|
||||
@Composable
|
||||
fun VideoPlayerScreen(
|
||||
) {
|
||||
val leanBackEnabled = leanBackEnabled(LocalContext.current)
|
||||
ExoPlayer { player ->
|
||||
ScaledContent(if (leanBackEnabled) 0.50f else 1f) {
|
||||
CustomVideoControls(player)
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue