about summary refs log tree commit diff
path: root/app/javascript/flavours/glitch/features/ui/index.js
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2019-04-15 20:40:05 +0200
committerThibG <thib@sitedethib.com>2019-04-17 10:07:33 +0200
commit8d57c0e70ea76b2f482c0919fc815d40352ef477 (patch)
tree746b951862402f65cce8f724250ca20c7858ac33 /app/javascript/flavours/glitch/features/ui/index.js
parentfbec0edf08ce686e1b4c8332fad4481986e2dad5 (diff)
When selecting a toot via keyboard, ensure it is scrolled into view
Diffstat (limited to 'app/javascript/flavours/glitch/features/ui/index.js')
-rw-r--r--app/javascript/flavours/glitch/features/ui/index.js9
1 files changed, 7 insertions, 2 deletions
diff --git a/app/javascript/flavours/glitch/features/ui/index.js b/app/javascript/flavours/glitch/features/ui/index.js
index a19b3abf1..348125c97 100644
--- a/app/javascript/flavours/glitch/features/ui/index.js
+++ b/app/javascript/flavours/glitch/features/ui/index.js
@@ -341,11 +341,16 @@ export default class UI extends React.Component {
   handleHotkeyFocusColumn = e => {
     const index  = (e.key * 1) + 1; // First child is drawer, skip that
     const column = this.node.querySelector(`.column:nth-child(${index})`);
+    if (!column) return;
+    const container = column.querySelector('.scrollable');
 
-    if (column) {
-      const status = column.querySelector('.focusable');
+    if (container) {
+      const status = container.querySelector('.focusable');
 
       if (status) {
+        if (container.scrollTop > status.offsetTop) {
+          status.scrollIntoView(true);
+        }
         status.focus();
       }
     }