mirror of
https://codeberg.org/tom79/Fedilab.git
synced 2025-06-07 22:00:07 +03:00
Fix a crash when unpinning timelines
This commit is contained in:
parent
7bdc67f922
commit
cb947a7d3c
1 changed files with 10 additions and 0 deletions
|
@ -56,6 +56,7 @@ import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import app.fedilab.android.BaseMainActivity;
|
import app.fedilab.android.BaseMainActivity;
|
||||||
|
@ -328,12 +329,18 @@ public class PinnedTimelineHelper {
|
||||||
}
|
}
|
||||||
//Pinned tab position will start after BOTTOM_TIMELINE_COUNT (ie 5)
|
//Pinned tab position will start after BOTTOM_TIMELINE_COUNT (ie 5)
|
||||||
activityMainBinding.tabLayout.removeAllTabs();
|
activityMainBinding.tabLayout.removeAllTabs();
|
||||||
|
if(activityMainBinding.viewPager.getAdapter() != null) {
|
||||||
|
activityMainBinding.viewPager.getAdapter().notifyDataSetChanged();
|
||||||
|
}
|
||||||
int toRemove = FedilabPageAdapter.BOTTOM_TIMELINE_COUNT;
|
int toRemove = FedilabPageAdapter.BOTTOM_TIMELINE_COUNT;
|
||||||
if (!singleBar) {
|
if (!singleBar) {
|
||||||
//Small hack to hide first tabs (they represent the item of the bottom menu)
|
//Small hack to hide first tabs (they represent the item of the bottom menu)
|
||||||
toRemove = itemToRemoveInBottomMenu(activity);
|
toRemove = itemToRemoveInBottomMenu(activity);
|
||||||
for (int i = 0; i < (FedilabPageAdapter.BOTTOM_TIMELINE_COUNT - toRemove); i++) {
|
for (int i = 0; i < (FedilabPageAdapter.BOTTOM_TIMELINE_COUNT - toRemove); i++) {
|
||||||
activityMainBinding.tabLayout.addTab(activityMainBinding.tabLayout.newTab(), false);
|
activityMainBinding.tabLayout.addTab(activityMainBinding.tabLayout.newTab(), false);
|
||||||
|
if(activityMainBinding.viewPager.getAdapter() != null) {
|
||||||
|
activityMainBinding.viewPager.getAdapter().notifyDataSetChanged();
|
||||||
|
}
|
||||||
((ViewGroup) activityMainBinding.tabLayout.getChildAt(0)).getChildAt(i).setVisibility(View.GONE);
|
((ViewGroup) activityMainBinding.tabLayout.getChildAt(0)).getChildAt(i).setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -449,6 +456,9 @@ public class PinnedTimelineHelper {
|
||||||
String slug = pinnedTimeline.type.getValue() + (ident != null ? "|" + ident : "");
|
String slug = pinnedTimeline.type.getValue() + (ident != null ? "|" + ident : "");
|
||||||
tab.setTag(slug);
|
tab.setTag(slug);
|
||||||
activityMainBinding.tabLayout.addTab(tab, false);
|
activityMainBinding.tabLayout.addTab(tab, false);
|
||||||
|
if(activityMainBinding.viewPager.getAdapter() != null){
|
||||||
|
activityMainBinding.viewPager.getAdapter().notifyDataSetChanged();
|
||||||
|
}
|
||||||
pinnedTimelineVisibleList.add(pinnedTimeline);
|
pinnedTimelineVisibleList.add(pinnedTimeline);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue