Keeps log auto-scrolling unless user scrolls up
// ==UserScript==
// @name Fix Log Auto Scroll
// @namespace http://tampermonkey.net/
// @version 1.1
// @description Keeps log auto-scrolling unless user scrolls up
// @match *://*.idleartisan.com/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
const waitForLog = setInterval(() => {
const log = document.querySelector('#log-messages');
if (!log) return;
clearInterval(waitForLog);
let autoScroll = true; // start with auto-scroll enabled
const scrollToBottom = () => {
if (log.scrollHeight > log.clientHeight) {
log.scrollTop = 0; // column-reverse: scrollTop=0 is bottom
}
};
// Initial scroll
setTimeout(scrollToBottom, 50);
// Toggle auto-scroll with Ctrl+C
document.addEventListener('keydown', (e) => {
if (e.altKey && e.key.toLowerCase() === 'c') {
autoScroll = !autoScroll;
console.log(`Auto-scroll ${autoScroll ? 'enabled' : 'paused'}`);
}
});
// Watch for new messages
const observer = new MutationObserver(() => {
if (autoScroll) {
scrollToBottom();
}
});
observer.observe(log, { childList: true, subtree: true });
}, 200);
})();