Prevent empty state messages from showing briefly

When we clear a list in onPause(), the proper behavior is that the empty state
message is shown, because the list is indeed empty.

However, we will reload the list content again in onResume(),
so the fix chosen in this commit is to force showing the progress bar
right after clearing the list.

Closes #576
This commit is contained in:
Torsten Grote
2016-08-03 19:12:53 -03:00
parent 1a32458783
commit dd0d23359b
5 changed files with 9 additions and 3 deletions
@@ -82,6 +82,7 @@ public class MyBlogsFragment extends BaseFragment {
public void onResume() {
super.onResume();
adapter.clear();
list.showProgressBar();
loadBlogs();
}
@@ -192,8 +192,9 @@ public class ContactListFragment extends BaseFragment implements EventListener {
@Override
public void onPause() {
super.onPause();
adapter.clear();
eventBus.removeListener(this);
adapter.clear();
list.showProgressBar();
list.stopPeriodicUpdate();
}
@@ -119,6 +119,7 @@ public class ForumListFragment extends BaseEventFragment implements
super.onPause();
adapter.clear();
list.showProgressBar();
list.stopPeriodicUpdate();
}
@@ -140,6 +140,7 @@ public class ContactChooserFragment extends BaseFragment {
public void onPause() {
super.onPause();
adapter.clear();
list.showProgressBar();
}
@Override
@@ -28,6 +28,7 @@ abstract class InvitationsActivity extends BriarActivity
Logger.getLogger(InvitationsActivity.class.getName());
private InvitationAdapter adapter;
private BriarRecyclerView list;
@Inject
protected EventBus eventBus;
@@ -40,8 +41,8 @@ abstract class InvitationsActivity extends BriarActivity
adapter = getAdapter(this, this);
BriarRecyclerView list =
(BriarRecyclerView) findViewById(R.id.invitationsView);
list = (BriarRecyclerView) findViewById(R.id.invitationsView);
if (list != null) {
list.setLayoutManager(new LinearLayoutManager(this));
list.setAdapter(adapter);
@@ -60,6 +61,7 @@ abstract class InvitationsActivity extends BriarActivity
super.onPause();
eventBus.removeListener(this);
adapter.clear();
list.showProgressBar();
}
@Override