last fix history jump

This commit is contained in:
Pierre Dubouilh
2019-02-02 14:09:38 +01:00
parent d764da7735
commit f1b024b691
2 changed files with 11 additions and 7 deletions
+11 -6
View File
@@ -37,10 +37,10 @@ if (typeof window.orientation !== 'undefined') {
}
// Manual upload
manualUpload.addEventListener('change', () => Array.from(manualUpload.files).forEach(f => postFile(f, '/' + f.name)), false)
manualUpload.addEventListener('change', () => Array.from(manualUpload.files).forEach(f => isDupe(f.name) || postFile(f, '/' + f.name)), false)
// Soft nav
function browseTo (href, flickerDone) {
function browseTo (href, flickerDone, skipHistory) {
fetch(href, { credentials: 'include' }).then(r => r.text().then(t => {
const parsed = new DOMParser().parseFromString(t, 'text/html')
const table = parsed.querySelectorAll('table')[0].innerHTML
@@ -51,7 +51,10 @@ function browseTo (href, flickerDone) {
if (document.head.querySelectorAll('title')[0].innerText !== title) {
document.head.querySelectorAll('title')[0].innerText = title
document.body.querySelectorAll('h1')[0].innerText = '.' + title
history.replaceState({}, '', encodeURI(title))
if (!skipHistory) {
history.pushState({}, '', encodeURI(title))
}
}
if (flickerDone) {
@@ -74,8 +77,10 @@ window.onClickLink = e => {
}
const refresh = () => browseTo(location.href, true)
const prevPage = (url) => picsOff() || browseTo(url || (location.href + '../'))
window.onpopstate = () => prevPage(location.href)
const prevPage = (url, skipHistory) => picsOff() || browseTo(url, false, skipHistory)
window.onpopstate = () => prevPage(location.href, true)
// RPC
function rpcFs (call, args, cb) {
@@ -424,7 +429,7 @@ document.body.addEventListener('keydown', e => {
return prevent(e) || picsOn(true) || picsNav(true) || getASelected().click()
case 'ArrowLeft':
return prevent(e) || picsNav(false) || prevPage()
return prevent(e) || picsNav(false) || prevPage(location.href + '../')
case 'Escape':
return prevent(e) || resetBackgroundLinks() || picsOff()
-1
View File
@@ -49,7 +49,6 @@ div, i {
.arrow-selected {
background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0ndXRmLTgnPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEyOSAxMjkiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxMjkgMTI5Ij4KICA8Zz4KICAgIDxwYXRoIGQ9Im00MC40LDEyMS4zYy0wLjgsMC44LTEuOCwxLjItMi45LDEuMnMtMi4xLTAuNC0yLjktMS4yYy0xLjYtMS42LTEuNi00LjIgMC01LjhsNTEtNTEtNTEtNTFjLTEuNi0xLjYtMS42LTQuMiAwLTUuOCAxLjYtMS42IDQuMi0xLjYgNS44LDBsNTMuOSw1My45YzEuNiwxLjYgMS42LDQuMiAwLDUuOGwtNTMuOSw1My45eiIvPgogIDwvZz4KPC9zdmc+Cg==");
height: inherit;
width: inherit;
}
.arrow {