forked from recloudstream/cloudstream
minicast color
This commit is contained in:
parent
881ee223c2
commit
93fe31f014
6 changed files with 52 additions and 5 deletions
|
@ -1,18 +1,34 @@
|
|||
package com.lagradost.cloudstream3.ui
|
||||
|
||||
import android.content.Context
|
||||
import android.os.Bundle
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import android.widget.ImageView
|
||||
import android.widget.LinearLayout
|
||||
import android.widget.ProgressBar
|
||||
import android.widget.RelativeLayout
|
||||
import androidx.core.content.ContextCompat
|
||||
import com.google.android.gms.cast.framework.media.widget.MiniControllerFragment
|
||||
import com.lagradost.cloudstream3.R
|
||||
import com.lagradost.cloudstream3.UIHelper.adjustAlpha
|
||||
import com.lagradost.cloudstream3.UIHelper.colorFromAttribute
|
||||
import com.lagradost.cloudstream3.UIHelper.toPx
|
||||
|
||||
|
||||
class MyMiniControllerFragment : MiniControllerFragment() {
|
||||
var currentColor: Int = 0
|
||||
|
||||
// I KNOW, KINDA SPAGHETTI SOLUTION, BUT IT WORKS
|
||||
override fun onInflate(context: Context, attributeSet: AttributeSet, bundle: Bundle?) {
|
||||
val obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.CustomCast, 0, 0)
|
||||
if (obtainStyledAttributes.hasValue(R.styleable.CustomCast_customCastBackgroundColor)) {
|
||||
currentColor = obtainStyledAttributes.getColor(R.styleable.CustomCast_customCastBackgroundColor, 0)
|
||||
}
|
||||
|
||||
super.onInflate(context, attributeSet, bundle)
|
||||
}
|
||||
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
|
||||
|
@ -20,12 +36,17 @@ class MyMiniControllerFragment : MiniControllerFragment() {
|
|||
try {
|
||||
val progressBar: ProgressBar? = view.findViewById(R.id.progressBar)
|
||||
val containerAll: LinearLayout? = view.findViewById(R.id.container_all)
|
||||
val containerCurrent: RelativeLayout? = view.findViewById(R.id.container_current)
|
||||
|
||||
context?.let { ctx ->
|
||||
progressBar?.setBackgroundColor(adjustAlpha(ctx.colorFromAttribute(R.attr.colorPrimary), 0.35f))
|
||||
val params = RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, 2.toPx)
|
||||
|
||||
progressBar?.layoutParams = params
|
||||
|
||||
if (currentColor != 0) {
|
||||
containerCurrent?.setBackgroundColor(currentColor)
|
||||
}
|
||||
}
|
||||
val child = containerAll?.getChildAt(0)
|
||||
child?.alpha = 0f // REMOVE GRADIENT
|
||||
|
|
|
@ -26,6 +26,7 @@ import com.google.android.gms.cast.framework.CastContext
|
|||
import com.google.android.gms.cast.framework.CastState
|
||||
import com.google.android.material.button.MaterialButton
|
||||
import com.lagradost.cloudstream3.*
|
||||
import com.lagradost.cloudstream3.UIHelper.colorFromAttribute
|
||||
import com.lagradost.cloudstream3.UIHelper.fixPaddingStatusbar
|
||||
import com.lagradost.cloudstream3.UIHelper.isCastApiAvailable
|
||||
import com.lagradost.cloudstream3.UIHelper.popupMenu
|
||||
|
@ -122,6 +123,18 @@ class ResultFragment : Fragment() {
|
|||
override fun onDestroy() {
|
||||
//requireActivity().viewModelStore.clear() // REMEMBER THE CLEAR
|
||||
super.onDestroy()
|
||||
activity?.let {
|
||||
it.window?.navigationBarColor =
|
||||
it.colorFromAttribute(R.attr.darkBackground)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
activity?.let {
|
||||
it.window?.navigationBarColor =
|
||||
it.colorFromAttribute(R.attr.bitDarkerGrayBackground)
|
||||
}
|
||||
}
|
||||
|
||||
private var currentPoster: String? = null
|
||||
|
@ -245,7 +258,7 @@ class ResultFragment : Fragment() {
|
|||
it.popupMenuNoIcons(
|
||||
items = WatchType.values()
|
||||
.map { watchType -> Pair(watchType.internalId, watchType.stringRes) },
|
||||
//.map { watchType -> Triple(watchType.internalId, watchType.iconRes, watchType.stringRes) },
|
||||
//.map { watchType -> Triple(watchType.internalId, watchType.iconRes, watchType.stringRes) },
|
||||
) {
|
||||
context?.let { localContext ->
|
||||
viewModel.updateWatchStatus(localContext, WatchType.fromInternalId(this.itemId))
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
>
|
||||
<!--com.google.android.gms.cast.framework.media.widget.MiniControllerFragment-->
|
||||
<fragment
|
||||
app:customCastBackgroundColor="?attr/darkBackground"
|
||||
app:castControlButtons="@array/cast_mini_controller_control_buttons"
|
||||
android:id="@+id/cast_mini_controller"
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -229,9 +229,12 @@
|
|||
/>
|
||||
</LinearLayout>
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
<LinearLayout android:layout_gravity="bottom" android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
<LinearLayout
|
||||
android:layout_gravity="bottom"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
<fragment
|
||||
app:customCastBackgroundColor="?attr/bitDarkerGrayBackground"
|
||||
app:castControlButtons="@array/cast_mini_controller_control_buttons"
|
||||
android:id="@+id/cast_mini_controller"
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -2,6 +2,15 @@
|
|||
<resources>
|
||||
<declare-styleable name="FlowLayout_Layout"/>
|
||||
<declare-styleable name="FlowLayout_Layout_layout_space"/>
|
||||
|
||||
<declare-styleable name="CustomCast">
|
||||
<attr name="customCastBackgroundColor" format="color"/>
|
||||
</declare-styleable>
|
||||
|
||||
<style name="customCastDefColor">
|
||||
<item name="customCastBackgroundColor">?attr/colorPrimary</item>
|
||||
</style>
|
||||
|
||||
<declare-styleable name="MainColors">
|
||||
<attr name="colorPrimary" format="color"/>
|
||||
<attr name="colorSearch" format="color"/>
|
||||
|
|
|
@ -147,7 +147,7 @@
|
|||
|
||||
<item name="castTitleTextAppearance">@style/TextAppearance.AppCompat.Subhead</item>
|
||||
<item name="castSubtitleTextAppearance">@style/TextAppearance.AppCompat.Caption</item>
|
||||
<item name="castBackground">?attr/darkBackground</item> <!--CHECK-->
|
||||
<item name="castBackground">@color/transparent</item> <!--CHECK bitDarkerGrayBackground darkBackground-->
|
||||
<item name="castProgressBarColor">?attr/colorPrimary</item>
|
||||
<item name="castStopButtonDrawable">@drawable/cast_ic_mini_controller_stop</item>'
|
||||
<item name="castLargeStopButtonDrawable">@drawable/cast_ic_mini_controller_stop_large</item>
|
||||
|
|
Loading…
Reference in a new issue