mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 15:23:00 +00:00 
			
		
		
		
	Merge pull request #7355 from petlyh/append-remote-playlist
Add a "Add to playlist" item to the remote playlist menu
This commit is contained in:
		| @@ -28,6 +28,7 @@ import org.reactivestreams.Subscription; | |||||||
| import org.schabi.newpipe.NewPipeDatabase; | import org.schabi.newpipe.NewPipeDatabase; | ||||||
| import org.schabi.newpipe.R; | import org.schabi.newpipe.R; | ||||||
| import org.schabi.newpipe.database.playlist.model.PlaylistRemoteEntity; | import org.schabi.newpipe.database.playlist.model.PlaylistRemoteEntity; | ||||||
|  | import org.schabi.newpipe.database.stream.model.StreamEntity; | ||||||
| import org.schabi.newpipe.databinding.PlaylistControlBinding; | import org.schabi.newpipe.databinding.PlaylistControlBinding; | ||||||
| import org.schabi.newpipe.databinding.PlaylistHeaderBinding; | import org.schabi.newpipe.databinding.PlaylistHeaderBinding; | ||||||
| import org.schabi.newpipe.error.ErrorInfo; | import org.schabi.newpipe.error.ErrorInfo; | ||||||
| @@ -41,6 +42,7 @@ import org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper; | |||||||
| import org.schabi.newpipe.extractor.stream.StreamInfoItem; | import org.schabi.newpipe.extractor.stream.StreamInfoItem; | ||||||
| import org.schabi.newpipe.fragments.list.BaseListInfoFragment; | import org.schabi.newpipe.fragments.list.BaseListInfoFragment; | ||||||
| import org.schabi.newpipe.info_list.dialog.InfoItemDialog; | import org.schabi.newpipe.info_list.dialog.InfoItemDialog; | ||||||
|  | import org.schabi.newpipe.local.dialog.PlaylistDialog; | ||||||
| import org.schabi.newpipe.local.playlist.RemotePlaylistManager; | import org.schabi.newpipe.local.playlist.RemotePlaylistManager; | ||||||
| import org.schabi.newpipe.player.MainPlayer.PlayerType; | import org.schabi.newpipe.player.MainPlayer.PlayerType; | ||||||
| import org.schabi.newpipe.player.playqueue.PlayQueue; | import org.schabi.newpipe.player.playqueue.PlayQueue; | ||||||
| @@ -56,6 +58,7 @@ import java.util.ArrayList; | |||||||
| import java.util.List; | import java.util.List; | ||||||
| import java.util.concurrent.atomic.AtomicBoolean; | import java.util.concurrent.atomic.AtomicBoolean; | ||||||
| import java.util.function.Supplier; | import java.util.function.Supplier; | ||||||
|  | import java.util.stream.Collectors; | ||||||
|  |  | ||||||
| import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers; | import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers; | ||||||
| import io.reactivex.rxjava3.core.Flowable; | import io.reactivex.rxjava3.core.Flowable; | ||||||
| @@ -237,6 +240,17 @@ public class PlaylistFragment extends BaseListInfoFragment<StreamInfoItem, Playl | |||||||
|             case R.id.menu_item_bookmark: |             case R.id.menu_item_bookmark: | ||||||
|                 onBookmarkClicked(); |                 onBookmarkClicked(); | ||||||
|                 break; |                 break; | ||||||
|  |             case R.id.menu_item_append_playlist: | ||||||
|  |                 disposables.add(PlaylistDialog.createCorrespondingDialog( | ||||||
|  |                         getContext(), | ||||||
|  |                         getPlayQueue() | ||||||
|  |                                 .getStreams() | ||||||
|  |                                 .stream() | ||||||
|  |                                 .map(StreamEntity::new) | ||||||
|  |                                 .collect(Collectors.toList()), | ||||||
|  |                         dialog -> dialog.show(getFM(), TAG) | ||||||
|  |                 )); | ||||||
|  |                 break; | ||||||
|             default: |             default: | ||||||
|                 return super.onOptionsItemSelected(item); |                 return super.onOptionsItemSelected(item); | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -28,4 +28,10 @@ | |||||||
|         android:orderInCategory="2" |         android:orderInCategory="2" | ||||||
|         android:title="@string/open_in_browser" |         android:title="@string/open_in_browser" | ||||||
|         app:showAsAction="never" /> |         app:showAsAction="never" /> | ||||||
|  |  | ||||||
|  |     <item | ||||||
|  |         android:id="@+id/menu_item_append_playlist" | ||||||
|  |         android:orderInCategory="3" | ||||||
|  |         android:title="@string/add_to_playlist" | ||||||
|  |         app:showAsAction="never" /> | ||||||
| </menu> | </menu> | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Stypox
					Stypox