Make dependencyTracker work with the renderer
This commit is contained in:
parent
4734888685
commit
aaa7a20874
@ -2403,10 +2403,10 @@ class RendererWorker {
|
||||
const src =
|
||||
// eslint-disable-next-line no-nested-ternary
|
||||
typeof PDFJSDev === "undefined"
|
||||
? "../src/pdf.worker.js"
|
||||
? "../src/pdf.renderer.js"
|
||||
: PDFJSDev.test("MOZCENTRAL")
|
||||
? "resource://pdf.js/build/pdf.worker.mjs"
|
||||
: "../build/pdf.worker.mjs";
|
||||
? "resource://pdf.js/build/pdf.renderer.mjs"
|
||||
: "../build/pdf.renderer.mjs";
|
||||
this.#worker = new Worker(src, { type: "module" });
|
||||
this.#handler = new MessageHandler("main", "renderer", this.#worker);
|
||||
this.#handler.send("configure", { channelPort, enableHWA }, [channelPort]);
|
||||
@ -3427,9 +3427,16 @@ class InternalRenderTask {
|
||||
this.graphicsReadyCallback ||= this._continueBound;
|
||||
return;
|
||||
}
|
||||
this.gfx.dependencyTracker?.growOperationsCount(
|
||||
this.operatorList.fnArray.length
|
||||
);
|
||||
if (!this._renderInWorker) {
|
||||
this.gfx.dependencyTracker?.growOperationsCount(
|
||||
this.operatorList.fnArray.length
|
||||
);
|
||||
} else {
|
||||
this.rendererHandler.send("growOperationsCount", {
|
||||
taskID: this.taskID,
|
||||
newOperatorListLength: this.operatorList.fnArray.length,
|
||||
});
|
||||
}
|
||||
this.stepper?.updateOperatorList(this.operatorList);
|
||||
|
||||
if (this.running) {
|
||||
|
||||
@ -84,6 +84,7 @@ class RendererMessageHandler {
|
||||
transparency,
|
||||
background,
|
||||
optionalContentConfig,
|
||||
dependencyTracker,
|
||||
}) => {
|
||||
assert(!this.#tasks.has(taskID), "Task already initialized");
|
||||
const ctx = canvas.getContext("2d", {
|
||||
@ -99,7 +100,8 @@ class RendererMessageHandler {
|
||||
this.#filterFactory,
|
||||
{ optionalContentConfig },
|
||||
map,
|
||||
colors
|
||||
colors,
|
||||
dependencyTracker
|
||||
);
|
||||
gfx.beginDrawing({ transform, viewport, transparency, background });
|
||||
this.#tasks.set(taskID, { canvas, gfx });
|
||||
@ -122,6 +124,18 @@ class RendererMessageHandler {
|
||||
}
|
||||
);
|
||||
|
||||
mainHandler.on(
|
||||
"growOperationsCount",
|
||||
({ taskID, newOperatorListLength }) => {
|
||||
if (terminated) {
|
||||
throw new Error("Renderer worker has been terminated.");
|
||||
}
|
||||
const task = this.#tasks.get(taskID);
|
||||
assert(task !== undefined, "Task not initialized");
|
||||
task.gfx.dependencyTracker?.growOperationsCount(newOperatorListLength);
|
||||
}
|
||||
);
|
||||
|
||||
mainHandler.on("end", ({ taskID }) => {
|
||||
if (terminated) {
|
||||
throw new Error("Renderer worker has been terminated.");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user