mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 07:13:00 +00:00 
			
		
		
		
	Merge pull request #9109 from TeamNewPipe/fix/overlayPlayQueueButton
Hide play queue button in VideoDetailsFragment when queue is empty
This commit is contained in:
		| @@ -248,6 +248,7 @@ public final class VideoDetailFragment | ||||
|             autoPlayEnabled = true; // forcefully start playing | ||||
|             openVideoPlayerAutoFullscreen(); | ||||
|         } | ||||
|         updateOverlayPlayQueueButtonVisibility(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
| @@ -337,6 +338,8 @@ public final class VideoDetailFragment | ||||
|  | ||||
|         activity.sendBroadcast(new Intent(ACTION_VIDEO_FRAGMENT_RESUMED)); | ||||
|  | ||||
|         updateOverlayPlayQueueButtonVisibility(); | ||||
|  | ||||
|         setupBrightness(); | ||||
|  | ||||
|         if (tabSettingsChanged) { | ||||
| @@ -1820,6 +1823,14 @@ public final class VideoDetailFragment | ||||
|                     + title + "], playQueue = [" + playQueue + "]"); | ||||
|         } | ||||
|  | ||||
|         // Register broadcast receiver to listen to playQueue changes | ||||
|         // and hide the overlayPlayQueueButton when the playQueue is empty / destroyed. | ||||
|         if (playQueue != null && playQueue.getBroadcastReceiver() != null) { | ||||
|             playQueue.getBroadcastReceiver().subscribe( | ||||
|                     event -> updateOverlayPlayQueueButtonVisibility() | ||||
|             ); | ||||
|         } | ||||
|  | ||||
|         // This should be the only place where we push data to stack. | ||||
|         // It will allow to have live instance of PlayQueue with actual information about | ||||
|         // deleted/added items inside Channel/Playlist queue and makes possible to have | ||||
| @@ -1926,6 +1937,7 @@ public final class VideoDetailFragment | ||||
|                     currentInfo.getUploaderName(), | ||||
|                     currentInfo.getThumbnailUrl()); | ||||
|         } | ||||
|         updateOverlayPlayQueueButtonVisibility(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
| @@ -2392,6 +2404,18 @@ public final class VideoDetailFragment | ||||
|         }); | ||||
|     } | ||||
|  | ||||
|     private void updateOverlayPlayQueueButtonVisibility() { | ||||
|         final boolean isPlayQueueEmpty = | ||||
|                 player == null // no player => no play queue :) | ||||
|                         || player.getPlayQueue() == null | ||||
|                         || player.getPlayQueue().isEmpty(); | ||||
|         if (binding != null) { | ||||
|             // binding is null when rotating the device... | ||||
|             binding.overlayPlayQueueButton.setVisibility( | ||||
|                     isPlayQueueEmpty ? View.GONE : View.VISIBLE); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private void updateOverlayData(@Nullable final String overlayTitle, | ||||
|                                    @Nullable final String uploader, | ||||
|                                    @Nullable final String thumbnailUrl) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Stypox
					Stypox