diff --git a/js/forum/dist/app.js b/js/forum/dist/app.js index 951bf29e2..eea99fcbe 100644 --- a/js/forum/dist/app.js +++ b/js/forum/dist/app.js @@ -23455,7 +23455,13 @@ System.register('flarum/components/IndexPage', ['flarum/extend', 'flarum/compone var scrollTop = app.cache.scrollTop; $('#app').css('min-height', $(window).height() + heroHeight); - $(window).scrollTop(scrollTop - (app.cache.heroHeight - heroHeight)); + + // Scroll to the remembered position. We do this after a short delay so that + // it happens after the browser has done its own "back button" scrolling, + // which isn't right. https://github.com/flarum/core/issues/835 + setTimeout(function () { + return $(window).scrollTop(scrollTop - app.cache.heroHeight + heroHeight); + }, 1); app.cache.heroHeight = heroHeight; diff --git a/js/forum/src/components/IndexPage.js b/js/forum/src/components/IndexPage.js index d85867b94..9760f688e 100644 --- a/js/forum/src/components/IndexPage.js +++ b/js/forum/src/components/IndexPage.js @@ -103,7 +103,11 @@ export default class IndexPage extends Page { const scrollTop = app.cache.scrollTop; $('#app').css('min-height', $(window).height() + heroHeight); - $(window).scrollTop(scrollTop - (app.cache.heroHeight - heroHeight)); + + // Scroll to the remembered position. We do this after a short delay so that + // it happens after the browser has done its own "back button" scrolling, + // which isn't right. https://github.com/flarum/core/issues/835 + setTimeout(() => $(window).scrollTop(scrollTop - app.cache.heroHeight + heroHeight), 1); app.cache.heroHeight = heroHeight;