VideoDetailsFragment.kt
1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.apaas.bigscreem
import android.content.Intent
import android.os.Bundle
import android.net.Uri
import androidx.leanback.app.DetailsSupportFragment
import androidx.leanback.widget.RowPresenter
import androidx.core.app.ActivityOptionsCompat
import androidx.core.content.ContextCompat
import android.util.Log
import android.webkit.WebView
import android.widget.Toast
import androidx.browser.customtabs.CustomTabsIntent
import com.bumptech.glide.Glide
import com.bumptech.glide.request.target.SimpleTarget
import com.bumptech.glide.request.transition.Transition
import java.util.Collections
/**
* A wrapper fragment for leanback details screens.
* It shows a detailed view of video and its metadata plus related videos.
*/
class VideoDetailsFragment : DetailsSupportFragment() {
private var mSelectedMovie: Movie? = null
private lateinit var mWebView: WebView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mSelectedMovie = activity!!.intent.getSerializableExtra(DetailsActivity.MOVIE) as Movie
if (mSelectedMovie != null) {
mSelectedMovie!!.webUrl?.let { openWebPage(it) };
} else {
val intent = Intent(context!!, MainActivity::class.java)
startActivity(intent)
}
}
fun openWebPage(url: String) {
val customTabsIntent = CustomTabsIntent.Builder().build()
activity?.let { customTabsIntent.launchUrl(it, Uri.parse(url)) }
}
}