Process sub-selection of render jobs in displayed order (fixes #488)
This commit is contained in:
@@ -48,6 +48,7 @@ import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.function.Supplier;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.replaymod.render.ReplayModRender.LOGGER;
|
||||
|
||||
@@ -151,8 +152,11 @@ public class GuiRenderQueue extends AbstractGuiPopup<GuiRenderQueue> implements
|
||||
if (selectedEntries.isEmpty()) {
|
||||
renderQueue.addAll(jobs);
|
||||
} else {
|
||||
for (Entry entry : selectedEntries) {
|
||||
renderQueue.add(entry.job);
|
||||
Set<RenderJob> selectedJobs = selectedEntries.stream().map(it -> it.job).collect(Collectors.toSet());
|
||||
for (RenderJob job : jobs) {
|
||||
if (selectedJobs.contains(job)) {
|
||||
renderQueue.add(job);
|
||||
}
|
||||
}
|
||||
}
|
||||
ReplayMod.instance.runLaterWithoutLock(() -> processQueue(container, replayHandler, renderQueue, () -> {}));
|
||||
|
||||
Reference in New Issue
Block a user