mirror of
https://github.com/lizongying/my-tv.git
synced 2026-10-26 14:16:29 +08:00
58 lines
1.9 KiB
Kotlin
58 lines
1.9 KiB
Kotlin
package com.lizongying.mytv
|
|
|
|
import android.content.Context
|
|
import android.util.Log
|
|
import android.view.KeyEvent
|
|
import android.view.View
|
|
import androidx.leanback.media.MediaPlayerAdapter
|
|
import androidx.leanback.media.PlaybackTransportControlGlue
|
|
import androidx.leanback.media.PlayerAdapter
|
|
|
|
class PlaybackControlGlue(
|
|
context: Context?,
|
|
playerAdapter: PlayerAdapter?,
|
|
) :
|
|
PlaybackTransportControlGlue<PlayerAdapter>(context, playerAdapter) {
|
|
|
|
override fun onKey(v: View?, keyCode: Int, event: KeyEvent?): Boolean {
|
|
if (event!!.action == KeyEvent.ACTION_DOWN) {
|
|
when (keyCode) {
|
|
KeyEvent.KEYCODE_DPAD_CENTER -> {
|
|
Log.i(TAG, "KEYCODE_DPAD_CENTER")
|
|
(context as? MainActivity)?.switchMainFragment()
|
|
}
|
|
|
|
KeyEvent.KEYCODE_DPAD_UP -> {
|
|
if ((context as? MainActivity)?.mainFragmentIsHidden() == true) {
|
|
(context as? MainActivity)?.prev()
|
|
}
|
|
}
|
|
|
|
KeyEvent.KEYCODE_DPAD_DOWN -> {
|
|
if ((context as? MainActivity)?.mainFragmentIsHidden() == true) {
|
|
(context as? MainActivity)?.next()
|
|
}
|
|
}
|
|
|
|
KeyEvent.KEYCODE_DPAD_LEFT -> {
|
|
if ((context as? MainActivity)?.mainFragmentIsHidden() == true) {
|
|
(context as? MainActivity)?.prevSource()
|
|
}
|
|
}
|
|
|
|
KeyEvent.KEYCODE_DPAD_RIGHT -> {
|
|
if ((context as? MainActivity)?.mainFragmentIsHidden() == true) {
|
|
(context as? MainActivity)?.nextSource()
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return super.onKey(v, keyCode, event)
|
|
}
|
|
|
|
companion object {
|
|
private const val TAG = "PlaybackControlGlue"
|
|
}
|
|
}
|