forked from recloudstream/cloudstream
		
	resume progress for movies
This commit is contained in:
		
							parent
							
								
									aa146c7b98
								
							
						
					
					
						commit
						c9cd73e07f
					
				
					 2 changed files with 51 additions and 35 deletions
				
			
		|  | @ -1077,8 +1077,9 @@ class ResultFragment : Fragment(), PanelsChildGestureRegionObserver.GestureRegio | ||||||
|         observe(viewModel.episodes) { episodeList -> |         observe(viewModel.episodes) { episodeList -> | ||||||
|             lateFixDownloadButton(episodeList.size <= 1) // movies can have multible parts but still be *movies* this will fix this |             lateFixDownloadButton(episodeList.size <= 1) // movies can have multible parts but still be *movies* this will fix this | ||||||
|             var isSeriesVisible = false |             var isSeriesVisible = false | ||||||
|  |             var isProgressVisible = false | ||||||
|             DataStoreHelper.getLastWatched(currentId)?.let { resume -> |             DataStoreHelper.getLastWatched(currentId)?.let { resume -> | ||||||
|                 if (currentIsMovie == false && episodeList.size >= 3) { |                 if (currentIsMovie == false) { | ||||||
|                     isSeriesVisible = true |                     isSeriesVisible = true | ||||||
| 
 | 
 | ||||||
|                     result_resume_series_button?.setOnClickListener { |                     result_resume_series_button?.setOnClickListener { | ||||||
|  | @ -1092,20 +1093,33 @@ class ResultFragment : Fragment(), PanelsChildGestureRegionObserver.GestureRegio | ||||||
|                             "${getString(R.string.episode)} ${resume.episode}" |                             "${getString(R.string.episode)} ${resume.episode}" | ||||||
|                         else |                         else | ||||||
|                             " \"${getString(R.string.season_short)}${resume.season}:${getString(R.string.episode_short)}${resume.episode}\"" |                             " \"${getString(R.string.season_short)}${resume.season}:${getString(R.string.episode_short)}${resume.episode}\"" | ||||||
|  |                 } | ||||||
| 
 | 
 | ||||||
|                     getViewPos(resume.episodeId)?.let { viewPos -> |                 getViewPos(resume.episodeId)?.let { viewPos -> | ||||||
|  |                     if(viewPos.position > 30_000L || currentIsMovie == false) { // first 30s will not show for movies | ||||||
|                         result_resume_series_progress?.apply { |                         result_resume_series_progress?.apply { | ||||||
|                             max = (viewPos.duration / 1000).toInt() |                             max = (viewPos.duration / 1000).toInt() | ||||||
|                             progress = (viewPos.position / 1000).toInt() |                             progress = (viewPos.position / 1000).toInt() | ||||||
|                         } |                         } | ||||||
|                         result_resume_series_progress_text?.text = |                         result_resume_series_progress_text?.text = | ||||||
|                             getString(R.string.resume_time_left).format((viewPos.duration - viewPos.position) / (60_000)) |                             getString(R.string.resume_time_left).format((viewPos.duration - viewPos.position) / (60_000)) | ||||||
|                     } ?: run { |                         isProgressVisible = true | ||||||
|  |                     } else { | ||||||
|  |                         isProgressVisible = false | ||||||
|                         isSeriesVisible = false |                         isSeriesVisible = false | ||||||
|                     } |                     } | ||||||
|  |                 } ?: run { | ||||||
|  |                     isProgressVisible = false | ||||||
|  |                     isSeriesVisible = false | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|  | 
 | ||||||
|             result_series_parent?.isVisible = isSeriesVisible |             result_series_parent?.isVisible = isSeriesVisible | ||||||
|  |             result_resume_progress_holder?.isVisible = isProgressVisible | ||||||
|  |             context?.getString(if (isProgressVisible) R.string.resume else R.string.play_movie_button) | ||||||
|  |                 ?.let { | ||||||
|  |                     result_play_movie?.text = it | ||||||
|  |                 } | ||||||
| 
 | 
 | ||||||
|             when (startAction) { |             when (startAction) { | ||||||
|                 START_ACTION_RESUME_LATEST -> { |                 START_ACTION_RESUME_LATEST -> { | ||||||
|  | @ -1354,10 +1368,10 @@ class ResultFragment : Fragment(), PanelsChildGestureRegionObserver.GestureRegio | ||||||
| 
 | 
 | ||||||
|                         result_poster_holder?.visibility = VISIBLE |                         result_poster_holder?.visibility = VISIBLE | ||||||
| 
 | 
 | ||||||
|                         result_play_movie?.text = |                         /*result_play_movie?.text = | ||||||
|                             if (d.type == TvType.Torrent) getString(R.string.play_torrent_button) else getString( |                             if (d.type == TvType.Torrent) getString(R.string.play_torrent_button) else getString( | ||||||
|                                 R.string.play_movie_button |                                 R.string.play_movie_button | ||||||
|                             ) |                             )*/ | ||||||
|                         //result_plot_header?.text = |                         //result_plot_header?.text = | ||||||
|                         //    if (d.type == TvType.Torrent) getString(R.string.torrent_plot) else getString(R.string.result_plot) |                         //    if (d.type == TvType.Torrent) getString(R.string.torrent_plot) else getString(R.string.result_plot) | ||||||
|                         if (!d.plot.isNullOrEmpty()) { |                         if (!d.plot.isNullOrEmpty()) { | ||||||
|  |  | ||||||
|  | @ -667,39 +667,41 @@ | ||||||
|                                 tools:text="S1E1 Episode 1" |                                 tools:text="S1E1 Episode 1" | ||||||
|                                 android:layout_width="match_parent" |                                 android:layout_width="match_parent" | ||||||
|                                 android:layout_height="wrap_content" /> |                                 android:layout_height="wrap_content" /> | ||||||
|  |                     </LinearLayout> | ||||||
| 
 | 
 | ||||||
|                         <LinearLayout |                     <LinearLayout | ||||||
|                                 android:orientation="horizontal" |                             android:paddingTop="10dp" | ||||||
|  |                             android:id="@+id/result_resume_progress_holder" | ||||||
|  |                             android:orientation="horizontal" | ||||||
|  |                             android:layout_width="match_parent" | ||||||
|  |                             android:layout_height="wrap_content"> | ||||||
|  | 
 | ||||||
|  |                         <androidx.core.widget.ContentLoadingProgressBar | ||||||
|  |                                 android:layout_height="20dp" | ||||||
|  |                                 tools:progress="50" | ||||||
|  |                                 android:id="@+id/result_resume_series_progress" | ||||||
|  |                                 android:indeterminate="false" | ||||||
|  |                                 style="?android:attr/progressBarStyleHorizontal" | ||||||
|  |                                 android:progressBackgroundTint="?attr/colorPrimary" | ||||||
|  |                                 android:max="100" | ||||||
|  |                                 android:layout_gravity="end|center_vertical" | ||||||
|  |                                 android:progress="0" | ||||||
|                                 android:layout_width="match_parent" |                                 android:layout_width="match_parent" | ||||||
|                                 android:layout_height="wrap_content"> |                                 android:layout_weight="1" | ||||||
|  |                                 android:visibility="visible" | ||||||
|  |                                 tools:visibility="visible" /> | ||||||
| 
 | 
 | ||||||
|                             <androidx.core.widget.ContentLoadingProgressBar |                         <TextView | ||||||
|                                     android:layout_height="20dp" |                                 android:id="@+id/result_resume_series_progress_text" | ||||||
|                                     tools:progress="50" |                                 android:layout_gravity="center" | ||||||
|                                     android:id="@+id/result_resume_series_progress" |                                 android:paddingStart="10dp" | ||||||
|                                     android:indeterminate="false" |                                 android:gravity="center" | ||||||
|                                     style="?android:attr/progressBarStyleHorizontal" |                                 tools:text="69m\nremaining" | ||||||
|                                     android:progressBackgroundTint="?attr/colorPrimary" |                                 android:layout_weight="0" | ||||||
|                                     android:max="100" |                                 android:textColor="?attr/grayTextColor" | ||||||
|                                     android:layout_gravity="end|center_vertical" |                                 android:layout_width="wrap_content" | ||||||
|                                     android:progress="0" |                                 android:layout_height="wrap_content" | ||||||
|                                     android:layout_width="match_parent" |                                 tools:ignore="RtlSymmetry" /> | ||||||
|                                     android:layout_weight="1" |  | ||||||
|                                     android:visibility="visible" |  | ||||||
|                                     tools:visibility="visible" /> |  | ||||||
| 
 |  | ||||||
|                             <TextView |  | ||||||
|                                     android:id="@+id/result_resume_series_progress_text" |  | ||||||
|                                     android:layout_gravity="center" |  | ||||||
|                                     android:paddingStart="10dp" |  | ||||||
|                                     android:gravity="center" |  | ||||||
|                                     tools:text="69m\nremaining" |  | ||||||
|                                     android:layout_weight="0" |  | ||||||
|                                     android:textColor="?attr/grayTextColor" |  | ||||||
|                                     android:layout_width="wrap_content" |  | ||||||
|                                     android:layout_height="wrap_content" |  | ||||||
|                                     tools:ignore="RtlSymmetry" /> |  | ||||||
|                         </LinearLayout> |  | ||||||
|                     </LinearLayout> |                     </LinearLayout> | ||||||
|                     <!--<TextView |                     <!--<TextView | ||||||
|                             android:visibility="gone" |                             android:visibility="gone" | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue