diff options
author | bptato <nincsnevem662@gmail.com> | 2025-01-29 19:10:53 +0100 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2025-01-29 19:18:05 +0100 |
commit | 95cafdfbed807053325cdf08027e45256356106f (patch) | |
tree | 2367ca8824375419e23673f084f0ce8b17391215 /src | |
parent | ccc48b4adc98538d57f886a95785f6c9dc3fda95 (diff) | |
download | chawan-95cafdfbed807053325cdf08027e45256356106f.tar.gz |
pager: fix gotoAnchor on buffers that were redirected
Redirection no longer preserves the previous cursor position, so gotoAnchor is now allowed to override it.
Diffstat (limited to 'src')
-rw-r--r-- | src/local/pager.nim | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/local/pager.nim b/src/local/pager.nim index e79869a0..2132b6a2 100644 --- a/src/local/pager.nim +++ b/src/local/pager.nim @@ -1924,7 +1924,6 @@ proc gotoURL(pager: Pager; request: Request; prevurl = none(URL); else: container.replaceBackup = replaceBackup replaceBackup.replaceRef = container - container.copyCursorPos(replace) else: pager.addContainer(container) inc pager.numload @@ -2296,8 +2295,10 @@ proc jsGotoURL(pager: Pager; v: JSValue; t = GotoURLDict()): JSResult[void] # Reload the page in a new buffer, then kill the previous buffer. proc reload(pager: Pager) {.jsfunc.} = - discard pager.gotoURL(newRequest(pager.container.url), none(URL), - pager.container.contentType, replace = pager.container) + let old = pager.container + let container = pager.gotoURL(newRequest(pager.container.url), none(URL), + pager.container.contentType, replace = old) + container.copyCursorPos(old) type ExternDict = object of JSDict env {.jsdefault: JS_UNDEFINED.}: JSValue |