Fixed displaying no messages while searching

pull/145/head
M66B 7 years ago
parent 771da2bbcd
commit eddbf29175

@ -64,6 +64,7 @@ public class BoundaryCallbackMessages extends PagedList.BoundaryCallback<TupleMe
private Message[] imessages = null; private Message[] imessages = null;
private int index; private int index;
private boolean searching = false; private boolean searching = false;
private int loaded = 0;
interface IBoundaryCallbackMessages { interface IBoundaryCallbackMessages {
void onLoading(); void onLoading();
@ -111,6 +112,10 @@ public class BoundaryCallbackMessages extends PagedList.BoundaryCallback<TupleMe
return searching; return searching;
} }
int getLoaded() {
return loaded;
}
@Override @Override
public void onZeroItemsLoaded() { public void onZeroItemsLoaded() {
Log.i(Helper.TAG, "onZeroItemsLoaded"); Log.i(Helper.TAG, "onZeroItemsLoaded");
@ -196,6 +201,7 @@ public class BoundaryCallbackMessages extends PagedList.BoundaryCallback<TupleMe
if (db.message().getMessageByUid(fid, uid) == null) { if (db.message().getMessageByUid(fid, uid) == null) {
ServiceSynchronize.synchronizeMessage(context, folder, ifolder, (IMAPMessage) isub[j], true); ServiceSynchronize.synchronizeMessage(context, folder, ifolder, (IMAPMessage) isub[j], true);
count++; count++;
loaded++;
} }
} catch (MessageRemovedException ex) { } catch (MessageRemovedException ex) {
Log.w(Helper.TAG, "Boundary " + ex + "\n" + Log.getStackTraceString(ex)); Log.w(Helper.TAG, "Boundary " + ex + "\n" + Log.getStackTraceString(ex));

@ -708,12 +708,15 @@ public class FragmentMessages extends FragmentEx {
new BoundaryCallbackMessages.IBoundaryCallbackMessages() { new BoundaryCallbackMessages.IBoundaryCallbackMessages() {
@Override @Override
public void onLoading() { public void onLoading() {
tvNoEmail.setVisibility(View.GONE);
pbWait.setVisibility(View.VISIBLE); pbWait.setVisibility(View.VISIBLE);
} }
@Override @Override
public void onLoaded() { public void onLoaded() {
pbWait.setVisibility(View.GONE); pbWait.setVisibility(View.GONE);
if (searchCallback.getLoaded() == 0)
tvNoEmail.setVisibility(View.VISIBLE);
} }
@Override @Override
@ -751,8 +754,9 @@ public class FragmentMessages extends FragmentEx {
pbWait.setVisibility(View.GONE); pbWait.setVisibility(View.GONE);
grpReady.setVisibility(View.VISIBLE); grpReady.setVisibility(View.VISIBLE);
if (messages.size() == 0 && !searching) { if (messages.size() == 0) {
tvNoEmail.setVisibility(View.VISIBLE); if (searchCallback == null)
tvNoEmail.setVisibility(View.VISIBLE);
rvMessage.setVisibility(View.GONE); rvMessage.setVisibility(View.GONE);
} else { } else {
tvNoEmail.setVisibility(View.GONE); tvNoEmail.setVisibility(View.GONE);

Loading…
Cancel
Save