diff --git a/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt b/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt index 72cd3cf7c..9e1e19fff 100644 --- a/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt +++ b/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt @@ -41,7 +41,6 @@ import org.schabi.newpipe.local.subscription.SubscriptionViewModel.SubscriptionS import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog import org.schabi.newpipe.local.subscription.dialog.FeedGroupReorderDialog import org.schabi.newpipe.local.subscription.item.ChannelItem -import org.schabi.newpipe.local.subscription.item.EmptyPlaceholderItem import org.schabi.newpipe.local.subscription.item.FeedGroupAddNewGridItem import org.schabi.newpipe.local.subscription.item.FeedGroupAddNewItem import org.schabi.newpipe.local.subscription.item.FeedGroupCardGridItem @@ -49,6 +48,7 @@ import org.schabi.newpipe.local.subscription.item.FeedGroupCardItem import org.schabi.newpipe.local.subscription.item.FeedGroupCarouselItem import org.schabi.newpipe.local.subscription.item.GroupsHeader import org.schabi.newpipe.local.subscription.item.Header +import org.schabi.newpipe.local.subscription.item.ImportSubscriptionsHintPlaceholderItem import org.schabi.newpipe.local.subscription.services.SubscriptionsExportService import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService import org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.KEY_MODE @@ -312,7 +312,7 @@ class SubscriptionFragment : BaseStateFragment() { groupAdapter.add(this) } - subscriptionsSection.setPlaceholder(EmptyPlaceholderItem()) + subscriptionsSection.setPlaceholder(ImportSubscriptionsHintPlaceholderItem()) subscriptionsSection.setHideWhenEmpty(true) groupAdapter.add( diff --git a/app/src/main/java/org/schabi/newpipe/local/subscription/dialog/FeedGroupDialog.kt b/app/src/main/java/org/schabi/newpipe/local/subscription/dialog/FeedGroupDialog.kt index 4b3c4ccc0..19c581c08 100644 --- a/app/src/main/java/org/schabi/newpipe/local/subscription/dialog/FeedGroupDialog.kt +++ b/app/src/main/java/org/schabi/newpipe/local/subscription/dialog/FeedGroupDialog.kt @@ -35,7 +35,7 @@ import org.schabi.newpipe.local.subscription.dialog.FeedGroupDialog.ScreenState. 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.SuccessEvent -import org.schabi.newpipe.local.subscription.item.EmptyPlaceholderItem +import org.schabi.newpipe.local.subscription.item.ImportSubscriptionsHintPlaceholderItem import org.schabi.newpipe.local.subscription.item.PickerIconItem import org.schabi.newpipe.local.subscription.item.PickerSubscriptionItem import org.schabi.newpipe.util.DeviceUtils @@ -338,7 +338,7 @@ class FeedGroupDialog : DialogFragment(), BackPressable { if (subscriptions.isEmpty()) { subscriptionEmptyFooter.clear() - subscriptionEmptyFooter.add(EmptyPlaceholderItem()) + subscriptionEmptyFooter.add(ImportSubscriptionsHintPlaceholderItem()) } else { subscriptionEmptyFooter.clear() } diff --git a/app/src/main/java/org/schabi/newpipe/local/subscription/item/EmptyPlaceholderItem.kt b/app/src/main/java/org/schabi/newpipe/local/subscription/item/ImportSubscriptionsHintPlaceholderItem.kt similarity index 63% rename from app/src/main/java/org/schabi/newpipe/local/subscription/item/EmptyPlaceholderItem.kt rename to app/src/main/java/org/schabi/newpipe/local/subscription/item/ImportSubscriptionsHintPlaceholderItem.kt index 59bef55cf..93b551895 100644 --- a/app/src/main/java/org/schabi/newpipe/local/subscription/item/EmptyPlaceholderItem.kt +++ b/app/src/main/java/org/schabi/newpipe/local/subscription/item/ImportSubscriptionsHintPlaceholderItem.kt @@ -5,8 +5,11 @@ import com.xwray.groupie.viewbinding.BindableItem import org.schabi.newpipe.R import org.schabi.newpipe.databinding.ListEmptyViewBinding -class EmptyPlaceholderItem : BindableItem() { - override fun getLayout(): Int = R.layout.list_empty_view +/** + * When there are no subscriptions, show a hint to the user about how to import subscriptions + */ +class ImportSubscriptionsHintPlaceholderItem : BindableItem() { + override fun getLayout(): Int = R.layout.list_empty_view_subscriptions override fun bind(viewBinding: ListEmptyViewBinding, position: Int) {} override fun getSpanSize(spanCount: Int, position: Int): Int = spanCount override fun initializeViewBinding(view: View) = ListEmptyViewBinding.bind(view) diff --git a/app/src/main/res/layout/list_empty_view_subscriptions.xml b/app/src/main/res/layout/list_empty_view_subscriptions.xml new file mode 100644 index 000000000..31e91129b --- /dev/null +++ b/app/src/main/res/layout/list_empty_view_subscriptions.xml @@ -0,0 +1,23 @@ + + + + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 31e1d736d..0980c7be5 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -266,6 +266,7 @@ Description No results Nothing here but crickets + Import or export subscriptions from the 3-dot menu Drag to reorder Video Audio