1const htmlElement = document.getElementsByTagName('html')[0]; 2const windowWidth = window.innerWidth; 3const htmlOffsetWidth = htmlElement.offsetWidth; 4const userAgent = navigator.userAgent; 5 6let shouldCalculateScrollbar = windowWidth > 1024 && windowWidth > htmlOffsetWidth; 7 8if (userAgent.includes('Chrome')) { 9 const match = userAgent.match(/Chrome\/(\d+)/); 10 if (match) { 11 const version = parseInt(match[1], 10); 12 13 if (version >= 145) { 14 shouldCalculateScrollbar = false; 15 } 16 } 17} 18 19if (shouldCalculateScrollbar) { 20 const scrollbarWidth = windowWidth - htmlOffsetWidth; 21 const styleElement = document.createElement('style'); 22 23 styleElement.textContent = `:root {--wd-scroll-w: ${scrollbarWidth}px;}`; 24 document.head.appendChild(styleElement); 25}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.