VideoDetailsFragment.kt 1.46 KB
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)) }
    }
}