From 545db3b57e079ca7f9bb8d777fd111e7783106d9 Mon Sep 17 00:00:00 2001 From: Ed Horsford Date: Thu, 25 Jun 2026 15:59:10 +0100 Subject: [PATCH 1/5] Add auto scrolling in reading workflow --- app/assets/javascript/reading-scroll.js | 12 ++++++++++++ app/assets/sass/components/_reading.scss | 2 ++ app/views/_templates/layout-reading.html | 5 +++++ 3 files changed, 19 insertions(+) create mode 100644 app/assets/javascript/reading-scroll.js diff --git a/app/assets/javascript/reading-scroll.js b/app/assets/javascript/reading-scroll.js new file mode 100644 index 00000000..e3ceda4b --- /dev/null +++ b/app/assets/javascript/reading-scroll.js @@ -0,0 +1,12 @@ +// app/assets/javascript/reading-scroll.js + +// Reading workflow: scroll the status bar into view on page load. +// Uses getBoundingClientRect for an exact pixel position rather than +// scrollIntoView, which can behave oddly near sticky/fixed elements. + +document.addEventListener('DOMContentLoaded', () => { + const statusBar = document.querySelector('.app-status-bar') + if (!statusBar) return + const top = statusBar.getBoundingClientRect().top + window.scrollY + window.scrollTo({ top, behavior: 'instant' }) +}) diff --git a/app/assets/sass/components/_reading.scss b/app/assets/sass/components/_reading.scss index 95908317..c8d1a364 100644 --- a/app/assets/sass/components/_reading.scss +++ b/app/assets/sass/components/_reading.scss @@ -390,3 +390,5 @@ padding-top: nhsuk-spacing(4); } } + + diff --git a/app/views/_templates/layout-reading.html b/app/views/_templates/layout-reading.html index d73144be..a0d5a2cf 100755 --- a/app/views/_templates/layout-reading.html +++ b/app/views/_templates/layout-reading.html @@ -8,6 +8,11 @@ {# Script to show loading state in PACS viewer when navigating away, and inspect panel (press I) #} {% block bodyEnd %} {{ super() }} + + {# Fullscreen toggle and auto-scroll to status bar on page load #} + {% if isReadingWorkflow %} + + {% endif %} {% if isReadingWorkflow and participant %}