This commit is contained in:
tarsin committed 2023-01-02 21:39:46 +08:00
1 parent 80fcda149b
commit 57d4967f2a
4 files changed
+36

No files matched your search

@@ -41,6 +41,7 @@ import java.io.IOException;
import java.nio.ByteBuffer;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Stack;
@@ -187,6 +188,11 @@ public class ArchivePageLoader extends PageLoader2 {
return dst;
}
@Override
protected void preloadPages(@NonNull List<Integer> pages) {
}
private class ArchiveHostTask implements Runnable {
public final Thread[] archiveThreads = new Thread[]{
new Thread(new ArchiveTask()),
@@ -25,6 +25,7 @@ import com.hippo.image.Image;
import com.hippo.unifile.UniFile;
import com.hippo.yorozuya.SimpleHandler;
import java.util.List;
import java.util.Locale;
import eu.kanade.tachiyomi.ui.reader.loader.PageLoader;
@@ -207,6 +208,13 @@ public class EhPageLoader extends PageLoader2 implements SpiderQueen.OnSpiderLis
notifyPageFailed(index);
}
@Override
protected void preloadPages(@NonNull List<Integer> pages) {
if (mSpiderQueen != null) {
mSpiderQueen.preloadPages(pages);
}
}
private static class ReleaseTask implements Runnable {
private SpiderQueen mSpiderQueen;
@@ -460,6 +460,19 @@ public final class SpiderQueen implements Runnable {
}
}
public void preloadPages(@NonNull List<Integer> pages) {
if (mQueenThread == null) {
return;
}
synchronized (mRequestPageQueue) {
pages.removeAll(mRequestPageQueue);
pages.removeAll(mRequestPageQueue2);
pages.removeAll(mDecodeRequestQueue);
mRequestPageQueue2.addAll(pages);
}
}
/**
* @return String for error<br>
* Float for download percent<br>