2017-09-21 03:14:28 +02:00
|
|
|
package org.thoughtcrime.securesms.database.loaders;
|
|
|
|
|
|
|
|
|
|
|
|
import android.content.Context;
|
|
|
|
import android.database.Cursor;
|
2021-10-04 09:51:19 +02:00
|
|
|
|
2020-08-19 02:06:26 +02:00
|
|
|
import androidx.annotation.NonNull;
|
2017-09-21 03:14:28 +02:00
|
|
|
|
2021-05-18 08:11:38 +02:00
|
|
|
import org.session.libsession.utilities.Address;
|
2021-05-18 08:03:47 +02:00
|
|
|
import org.session.libsession.utilities.recipients.Recipient;
|
2021-10-04 09:51:19 +02:00
|
|
|
import org.thoughtcrime.securesms.dependencies.DatabaseComponent;
|
2017-09-21 03:14:28 +02:00
|
|
|
import org.thoughtcrime.securesms.util.AbstractCursorLoader;
|
|
|
|
|
|
|
|
public class ThreadMediaLoader extends AbstractCursorLoader {
|
|
|
|
|
2018-02-02 04:22:48 +01:00
|
|
|
private final Address address;
|
|
|
|
private final boolean gallery;
|
2017-09-21 03:14:28 +02:00
|
|
|
|
2018-02-02 04:22:48 +01:00
|
|
|
public ThreadMediaLoader(@NonNull Context context, @NonNull Address address, boolean gallery) {
|
2017-09-21 03:14:28 +02:00
|
|
|
super(context);
|
2018-02-02 04:22:48 +01:00
|
|
|
this.address = address;
|
|
|
|
this.gallery = gallery;
|
2017-09-21 03:14:28 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public Cursor getCursor() {
|
2021-10-04 09:51:19 +02:00
|
|
|
long threadId = DatabaseComponent.get(context).threadDatabase().getOrCreateThreadIdFor(Recipient.from(getContext(), address, true));
|
2017-09-25 17:32:45 +02:00
|
|
|
|
2021-10-04 09:51:19 +02:00
|
|
|
if (gallery) return DatabaseComponent.get(context).mediaDatabase().getGalleryMediaForThread(threadId);
|
|
|
|
else return DatabaseComponent.get(context).mediaDatabase().getDocumentMediaForThread(threadId);
|
2017-09-21 03:14:28 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public Address getAddress() {
|
|
|
|
return address;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|