'use strict'; const LOG_EL = document.getElementsByTagName("log")[0]; let LAST_LOG_TYPE = ""; function at_bot(el) { return el.scrollTop >= (el.scrollHeight - el.clientHeight) } function addLogEntry(object) { let do_scroll = at_bot(LOG_EL); let out = { type: object.type, target: object.target }; if (LAST_LOG_TYPE == "mousemove" || LAST_LOG_TYPE == "touchmove") { if (LAST_LOG_TYPE == out.type) return; } LAST_LOG_TYPE = out.type; let entry = document.createElement("entry"); entry.innerText = JSON.stringify(out); LOG_EL.appendChild(entry); if (do_scroll) { LOG_EL.scroll({ top: LOG_EL.scrollHeight, behavior: "instant", }); } }