Skip to content

Commit d9f94e7

Browse files
committed
Fix: Page jumps during zoom animation in vertical reading
1 parent 5473edd commit d9f94e7

6 files changed

Lines changed: 22 additions & 4 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
3030
- Gamepad menus do not work correctly [`b997d6b`](https://github.com/ollm/OpenComic/commit/b997d6bb6e05c597306169cb4fbbe035a4ab12d1)
3131
- Sharp crashes on Arch Linux and other distributions [`d60620a`](https://github.com/ollm/OpenComic/commit/d60620a2d3a446fef51cd86eff2dc80b22ccf6ba)
3232
- Add cMap support for PDF.js [`3da7b8e`](https://github.com/ollm/OpenComic/commit/3da7b8ec651964209d1df04248dad2bb8ab693bd)
33+
- Page jumps during zoom animation in vertical reading
3334

3435
## [v1.4.1](https://github.com/ollm/OpenComic/releases/tag/v1.4.1) (08-02-2025)
3536

TRANSLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ OpenComic has translations into 18 languages.
7474

7575
[es.json](https://github.com/ollm/OpenComic/blob/master/languages/es.json)
7676

77-
`99.8% | Remain 1 | Translated 475`
77+
`100% | Remain 0 | Translated 476`
7878

7979
<a href="https://github.com/ollm/OpenComic/blob/master/languages/es.json"><img src="https://raw.githubusercontent.com/ollm/OpenComic/master/images/translated/es.svg" /></a>
8080

images/translated.svg

Lines changed: 1 addition & 1 deletion
Loading

images/translated/es.svg

Lines changed: 1 addition & 1 deletion
Loading

scripts/reading.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2101,6 +2101,7 @@ function applyScale(animation = true, scale = 1, center = false, zoomOut = false
21012101
});
21022102

21032103
content.scrollTop = scrollTop + (translateY - scalePrevData.tranY);
2104+
applyDiffScrolls((translateY - scalePrevData.tranY));
21042105

21052106
scalePrevData.tranY = translateY;
21062107

@@ -2247,6 +2248,22 @@ function applyScale(animation = true, scale = 1, center = false, zoomOut = false
22472248
}
22482249
}
22492250

2251+
function applyDiffScrolls(diff = 0)
2252+
{
2253+
if(gamepadScroll)
2254+
gamepadScroll.scrollTop = gamepadScroll.scrollTop + diff;
2255+
2256+
if(readingDragScroll)
2257+
{
2258+
readingDragScroll.content.stop(true);
2259+
readingDragScroll.scrollTop = readingDragScroll.scrollTop + diff;
2260+
}
2261+
else
2262+
{
2263+
template.contentRight().children().stop(true);
2264+
}
2265+
}
2266+
22502267
function zoomScrollHeight()
22512268
{
22522269
if(scalePrevData.scale != 1 && config.readingGlobalZoom && readingViewIs('scroll'))

scripts/shortcuts.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1070,7 +1070,7 @@ async function register(section = 'reading', force = false)
10701070

10711071
const callback = function(event) {
10721072

1073-
if(inputIsFocused() || !reading.isLoaded())
1073+
if(inputIsFocused() || (section === 'reading' && !reading.isLoaded()))
10741074
return false;
10751075

10761076
return action.function(event);

0 commit comments

Comments
 (0)