mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 07:13:00 +00:00 
			
		
		
		
	Optimize imports
This commit is contained in:
		| @@ -43,15 +43,15 @@ import org.schabi.newpipe.player.playqueue.PlayQueue; | |||||||
| import org.schabi.newpipe.player.playqueue.PlaylistPlayQueue; | import org.schabi.newpipe.player.playqueue.PlaylistPlayQueue; | ||||||
| import org.schabi.newpipe.player.playqueue.SinglePlayQueue; | import org.schabi.newpipe.player.playqueue.SinglePlayQueue; | ||||||
| import org.schabi.newpipe.report.UserAction; | import org.schabi.newpipe.report.UserAction; | ||||||
|  | import org.schabi.newpipe.util.AndroidTvUtils; | ||||||
| import org.schabi.newpipe.util.Constants; | import org.schabi.newpipe.util.Constants; | ||||||
| import org.schabi.newpipe.util.ExtractorHelper; | import org.schabi.newpipe.util.ExtractorHelper; | ||||||
| import org.schabi.newpipe.util.AndroidTvUtils; |  | ||||||
| import org.schabi.newpipe.util.ListHelper; | import org.schabi.newpipe.util.ListHelper; | ||||||
| import org.schabi.newpipe.util.NavigationHelper; | import org.schabi.newpipe.util.NavigationHelper; | ||||||
| import org.schabi.newpipe.util.PermissionHelper; | import org.schabi.newpipe.util.PermissionHelper; | ||||||
| import org.schabi.newpipe.util.ThemeHelper; | import org.schabi.newpipe.util.ThemeHelper; | ||||||
| import org.schabi.newpipe.views.FocusOverlayView; |  | ||||||
| import org.schabi.newpipe.util.urlfinder.UrlFinder; | import org.schabi.newpipe.util.urlfinder.UrlFinder; | ||||||
|  | import org.schabi.newpipe.views.FocusOverlayView; | ||||||
|  |  | ||||||
| import java.io.Serializable; | import java.io.Serializable; | ||||||
| import java.util.ArrayList; | import java.util.ArrayList; | ||||||
|   | |||||||
| @@ -1,12 +1,17 @@ | |||||||
| package org.schabi.newpipe.database.feed.dao | package org.schabi.newpipe.database.feed.dao | ||||||
|  |  | ||||||
| import androidx.room.* | import androidx.room.Dao | ||||||
|  | import androidx.room.Insert | ||||||
|  | import androidx.room.OnConflictStrategy | ||||||
|  | import androidx.room.Query | ||||||
|  | import androidx.room.Transaction | ||||||
|  | import androidx.room.Update | ||||||
| import io.reactivex.Flowable | import io.reactivex.Flowable | ||||||
| import org.schabi.newpipe.database.feed.model.FeedEntity | import org.schabi.newpipe.database.feed.model.FeedEntity | ||||||
| import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity | import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity | ||||||
| import org.schabi.newpipe.database.stream.model.StreamEntity | import org.schabi.newpipe.database.stream.model.StreamEntity | ||||||
| import org.schabi.newpipe.database.subscription.SubscriptionEntity | import org.schabi.newpipe.database.subscription.SubscriptionEntity | ||||||
| import java.util.* | import java.util.Date | ||||||
|  |  | ||||||
| @Dao | @Dao | ||||||
| abstract class FeedDAO { | abstract class FeedDAO { | ||||||
|   | |||||||
| @@ -1,6 +1,11 @@ | |||||||
| package org.schabi.newpipe.database.feed.dao | package org.schabi.newpipe.database.feed.dao | ||||||
|  |  | ||||||
| import androidx.room.* | import androidx.room.Dao | ||||||
|  | import androidx.room.Insert | ||||||
|  | import androidx.room.OnConflictStrategy | ||||||
|  | import androidx.room.Query | ||||||
|  | import androidx.room.Transaction | ||||||
|  | import androidx.room.Update | ||||||
| import io.reactivex.Flowable | import io.reactivex.Flowable | ||||||
| import io.reactivex.Maybe | import io.reactivex.Maybe | ||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
|   | |||||||
| @@ -7,7 +7,7 @@ import androidx.room.PrimaryKey | |||||||
| import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity.Companion.FEED_LAST_UPDATED_TABLE | import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity.Companion.FEED_LAST_UPDATED_TABLE | ||||||
| import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity.Companion.SUBSCRIPTION_ID | import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity.Companion.SUBSCRIPTION_ID | ||||||
| import org.schabi.newpipe.database.subscription.SubscriptionEntity | import org.schabi.newpipe.database.subscription.SubscriptionEntity | ||||||
| import java.util.* | import java.util.Date | ||||||
|  |  | ||||||
| @Entity( | @Entity( | ||||||
|         tableName = FEED_LAST_UPDATED_TABLE, |         tableName = FEED_LAST_UPDATED_TABLE, | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ package org.schabi.newpipe.database.history.model | |||||||
| import androidx.room.ColumnInfo | import androidx.room.ColumnInfo | ||||||
| import androidx.room.Embedded | import androidx.room.Embedded | ||||||
| import org.schabi.newpipe.database.stream.model.StreamEntity | import org.schabi.newpipe.database.stream.model.StreamEntity | ||||||
| import java.util.* | import java.util.Date | ||||||
|  |  | ||||||
| data class StreamHistoryEntry( | data class StreamHistoryEntry( | ||||||
|         @Embedded |         @Embedded | ||||||
|   | |||||||
| @@ -6,7 +6,7 @@ import org.schabi.newpipe.database.LocalItem | |||||||
| import org.schabi.newpipe.database.history.model.StreamHistoryEntity | import org.schabi.newpipe.database.history.model.StreamHistoryEntity | ||||||
| import org.schabi.newpipe.database.stream.model.StreamEntity | import org.schabi.newpipe.database.stream.model.StreamEntity | ||||||
| import org.schabi.newpipe.extractor.stream.StreamInfoItem | import org.schabi.newpipe.extractor.stream.StreamInfoItem | ||||||
| import java.util.* | import java.util.Date | ||||||
|  |  | ||||||
| class StreamStatisticsEntry( | class StreamStatisticsEntry( | ||||||
|         @Embedded |         @Embedded | ||||||
|   | |||||||
| @@ -1,6 +1,11 @@ | |||||||
| package org.schabi.newpipe.database.stream.dao | package org.schabi.newpipe.database.stream.dao | ||||||
|  |  | ||||||
| import androidx.room.* | import androidx.room.ColumnInfo | ||||||
|  | import androidx.room.Dao | ||||||
|  | import androidx.room.Insert | ||||||
|  | import androidx.room.OnConflictStrategy | ||||||
|  | import androidx.room.Query | ||||||
|  | import androidx.room.Transaction | ||||||
| import io.reactivex.Flowable | import io.reactivex.Flowable | ||||||
| import org.schabi.newpipe.database.BasicDAO | import org.schabi.newpipe.database.BasicDAO | ||||||
| import org.schabi.newpipe.database.stream.model.StreamEntity | import org.schabi.newpipe.database.stream.model.StreamEntity | ||||||
| @@ -8,8 +13,7 @@ import org.schabi.newpipe.database.stream.model.StreamEntity.Companion.STREAM_ID | |||||||
| import org.schabi.newpipe.extractor.stream.StreamType | import org.schabi.newpipe.extractor.stream.StreamType | ||||||
| import org.schabi.newpipe.extractor.stream.StreamType.AUDIO_LIVE_STREAM | import org.schabi.newpipe.extractor.stream.StreamType.AUDIO_LIVE_STREAM | ||||||
| import org.schabi.newpipe.extractor.stream.StreamType.LIVE_STREAM | import org.schabi.newpipe.extractor.stream.StreamType.LIVE_STREAM | ||||||
| import java.util.* | import java.util.Date | ||||||
| import kotlin.collections.ArrayList |  | ||||||
|  |  | ||||||
| @Dao | @Dao | ||||||
| abstract class StreamDAO : BasicDAO<StreamEntity> { | abstract class StreamDAO : BasicDAO<StreamEntity> { | ||||||
|   | |||||||
| @@ -1,6 +1,10 @@ | |||||||
| package org.schabi.newpipe.database.stream.model | package org.schabi.newpipe.database.stream.model | ||||||
|  |  | ||||||
| import androidx.room.* | import androidx.room.ColumnInfo | ||||||
|  | import androidx.room.Entity | ||||||
|  | import androidx.room.Ignore | ||||||
|  | import androidx.room.Index | ||||||
|  | import androidx.room.PrimaryKey | ||||||
| import org.schabi.newpipe.database.stream.model.StreamEntity.Companion.STREAM_SERVICE_ID | import org.schabi.newpipe.database.stream.model.StreamEntity.Companion.STREAM_SERVICE_ID | ||||||
| import org.schabi.newpipe.database.stream.model.StreamEntity.Companion.STREAM_TABLE | import org.schabi.newpipe.database.stream.model.StreamEntity.Companion.STREAM_TABLE | ||||||
| import org.schabi.newpipe.database.stream.model.StreamEntity.Companion.STREAM_URL | import org.schabi.newpipe.database.stream.model.StreamEntity.Companion.STREAM_URL | ||||||
| @@ -10,7 +14,8 @@ import org.schabi.newpipe.extractor.stream.StreamInfoItem | |||||||
| import org.schabi.newpipe.extractor.stream.StreamType | import org.schabi.newpipe.extractor.stream.StreamType | ||||||
| import org.schabi.newpipe.player.playqueue.PlayQueueItem | import org.schabi.newpipe.player.playqueue.PlayQueueItem | ||||||
| import java.io.Serializable | import java.io.Serializable | ||||||
| import java.util.* | import java.util.Calendar | ||||||
|  | import java.util.Date | ||||||
|  |  | ||||||
| @Entity(tableName = STREAM_TABLE, | @Entity(tableName = STREAM_TABLE, | ||||||
|         indices = [ |         indices = [ | ||||||
|   | |||||||
| @@ -1,6 +1,10 @@ | |||||||
| package org.schabi.newpipe.database.subscription | package org.schabi.newpipe.database.subscription | ||||||
|  |  | ||||||
| import androidx.room.* | import androidx.room.Dao | ||||||
|  | import androidx.room.Insert | ||||||
|  | import androidx.room.OnConflictStrategy | ||||||
|  | import androidx.room.Query | ||||||
|  | import androidx.room.Transaction | ||||||
| import io.reactivex.Flowable | import io.reactivex.Flowable | ||||||
| import io.reactivex.Maybe | import io.reactivex.Maybe | ||||||
| import org.schabi.newpipe.database.BasicDAO | import org.schabi.newpipe.database.BasicDAO | ||||||
|   | |||||||
| @@ -41,12 +41,12 @@ import org.schabi.newpipe.extractor.StreamingService; | |||||||
| import org.schabi.newpipe.extractor.exceptions.ParsingException; | import org.schabi.newpipe.extractor.exceptions.ParsingException; | ||||||
| import org.schabi.newpipe.extractor.search.SearchExtractor; | import org.schabi.newpipe.extractor.search.SearchExtractor; | ||||||
| import org.schabi.newpipe.extractor.search.SearchInfo; | import org.schabi.newpipe.extractor.search.SearchInfo; | ||||||
| import org.schabi.newpipe.util.AndroidTvUtils; |  | ||||||
| import org.schabi.newpipe.fragments.BackPressable; | import org.schabi.newpipe.fragments.BackPressable; | ||||||
| import org.schabi.newpipe.fragments.list.BaseListFragment; | import org.schabi.newpipe.fragments.list.BaseListFragment; | ||||||
| import org.schabi.newpipe.local.history.HistoryRecordManager; | import org.schabi.newpipe.local.history.HistoryRecordManager; | ||||||
| import org.schabi.newpipe.report.ErrorActivity; | import org.schabi.newpipe.report.ErrorActivity; | ||||||
| import org.schabi.newpipe.report.UserAction; | import org.schabi.newpipe.report.UserAction; | ||||||
|  | import org.schabi.newpipe.util.AndroidTvUtils; | ||||||
| import org.schabi.newpipe.util.AnimationUtils; | import org.schabi.newpipe.util.AnimationUtils; | ||||||
| import org.schabi.newpipe.util.Constants; | import org.schabi.newpipe.util.Constants; | ||||||
| import org.schabi.newpipe.util.ExtractorHelper; | import org.schabi.newpipe.util.ExtractorHelper; | ||||||
|   | |||||||
| @@ -16,8 +16,8 @@ import org.schabi.newpipe.database.stream.model.StreamEntity | |||||||
| import org.schabi.newpipe.extractor.stream.StreamInfoItem | import org.schabi.newpipe.extractor.stream.StreamInfoItem | ||||||
| import org.schabi.newpipe.extractor.stream.StreamType | import org.schabi.newpipe.extractor.stream.StreamType | ||||||
| import org.schabi.newpipe.local.subscription.FeedGroupIcon | import org.schabi.newpipe.local.subscription.FeedGroupIcon | ||||||
| import java.util.* | import java.util.Calendar | ||||||
| import kotlin.collections.ArrayList | import java.util.Date | ||||||
|  |  | ||||||
| class FeedDatabaseManager(context: Context) { | class FeedDatabaseManager(context: Context) { | ||||||
|     private val database = NewPipeDatabase.getInstance(context) |     private val database = NewPipeDatabase.getInstance(context) | ||||||
|   | |||||||
| @@ -22,14 +22,27 @@ package org.schabi.newpipe.local.feed | |||||||
| import android.content.Intent | import android.content.Intent | ||||||
| import android.os.Bundle | import android.os.Bundle | ||||||
| import android.os.Parcelable | import android.os.Parcelable | ||||||
| import android.view.* | import android.view.LayoutInflater | ||||||
|  | import android.view.Menu | ||||||
|  | import android.view.MenuInflater | ||||||
|  | import android.view.MenuItem | ||||||
|  | import android.view.View | ||||||
|  | import android.view.ViewGroup | ||||||
| import androidx.appcompat.app.AlertDialog | import androidx.appcompat.app.AlertDialog | ||||||
| import androidx.lifecycle.Observer | import androidx.lifecycle.Observer | ||||||
| import androidx.lifecycle.ViewModelProviders | import androidx.lifecycle.ViewModelProviders | ||||||
| import androidx.preference.PreferenceManager | import androidx.preference.PreferenceManager | ||||||
| import icepick.State | import icepick.State | ||||||
| import kotlinx.android.synthetic.main.error_retry.* | import kotlinx.android.synthetic.main.error_retry.error_button_retry | ||||||
| import kotlinx.android.synthetic.main.fragment_feed.* | import kotlinx.android.synthetic.main.error_retry.error_message_view | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.empty_state_view | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.error_panel | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.items_list | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.loading_progress_bar | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.loading_progress_text | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.refresh_root_view | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.refresh_subtitle_text | ||||||
|  | import kotlinx.android.synthetic.main.fragment_feed.refresh_text | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
| import org.schabi.newpipe.fragments.list.BaseListFragment | import org.schabi.newpipe.fragments.list.BaseListFragment | ||||||
| @@ -37,7 +50,7 @@ import org.schabi.newpipe.local.feed.service.FeedLoadService | |||||||
| import org.schabi.newpipe.report.UserAction | import org.schabi.newpipe.report.UserAction | ||||||
| import org.schabi.newpipe.util.AnimationUtils.animateView | import org.schabi.newpipe.util.AnimationUtils.animateView | ||||||
| import org.schabi.newpipe.util.Localization | import org.schabi.newpipe.util.Localization | ||||||
| import java.util.* | import java.util.Calendar | ||||||
|  |  | ||||||
| class FeedFragment : BaseListFragment<FeedState, Unit>() { | class FeedFragment : BaseListFragment<FeedState, Unit>() { | ||||||
|     private lateinit var viewModel: FeedViewModel |     private lateinit var viewModel: FeedViewModel | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ package org.schabi.newpipe.local.feed | |||||||
|  |  | ||||||
| import androidx.annotation.StringRes | import androidx.annotation.StringRes | ||||||
| import org.schabi.newpipe.extractor.stream.StreamInfoItem | import org.schabi.newpipe.extractor.stream.StreamInfoItem | ||||||
| import java.util.* | import java.util.Calendar | ||||||
|  |  | ||||||
| sealed class FeedState { | sealed class FeedState { | ||||||
|     data class ProgressState( |     data class ProgressState( | ||||||
|   | |||||||
| @@ -12,9 +12,13 @@ import io.reactivex.schedulers.Schedulers | |||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
| import org.schabi.newpipe.extractor.stream.StreamInfoItem | import org.schabi.newpipe.extractor.stream.StreamInfoItem | ||||||
| import org.schabi.newpipe.local.feed.service.FeedEventManager | import org.schabi.newpipe.local.feed.service.FeedEventManager | ||||||
| import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.* | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.ErrorResultEvent | ||||||
|  | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.IdleEvent | ||||||
|  | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.ProgressEvent | ||||||
|  | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.SuccessResultEvent | ||||||
| import org.schabi.newpipe.util.DEFAULT_THROTTLE_TIMEOUT | import org.schabi.newpipe.util.DEFAULT_THROTTLE_TIMEOUT | ||||||
| import java.util.* | import java.util.Calendar | ||||||
|  | import java.util.Date | ||||||
| import java.util.concurrent.TimeUnit | import java.util.concurrent.TimeUnit | ||||||
|  |  | ||||||
| class FeedViewModel(applicationContext: Context, val groupId: Long = FeedGroupEntity.GROUP_ALL_ID) : ViewModel() { | class FeedViewModel(applicationContext: Context, val groupId: Long = FeedGroupEntity.GROUP_ALL_ID) : ViewModel() { | ||||||
|   | |||||||
| @@ -49,17 +49,19 @@ import org.schabi.newpipe.extractor.ListInfo | |||||||
| import org.schabi.newpipe.extractor.exceptions.ReCaptchaException | import org.schabi.newpipe.extractor.exceptions.ReCaptchaException | ||||||
| import org.schabi.newpipe.extractor.stream.StreamInfoItem | import org.schabi.newpipe.extractor.stream.StreamInfoItem | ||||||
| import org.schabi.newpipe.local.feed.FeedDatabaseManager | import org.schabi.newpipe.local.feed.FeedDatabaseManager | ||||||
| import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.* | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.ErrorResultEvent | ||||||
|  | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.IdleEvent | ||||||
|  | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.ProgressEvent | ||||||
|  | import org.schabi.newpipe.local.feed.service.FeedEventManager.Event.SuccessResultEvent | ||||||
| import org.schabi.newpipe.local.feed.service.FeedEventManager.postEvent | import org.schabi.newpipe.local.feed.service.FeedEventManager.postEvent | ||||||
| import org.schabi.newpipe.local.subscription.SubscriptionManager | import org.schabi.newpipe.local.subscription.SubscriptionManager | ||||||
| import org.schabi.newpipe.util.ExceptionUtils | import org.schabi.newpipe.util.ExceptionUtils | ||||||
| import org.schabi.newpipe.util.ExtractorHelper | import org.schabi.newpipe.util.ExtractorHelper | ||||||
| import java.io.IOException | import java.io.IOException | ||||||
| import java.util.* | import java.util.Calendar | ||||||
| import java.util.concurrent.TimeUnit | import java.util.concurrent.TimeUnit | ||||||
| import java.util.concurrent.atomic.AtomicBoolean | import java.util.concurrent.atomic.AtomicBoolean | ||||||
| import java.util.concurrent.atomic.AtomicInteger | import java.util.concurrent.atomic.AtomicInteger | ||||||
| import kotlin.collections.ArrayList |  | ||||||
|  |  | ||||||
| class FeedLoadService : Service() { | class FeedLoadService : Service() { | ||||||
|     companion object { |     companion object { | ||||||
|   | |||||||
| @@ -2,13 +2,21 @@ package org.schabi.newpipe.local.subscription | |||||||
|  |  | ||||||
| import android.app.Activity | import android.app.Activity | ||||||
| import android.app.AlertDialog | import android.app.AlertDialog | ||||||
| import android.content.* | import android.content.BroadcastReceiver | ||||||
|  | import android.content.Context | ||||||
|  | import android.content.DialogInterface | ||||||
|  | import android.content.Intent | ||||||
|  | import android.content.IntentFilter | ||||||
| import android.content.res.Configuration | import android.content.res.Configuration | ||||||
| import android.os.Bundle | import android.os.Bundle | ||||||
| import android.os.Environment | import android.os.Environment | ||||||
| import android.os.Parcelable | import android.os.Parcelable | ||||||
| import android.preference.PreferenceManager | import android.preference.PreferenceManager | ||||||
| import android.view.* | import android.view.LayoutInflater | ||||||
|  | import android.view.Menu | ||||||
|  | import android.view.MenuInflater | ||||||
|  | import android.view.View | ||||||
|  | import android.view.ViewGroup | ||||||
| import android.widget.Toast | import android.widget.Toast | ||||||
| import androidx.lifecycle.ViewModelProviders | import androidx.lifecycle.ViewModelProviders | ||||||
| import androidx.localbroadcastmanager.content.LocalBroadcastManager | import androidx.localbroadcastmanager.content.LocalBroadcastManager | ||||||
| @@ -21,8 +29,9 @@ import com.xwray.groupie.Section | |||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import icepick.State | import icepick.State | ||||||
| import io.reactivex.disposables.CompositeDisposable | import io.reactivex.disposables.CompositeDisposable | ||||||
| import kotlinx.android.synthetic.main.dialog_title.view.* | import kotlinx.android.synthetic.main.dialog_title.view.itemAdditionalDetails | ||||||
| import kotlinx.android.synthetic.main.fragment_subscription.* | import kotlinx.android.synthetic.main.dialog_title.view.itemTitleView | ||||||
|  | import kotlinx.android.synthetic.main.fragment_subscription.items_list | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
| import org.schabi.newpipe.extractor.channel.ChannelInfoItem | import org.schabi.newpipe.extractor.channel.ChannelInfoItem | ||||||
| @@ -30,19 +39,33 @@ import org.schabi.newpipe.fragments.BaseStateFragment | |||||||
| import org.schabi.newpipe.local.subscription.SubscriptionViewModel.SubscriptionState | import org.schabi.newpipe.local.subscription.SubscriptionViewModel.SubscriptionState | ||||||
| import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog | import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog | ||||||
| import org.schabi.newpipe.local.subscription.dialog.FeedGroupReorderDialog | import org.schabi.newpipe.local.subscription.dialog.FeedGroupReorderDialog | ||||||
| import org.schabi.newpipe.local.subscription.item.* | import org.schabi.newpipe.local.subscription.item.ChannelItem | ||||||
|  | import org.schabi.newpipe.local.subscription.item.EmptyPlaceholderItem | ||||||
|  | import org.schabi.newpipe.local.subscription.item.FeedGroupAddItem | ||||||
|  | import org.schabi.newpipe.local.subscription.item.FeedGroupCardItem | ||||||
|  | import org.schabi.newpipe.local.subscription.item.FeedGroupCarouselItem | ||||||
|  | import org.schabi.newpipe.local.subscription.item.FeedImportExportItem | ||||||
|  | import org.schabi.newpipe.local.subscription.item.HeaderWithMenuItem | ||||||
| import org.schabi.newpipe.local.subscription.item.HeaderWithMenuItem.Companion.PAYLOAD_UPDATE_VISIBILITY_MENU_ITEM | import org.schabi.newpipe.local.subscription.item.HeaderWithMenuItem.Companion.PAYLOAD_UPDATE_VISIBILITY_MENU_ITEM | ||||||
| import org.schabi.newpipe.local.subscription.services.SubscriptionsExportService | import org.schabi.newpipe.local.subscription.services.SubscriptionsExportService | ||||||
| import org.schabi.newpipe.local.subscription.services.SubscriptionsExportService.EXPORT_COMPLETE_ACTION | import org.schabi.newpipe.local.subscription.services.SubscriptionsExportService.EXPORT_COMPLETE_ACTION | ||||||
| import org.schabi.newpipe.local.subscription.services.SubscriptionsExportService.KEY_FILE_PATH | import org.schabi.newpipe.local.subscription.services.SubscriptionsExportService.KEY_FILE_PATH | ||||||
| import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService | import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService | ||||||
| import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.* | import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.IMPORT_COMPLETE_ACTION | ||||||
|  | import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.KEY_MODE | ||||||
|  | import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.KEY_VALUE | ||||||
|  | import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.PREVIOUS_EXPORT_MODE | ||||||
| import org.schabi.newpipe.report.UserAction | import org.schabi.newpipe.report.UserAction | ||||||
| import org.schabi.newpipe.util.* |  | ||||||
| import org.schabi.newpipe.util.AnimationUtils.animateView | import org.schabi.newpipe.util.AnimationUtils.animateView | ||||||
|  | import org.schabi.newpipe.util.FilePickerActivityHelper | ||||||
|  | import org.schabi.newpipe.util.NavigationHelper | ||||||
|  | import org.schabi.newpipe.util.OnClickGesture | ||||||
|  | import org.schabi.newpipe.util.ShareUtils | ||||||
|  | import org.schabi.newpipe.util.ThemeHelper | ||||||
| import java.io.File | import java.io.File | ||||||
| import java.text.SimpleDateFormat | import java.text.SimpleDateFormat | ||||||
| import java.util.* | import java.util.Date | ||||||
|  | import java.util.Locale | ||||||
| import kotlin.math.floor | import kotlin.math.floor | ||||||
| import kotlin.math.max | import kotlin.math.max | ||||||
|  |  | ||||||
|   | |||||||
| @@ -22,12 +22,29 @@ import com.xwray.groupie.Section | |||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import icepick.Icepick | import icepick.Icepick | ||||||
| import icepick.State | import icepick.State | ||||||
| import kotlinx.android.synthetic.main.dialog_feed_group_create.* | import kotlinx.android.synthetic.main.dialog_feed_group_create.cancel_button | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.confirm_button | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.delete_button | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.delete_screen_message | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.group_name_input | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.group_name_input_container | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.icon_preview | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.icon_selector | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.options_root | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.select_channel_button | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.selected_subscription_count_view | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.separator | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.subscriptions_selector | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.subscriptions_selector_header_info | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_create.subscriptions_selector_list | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
| import org.schabi.newpipe.database.subscription.SubscriptionEntity | import org.schabi.newpipe.database.subscription.SubscriptionEntity | ||||||
| import org.schabi.newpipe.local.subscription.FeedGroupIcon | import org.schabi.newpipe.local.subscription.FeedGroupIcon | ||||||
| import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog.ScreenState.* | import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog.ScreenState.DeleteScreen | ||||||
|  | import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog.ScreenState.IconPickerScreen | ||||||
|  | import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog.ScreenState.InitialScreen | ||||||
|  | import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog.ScreenState.SubscriptionsPickerScreen | ||||||
| import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialogViewModel.DialogEvent.ProcessingEvent | import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialogViewModel.DialogEvent.ProcessingEvent | ||||||
| import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialogViewModel.DialogEvent.SuccessEvent | import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialogViewModel.DialogEvent.SuccessEvent | ||||||
| import org.schabi.newpipe.local.subscription.item.EmptyPlaceholderItem | import org.schabi.newpipe.local.subscription.item.EmptyPlaceholderItem | ||||||
|   | |||||||
| @@ -16,15 +16,15 @@ import com.xwray.groupie.TouchCallback | |||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import icepick.Icepick | import icepick.Icepick | ||||||
| import icepick.State | import icepick.State | ||||||
| import kotlinx.android.synthetic.main.dialog_feed_group_reorder.* | import kotlinx.android.synthetic.main.dialog_feed_group_reorder.confirm_button | ||||||
|  | import kotlinx.android.synthetic.main.dialog_feed_group_reorder.feed_groups_list | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
| import org.schabi.newpipe.local.subscription.dialog.FeedGroupReorderDialogViewModel.DialogEvent.ProcessingEvent | import org.schabi.newpipe.local.subscription.dialog.FeedGroupReorderDialogViewModel.DialogEvent.ProcessingEvent | ||||||
| import org.schabi.newpipe.local.subscription.dialog.FeedGroupReorderDialogViewModel.DialogEvent.SuccessEvent | import org.schabi.newpipe.local.subscription.dialog.FeedGroupReorderDialogViewModel.DialogEvent.SuccessEvent | ||||||
| import org.schabi.newpipe.local.subscription.item.FeedGroupReorderItem | import org.schabi.newpipe.local.subscription.item.FeedGroupReorderItem | ||||||
| import org.schabi.newpipe.util.ThemeHelper | import org.schabi.newpipe.util.ThemeHelper | ||||||
| import java.util.* | import java.util.Collections | ||||||
| import kotlin.collections.ArrayList |  | ||||||
|  |  | ||||||
| class FeedGroupReorderDialog : DialogFragment() { | class FeedGroupReorderDialog : DialogFragment() { | ||||||
|     private lateinit var viewModel: FeedGroupReorderDialogViewModel |     private lateinit var viewModel: FeedGroupReorderDialogViewModel | ||||||
|   | |||||||
| @@ -4,7 +4,10 @@ import android.content.Context | |||||||
| import com.nostra13.universalimageloader.core.ImageLoader | import com.nostra13.universalimageloader.core.ImageLoader | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.list_channel_item.* | import kotlinx.android.synthetic.main.list_channel_item.itemAdditionalDetails | ||||||
|  | import kotlinx.android.synthetic.main.list_channel_item.itemChannelDescriptionView | ||||||
|  | import kotlinx.android.synthetic.main.list_channel_item.itemThumbnailView | ||||||
|  | import kotlinx.android.synthetic.main.list_channel_item.itemTitleView | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.extractor.channel.ChannelInfoItem | import org.schabi.newpipe.extractor.channel.ChannelInfoItem | ||||||
| import org.schabi.newpipe.util.ImageDisplayConstants | import org.schabi.newpipe.util.ImageDisplayConstants | ||||||
|   | |||||||
| @@ -2,7 +2,8 @@ package org.schabi.newpipe.local.subscription.item | |||||||
|  |  | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.feed_group_card_item.* | import kotlinx.android.synthetic.main.feed_group_card_item.icon | ||||||
|  | import kotlinx.android.synthetic.main.feed_group_card_item.title | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
| import org.schabi.newpipe.local.subscription.FeedGroupIcon | import org.schabi.newpipe.local.subscription.FeedGroupIcon | ||||||
|   | |||||||
| @@ -8,7 +8,7 @@ import androidx.recyclerview.widget.RecyclerView | |||||||
| import com.xwray.groupie.GroupAdapter | import com.xwray.groupie.GroupAdapter | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.feed_item_carousel.* | import kotlinx.android.synthetic.main.feed_item_carousel.recycler_view | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.local.subscription.decoration.FeedGroupCarouselDecoration | import org.schabi.newpipe.local.subscription.decoration.FeedGroupCarouselDecoration | ||||||
|  |  | ||||||
|   | |||||||
| @@ -6,7 +6,9 @@ import androidx.recyclerview.widget.ItemTouchHelper.DOWN | |||||||
| import androidx.recyclerview.widget.ItemTouchHelper.UP | import androidx.recyclerview.widget.ItemTouchHelper.UP | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.feed_group_reorder_item.* | import kotlinx.android.synthetic.main.feed_group_reorder_item.group_icon | ||||||
|  | import kotlinx.android.synthetic.main.feed_group_reorder_item.group_name | ||||||
|  | import kotlinx.android.synthetic.main.feed_group_reorder_item.handle | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.database.feed.model.FeedGroupEntity | import org.schabi.newpipe.database.feed.model.FeedGroupEntity | ||||||
| import org.schabi.newpipe.local.subscription.FeedGroupIcon | import org.schabi.newpipe.local.subscription.FeedGroupIcon | ||||||
|   | |||||||
| @@ -9,7 +9,11 @@ import android.widget.TextView | |||||||
| import androidx.annotation.DrawableRes | import androidx.annotation.DrawableRes | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.feed_import_export_group.* | import kotlinx.android.synthetic.main.feed_import_export_group.export_to_options | ||||||
|  | import kotlinx.android.synthetic.main.feed_import_export_group.import_export | ||||||
|  | import kotlinx.android.synthetic.main.feed_import_export_group.import_export_expand_icon | ||||||
|  | import kotlinx.android.synthetic.main.feed_import_export_group.import_export_options | ||||||
|  | import kotlinx.android.synthetic.main.feed_import_export_group.import_from_options | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.extractor.NewPipe | import org.schabi.newpipe.extractor.NewPipe | ||||||
| import org.schabi.newpipe.extractor.exceptions.ExtractionException | import org.schabi.newpipe.extractor.exceptions.ExtractionException | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ package org.schabi.newpipe.local.subscription.item | |||||||
| import android.view.View.OnClickListener | import android.view.View.OnClickListener | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.header_item.* | import kotlinx.android.synthetic.main.header_item.header_title | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
|  |  | ||||||
| class HeaderItem(val title: String, private val onClickListener: (() -> Unit)? = null) : Item() { | class HeaderItem(val title: String, private val onClickListener: (() -> Unit)? = null) : Item() { | ||||||
|   | |||||||
| @@ -1,10 +1,13 @@ | |||||||
| package org.schabi.newpipe.local.subscription.item | package org.schabi.newpipe.local.subscription.item | ||||||
|  |  | ||||||
| import android.view.View.* | import android.view.View.GONE | ||||||
|  | import android.view.View.OnClickListener | ||||||
|  | import android.view.View.VISIBLE | ||||||
| import androidx.annotation.DrawableRes | import androidx.annotation.DrawableRes | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.header_with_menu_item.* | import kotlinx.android.synthetic.main.header_with_menu_item.header_menu_item | ||||||
|  | import kotlinx.android.synthetic.main.header_with_menu_item.header_title | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
|  |  | ||||||
| class HeaderWithMenuItem( | class HeaderWithMenuItem( | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ import android.content.Context | |||||||
| import androidx.annotation.DrawableRes | import androidx.annotation.DrawableRes | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.picker_icon_item.* | import kotlinx.android.synthetic.main.picker_icon_item.icon_view | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.local.subscription.FeedGroupIcon | import org.schabi.newpipe.local.subscription.FeedGroupIcon | ||||||
|  |  | ||||||
|   | |||||||
| @@ -5,7 +5,9 @@ import com.nostra13.universalimageloader.core.DisplayImageOptions | |||||||
| import com.nostra13.universalimageloader.core.ImageLoader | import com.nostra13.universalimageloader.core.ImageLoader | ||||||
| import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | import com.xwray.groupie.kotlinandroidextensions.GroupieViewHolder | ||||||
| import com.xwray.groupie.kotlinandroidextensions.Item | import com.xwray.groupie.kotlinandroidextensions.Item | ||||||
| import kotlinx.android.synthetic.main.picker_subscription_item.* | import kotlinx.android.synthetic.main.picker_subscription_item.selected_highlight | ||||||
|  | import kotlinx.android.synthetic.main.picker_subscription_item.thumbnail_view | ||||||
|  | import kotlinx.android.synthetic.main.picker_subscription_item.title_view | ||||||
| import org.schabi.newpipe.R | import org.schabi.newpipe.R | ||||||
| import org.schabi.newpipe.database.subscription.SubscriptionEntity | import org.schabi.newpipe.database.subscription.SubscriptionEntity | ||||||
| import org.schabi.newpipe.util.AnimationUtils | import org.schabi.newpipe.util.AnimationUtils | ||||||
|   | |||||||
| @@ -80,8 +80,8 @@ import org.schabi.newpipe.player.playqueue.PlayQueueItemHolder; | |||||||
| import org.schabi.newpipe.player.playqueue.PlayQueueItemTouchCallback; | import org.schabi.newpipe.player.playqueue.PlayQueueItemTouchCallback; | ||||||
| import org.schabi.newpipe.player.resolver.MediaSourceTag; | import org.schabi.newpipe.player.resolver.MediaSourceTag; | ||||||
| import org.schabi.newpipe.player.resolver.VideoPlaybackResolver; | import org.schabi.newpipe.player.resolver.VideoPlaybackResolver; | ||||||
| import org.schabi.newpipe.util.AnimationUtils; |  | ||||||
| import org.schabi.newpipe.util.AndroidTvUtils; | import org.schabi.newpipe.util.AndroidTvUtils; | ||||||
|  | import org.schabi.newpipe.util.AnimationUtils; | ||||||
| import org.schabi.newpipe.util.KoreUtil; | import org.schabi.newpipe.util.KoreUtil; | ||||||
| import org.schabi.newpipe.util.ListHelper; | import org.schabi.newpipe.util.ListHelper; | ||||||
| import org.schabi.newpipe.util.NavigationHelper; | import org.schabi.newpipe.util.NavigationHelper; | ||||||
|   | |||||||
| @@ -5,8 +5,8 @@ import org.schabi.newpipe.streams.Mp4DashReader.Mdia; | |||||||
| import org.schabi.newpipe.streams.Mp4DashReader.Mp4DashChunk; | import org.schabi.newpipe.streams.Mp4DashReader.Mp4DashChunk; | ||||||
| import org.schabi.newpipe.streams.Mp4DashReader.Mp4DashSample; | import org.schabi.newpipe.streams.Mp4DashReader.Mp4DashSample; | ||||||
| import org.schabi.newpipe.streams.Mp4DashReader.Mp4Track; | import org.schabi.newpipe.streams.Mp4DashReader.Mp4Track; | ||||||
| import org.schabi.newpipe.streams.Mp4DashReader.TrunEntry; |  | ||||||
| import org.schabi.newpipe.streams.Mp4DashReader.TrackKind; | import org.schabi.newpipe.streams.Mp4DashReader.TrackKind; | ||||||
|  | import org.schabi.newpipe.streams.Mp4DashReader.TrunEntry; | ||||||
| import org.schabi.newpipe.streams.io.SharpStream; | import org.schabi.newpipe.streams.io.SharpStream; | ||||||
|  |  | ||||||
| import java.io.IOException; | import java.io.IOException; | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ import android.view.ViewTreeObserver; | |||||||
| import android.widget.SeekBar; | import android.widget.SeekBar; | ||||||
|  |  | ||||||
| import androidx.appcompat.widget.AppCompatSeekBar; | import androidx.appcompat.widget.AppCompatSeekBar; | ||||||
|  |  | ||||||
| import org.schabi.newpipe.util.AndroidTvUtils; | import org.schabi.newpipe.util.AndroidTvUtils; | ||||||
|  |  | ||||||
| /** | /** | ||||||
|   | |||||||
| @@ -6,8 +6,8 @@ import android.system.ErrnoException; | |||||||
| import android.system.OsConstants; | import android.system.OsConstants; | ||||||
| import android.util.Log; | import android.util.Log; | ||||||
|  |  | ||||||
| import androidx.annotation.Nullable; |  | ||||||
| import androidx.annotation.NonNull; | import androidx.annotation.NonNull; | ||||||
|  | import androidx.annotation.Nullable; | ||||||
|  |  | ||||||
| import org.schabi.newpipe.DownloaderImpl; | import org.schabi.newpipe.DownloaderImpl; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -6,9 +6,10 @@ import android.database.Cursor; | |||||||
| import android.database.sqlite.SQLiteDatabase; | import android.database.sqlite.SQLiteDatabase; | ||||||
| import android.database.sqlite.SQLiteOpenHelper; | import android.database.sqlite.SQLiteOpenHelper; | ||||||
| import android.net.Uri; | import android.net.Uri; | ||||||
| import androidx.annotation.NonNull; |  | ||||||
| import android.util.Log; | import android.util.Log; | ||||||
|  |  | ||||||
|  | import androidx.annotation.NonNull; | ||||||
|  |  | ||||||
| import java.io.File; | import java.io.File; | ||||||
| import java.util.ArrayList; | import java.util.ArrayList; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -3,9 +3,10 @@ package us.shandian.giga.io; | |||||||
| import android.content.ContentResolver; | import android.content.ContentResolver; | ||||||
| import android.net.Uri; | import android.net.Uri; | ||||||
| import android.os.ParcelFileDescriptor; | import android.os.ParcelFileDescriptor; | ||||||
| import androidx.annotation.NonNull; |  | ||||||
| import android.util.Log; | import android.util.Log; | ||||||
|  |  | ||||||
|  | import androidx.annotation.NonNull; | ||||||
|  |  | ||||||
| import org.schabi.newpipe.streams.io.SharpStream; | import org.schabi.newpipe.streams.io.SharpStream; | ||||||
|  |  | ||||||
| import java.io.FileInputStream; | import java.io.FileInputStream; | ||||||
|   | |||||||
| @@ -8,6 +8,7 @@ import android.database.Cursor; | |||||||
| import android.net.Uri; | import android.net.Uri; | ||||||
| import android.os.Build; | import android.os.Build; | ||||||
| import android.provider.DocumentsContract; | import android.provider.DocumentsContract; | ||||||
|  |  | ||||||
| import androidx.annotation.NonNull; | import androidx.annotation.NonNull; | ||||||
| import androidx.annotation.Nullable; | import androidx.annotation.Nullable; | ||||||
| import androidx.documentfile.provider.DocumentFile; | import androidx.documentfile.provider.DocumentFile; | ||||||
|   | |||||||
| @@ -7,10 +7,11 @@ import android.content.Intent; | |||||||
| import android.net.Uri; | import android.net.Uri; | ||||||
| import android.os.Build; | import android.os.Build; | ||||||
| import android.provider.DocumentsContract; | import android.provider.DocumentsContract; | ||||||
|  |  | ||||||
| import androidx.annotation.NonNull; | import androidx.annotation.NonNull; | ||||||
| import androidx.annotation.Nullable; | import androidx.annotation.Nullable; | ||||||
| import androidx.fragment.app.Fragment; |  | ||||||
| import androidx.documentfile.provider.DocumentFile; | import androidx.documentfile.provider.DocumentFile; | ||||||
|  | import androidx.fragment.app.Fragment; | ||||||
|  |  | ||||||
| import org.schabi.newpipe.streams.io.SharpStream; | import org.schabi.newpipe.streams.io.SharpStream; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,7 @@ | |||||||
| package us.shandian.giga.ui.common; | package us.shandian.giga.ui.common; | ||||||
|  |  | ||||||
| import android.os.Bundle; | import android.os.Bundle; | ||||||
|  |  | ||||||
| import androidx.appcompat.app.AppCompatActivity; | import androidx.appcompat.app.AppCompatActivity; | ||||||
| import androidx.appcompat.widget.Toolbar; | import androidx.appcompat.widget.Toolbar; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -17,7 +17,6 @@ import android.view.Menu; | |||||||
| import android.view.MenuItem; | import android.view.MenuItem; | ||||||
| import android.view.View; | import android.view.View; | ||||||
| import android.view.ViewGroup; | import android.view.ViewGroup; | ||||||
| import android.widget.CheckBox; |  | ||||||
| import android.widget.Toast; | import android.widget.Toast; | ||||||
|  |  | ||||||
| import androidx.annotation.NonNull; | import androidx.annotation.NonNull; | ||||||
|   | |||||||
| @@ -1,7 +1,6 @@ | |||||||
| <?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||||||
| <menu xmlns:android="http://schemas.android.com/apk/res/android" | <menu xmlns:android="http://schemas.android.com/apk/res/android" | ||||||
|     xmlns:app="http://schemas.android.com/apk/res-auto" |     xmlns:app="http://schemas.android.com/apk/res-auto"> | ||||||
|     xmlns:tools="http://schemas.android.com/tools"> |  | ||||||
|  |  | ||||||
|     <item |     <item | ||||||
|         android:id="@+id/menu_item_remove_watched" |         android:id="@+id/menu_item_remove_watched" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 wb9688
					wb9688