mirror of
https://github.com/M66B/FairEmail.git
synced 2025-12-28 00:20:50 +01:00
Previous/next navigation
This commit is contained in:
@@ -75,6 +75,7 @@ import androidx.fragment.app.FragmentTransaction;
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.Observer;
|
||||
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
|
||||
import androidx.paging.PagedList;
|
||||
|
||||
public class ActivityView extends ActivityBilling implements FragmentManager.OnBackStackChangedListener {
|
||||
private View view;
|
||||
@@ -83,6 +84,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
|
||||
private ActionBarDrawerToggle drawerToggle;
|
||||
|
||||
private long attachment = -1;
|
||||
private PagedList<TupleMessageEx> messages = null;
|
||||
|
||||
private static final int ATTACHMENT_BUFFER_SIZE = 8192; // bytes
|
||||
|
||||
@@ -883,4 +885,29 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
|
||||
}.load(this, args);
|
||||
}
|
||||
}
|
||||
|
||||
void setMessages(PagedList<TupleMessageEx> messages) {
|
||||
this.messages = messages;
|
||||
}
|
||||
|
||||
public String[] getPrevNext(String thread) {
|
||||
boolean found = false;
|
||||
TupleMessageEx prev = null;
|
||||
TupleMessageEx next = null;
|
||||
for (int i = 0; i < messages.size(); i++) {
|
||||
TupleMessageEx item = messages.get(i);
|
||||
if (item == null)
|
||||
continue;
|
||||
if (found) {
|
||||
next = item;
|
||||
messages.loadAround(i);
|
||||
break;
|
||||
}
|
||||
if (thread.equals(item.thread))
|
||||
found = true;
|
||||
else
|
||||
prev = item;
|
||||
}
|
||||
return new String[]{prev == null ? null : prev.thread, next == null ? null : next.thread};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user