Skip to content

Commit edfc1ab

Browse files
CopilotTomywang999
andcommitted
Refactor resize handler per code review feedback
Co-authored-by: Tomywang999 <103342866+Tomywang999@users.noreply.github.com>
1 parent 5bd104b commit edfc1ab

1 file changed

Lines changed: 25 additions & 20 deletions

File tree

src/App.svelte

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -49,21 +49,27 @@
4949
5050
/**
5151
* Converter for X axis from inches to pixels.
52+
* Updates when twoElement dimensions or resizeTrigger changes.
5253
*/
53-
$: x = d3
54-
.scaleLinear()
55-
.domain([0, 144])
56-
.range([0, twoElement?.clientWidth ?? 144]),
54+
$: {
5755
resizeTrigger; // Depend on resizeTrigger to update on window resize
56+
x = d3
57+
.scaleLinear()
58+
.domain([0, 144])
59+
.range([0, twoElement?.clientWidth ?? 144]);
60+
}
5861
5962
/**
6063
* Converter for Y axis from inches to pixels.
64+
* Updates when twoElement dimensions or resizeTrigger changes.
6165
*/
62-
$: y = d3
63-
.scaleLinear()
64-
.domain([0, 144])
65-
.range([twoElement?.clientHeight ?? 144, 0]),
66+
$: {
6667
resizeTrigger; // Depend on resizeTrigger to update on window resize
68+
y = d3
69+
.scaleLinear()
70+
.domain([0, 144])
71+
.range([twoElement?.clientHeight ?? 144, 0]);
72+
}
6773
6874
let lineGroup = new Two.Group();
6975
lineGroup.id = "line-group";
@@ -608,6 +614,14 @@
608614
return result;
609615
}
610616
617+
// Handle window resize to update canvas dimensions
618+
const handleResize = () => {
619+
if (two) {
620+
two.fit();
621+
resizeTrigger++; // Trigger reactive updates
622+
}
623+
};
624+
611625
onMount(() => {
612626
two = new Two({
613627
fitted: true,
@@ -667,20 +681,11 @@
667681
isDown = false;
668682
});
669683
670-
// Handle window resize to update canvas dimensions
671-
const handleResize = () => {
672-
if (two) {
673-
two.fit();
674-
resizeTrigger++; // Trigger reactive updates
675-
}
676-
};
677-
678684
window.addEventListener("resize", handleResize);
685+
});
679686
680-
// Clean up on component destroy
681-
return () => {
682-
window.removeEventListener("resize", handleResize);
683-
};
687+
onDestroy(() => {
688+
window.removeEventListener("resize", handleResize);
684689
});
685690
686691
document.addEventListener("keydown", function (evt) {

0 commit comments

Comments
 (0)