Improved list state

pull/177/head
M66B 6 years ago
parent a88a8656b5
commit ee725e42d4

@ -51,6 +51,11 @@ public class ContentLoadingProgressBar extends ProgressBar {
super.setVisibility(visibility);
}
@Override
public int getVisibility() {
return this.visibility;
}
private final Runnable delayedShow = new Runnable() {
@Override
public void run() {

@ -3792,13 +3792,13 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
@Override
public void onLoading() {
loading = true;
updateListState("Loading");
updateListState("Loading", SimpleTask.getCount(), adapter.getItemCount());
}
@Override
public void onLoaded() {
loading = false;
updateListState("Loaded");
updateListState("Loaded", SimpleTask.getCount(), adapter.getItemCount());
}
@Override
@ -3852,13 +3852,13 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
});
initialized = true;
updateListState("Observed");
updateListState("Observed", SimpleTask.getCount(), messages.size());
grpReady.setVisibility(View.VISIBLE);
}
};
private void updateListState(String reason) {
private void updateListState(String reason, int tasks, int items) {
Context context = getContext();
if (context == null)
return;
@ -3867,9 +3867,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
if (!getViewLifecycleOwner().getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED))
return;
int tasks = SimpleTask.getCount();
int items = adapter.getItemCount();
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
boolean filter_seen = prefs.getBoolean("filter_seen", false);
boolean filter_unflagged = prefs.getBoolean("filter_unflagged", false);
@ -4656,7 +4653,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
};
private void onTaskCount(Intent intent) {
updateListState("Tasks");
updateListState("Tasks", intent.getIntExtra("count", 0), adapter.getItemCount());
}
private void onNewMessage(Intent intent) {

@ -48,13 +48,21 @@ public class ViewTextDelayed extends AppCompatTextView {
this.visibility = visibility;
removeCallbacks(delayedShow);
if (visibility == VISIBLE) {
super.setVisibility(INVISIBLE);
removeCallbacks(delayedHide);
if (visibility == VISIBLE)
postDelayed(delayedShow, VISIBILITY_DELAY);
} else
else if (visibility == GONE)
postDelayed(delayedHide, VISIBILITY_DELAY);
else
super.setVisibility(visibility);
}
@Override
public int getVisibility() {
return this.visibility;
}
private final Runnable delayedShow = new Runnable() {
@Override
public void run() {
@ -62,4 +70,12 @@ public class ViewTextDelayed extends AppCompatTextView {
ViewTextDelayed.super.setVisibility(VISIBLE);
}
};
private final Runnable delayedHide = new Runnable() {
@Override
public void run() {
if (visibility == GONE)
ViewTextDelayed.super.setVisibility(GONE);
}
};
}

Loading…
Cancel
Save