Fix new user crash, show/hide subscription settings button on change, raise import limit to 90

This commit is contained in:
Kelvin 2023-11-02 23:22:42 +01:00
commit e6997004ff
4 changed files with 12 additions and 2 deletions

View file

@ -170,6 +170,10 @@ class ChannelFragment : MainFragment() {
_buttonSubscribe.onSubscribed.subscribe { _buttonSubscribe.onSubscribed.subscribe {
UISlideOverlays.showSubscriptionOptionsOverlay(it, _overlayContainer); UISlideOverlays.showSubscriptionOptionsOverlay(it, _overlayContainer);
_buttonSubscriptionSettings.visibility = if(_buttonSubscribe.isSubscribed) View.VISIBLE else View.GONE;
}
_buttonSubscribe.onUnSubscribed.subscribe {
_buttonSubscriptionSettings.visibility = if(_buttonSubscribe.isSubscribed) View.VISIBLE else View.GONE;
} }
_buttonSubscriptionSettings.setOnClickListener { _buttonSubscriptionSettings.setOnClickListener {

View file

@ -210,7 +210,7 @@ class ImportSubscriptionsFragment : MainFragment() {
companion object { companion object {
val TAG = "ImportSubscriptionsFragment"; val TAG = "ImportSubscriptionsFragment";
private const val MAXIMUM_BATCH_SIZE = 75; private const val MAXIMUM_BATCH_SIZE = 90;
fun newInstance() = ImportSubscriptionsFragment().apply {} fun newInstance() = ImportSubscriptionsFragment().apply {}
} }
} }

View file

@ -77,7 +77,11 @@ class StateSubscriptions {
val onSubscriptionsChanged = Event2<List<Subscription>, Boolean>(); val onSubscriptionsChanged = Event2<List<Subscription>, Boolean>();
fun getOldestUpdateTime(): OffsetDateTime { fun getOldestUpdateTime(): OffsetDateTime {
return getSubscriptions().minOf { it.lastVideoUpdate }; val subs = getSubscriptions();
if(subs.size == 0)
return OffsetDateTime.now();
else
return subs.minOf { it.lastVideoUpdate };
} }
fun getGlobalSubscriptionProgress(): Pair<Int, Int> { fun getGlobalSubscriptionProgress(): Pair<Int, Int> {
return Pair(_lastGlobalSubscriptionProgress, _lastGlobalSubscriptionTotal); return Pair(_lastGlobalSubscriptionProgress, _lastGlobalSubscriptionTotal);

View file

@ -36,6 +36,7 @@ class SubscribeButton : LinearLayout {
} else { null }; } else { null };
val onSubscribed = Event1<Subscription>(); val onSubscribed = Event1<Subscription>();
val onUnSubscribed = Event1<String>();
constructor(context: Context, attrs: AttributeSet) : super(context, attrs) { constructor(context: Context, attrs: AttributeSet) : super(context, attrs) {
@ -82,6 +83,7 @@ class SubscribeButton : LinearLayout {
if (removed != null) if (removed != null)
UIDialogs.toast(context, context.getString(R.string.unsubscribed_from) + removed.channel.name); UIDialogs.toast(context, context.getString(R.string.unsubscribed_from) + removed.channel.name);
setIsSubscribed(false); setIsSubscribed(false);
onUnSubscribed.emit(url);
} }
fun setSubscribeChannel(url: String) { fun setSubscribeChannel(url: String) {