Fixed a bug that prevented subtasks toggling from working correctly in lists

pull/14/head
Sam Bosley 12 years ago
parent 27e108a5e4
commit 927ea5403b

@ -515,16 +515,19 @@ public class TagViewFragment extends TaskListFragment {
@Override
protected void toggleDragDrop(boolean newState) {
Filter newFilter = TagFilterExposer.filterFromTagData(getActivity(), tagData);
Class<?> customComponent;
if(newState)
((FilterWithCustomIntent)newFilter).customTaskList =
new ComponentName(getActivity(), SubtasksTagListFragment.class);
else
((FilterWithCustomIntent)newFilter).customTaskList =
new ComponentName(getActivity(), TagViewFragment.class);
customComponent = SubtasksTagListFragment.class;
else {
filter.setFilterQueryOverride(null);
customComponent = TagViewFragment.class;
}
((FilterWithCustomIntent) filter).customTaskList = new ComponentName(getActivity(), customComponent);
((AstridActivity)getActivity()).onFilterItemClicked(newFilter);
((AstridActivity)getActivity()).setupTasklistFragmentWithFilterAndCustomTaskList(filter,
extras, customComponent);
}
@Override

@ -244,7 +244,7 @@ public class TaskListActivity extends AstridActivity implements MainMenuListener
public void setupTasklistFragmentWithFilterAndCustomTaskList(Filter filter, Bundle extras, Class<?> customTaskList) {
if (swipeIsEnabled()) {
tlfPager.showFilterWithCustomTaskList(filter, customTaskList);
tlfPager.setAdapter(tlfPagerAdapter); // Hack to force reload of current page
tlfPager.forceReload(); // Hack to force reload of current page
} else {
super.setupTasklistFragmentWithFilterAndCustomTaskList(filter, extras, customTaskList);
}

@ -30,6 +30,15 @@ public class TaskListFragmentPager extends ViewPager {
super.setAdapter(adapter);
}
/**
* Hack to enable reloading fragments while they are being viewed
*/
public void forceReload() {
int position = getCurrentItem();
setAdapter(getAdapter());
setCurrentItem(position, false);
}
/**
* Show the supplied filter, adding it to the data source if it doesn't exist
* @param f

Loading…
Cancel
Save