Skip to content

Commit 6aa6124

Browse files
Merge pull request #6 from abhitrueprogrammer/zoomIn
Zoom in
2 parents e7905e0 + f20a5d9 commit 6aa6124

1 file changed

Lines changed: 13 additions & 17 deletions

File tree

src/components/pdfViewer.tsx

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -168,25 +168,21 @@ export default function PdfViewer({ url, name }: PdfViewerProps) {
168168
return () => window.removeEventListener("resize", calculateScale);
169169
}, []);
170170

171-
useEffect(() => {
172-
const container = containerRef.current;
173-
if (!container) return;
171+
useEffect(() => {
172+
const container = containerRef.current;
173+
if (!container) return;
174174

175-
const handleWheel = (e: WheelEvent) => {
176-
if (e.deltaY < 0) {
177-
// Scroll up: zoom in
178-
setScale((prev) => prev + 0.1);
179-
e.preventDefault();
180-
} else if (e.deltaY > 0) {
181-
// Scroll down: zoom out
182-
setScale((prev) => (prev - 0.1 ));
183-
e.preventDefault();
184-
}
185-
};
175+
const handleWheel = (e: WheelEvent) => {
176+
if (e.ctrlKey) { // ctrl+wheel is pinch zoom gesture
177+
e.preventDefault();
178+
setScale((prev) => Math.max(0.1, prev + (e.deltaY < 0 ? 0.1 : -0.1)));
179+
}
180+
};
181+
182+
container.addEventListener("wheel", handleWheel, { passive: false });
183+
return () => container.removeEventListener("wheel", handleWheel);
184+
}, []);
186185

187-
container.addEventListener("wheel", handleWheel, { passive: false });
188-
return () => container.removeEventListener("wheel", handleWheel);
189-
}, []);
190186

191187
return (
192188
<div className="flex flex-col items-center p-3 md:p-0">

0 commit comments

Comments
 (0)