Skip to content

LeanRows v0.5.1

Latest

Choose a tag to compare

@github-actions github-actions released this 07 Nov 15:29
· 3 commits to main since this release
e9db8b0

LeanRows 0.5.1

LeanRows 0.5.1 makes zooming fast and gives the lists thin scroll bars.

Everything from 0.5.0 works as before.

Zoom

  • A zoom step now changes only the rows and their column titles and paints
    them once. In 0.5.0 a step repainted every visible row once per column
    and then the whole window.
  • A fast spin of Ctrl and the mouse wheel is taken as one change, at the
    level the spin ends on.
  • Column widths no longer drift when you zoom in and out. A column you
    widened by hand keeps its width, scaled with the zoom.
  • A file opened while zoomed gets columns sized for that zoom.

Scroll bars

  • The rows and the settings shortcut list have thin scroll bars in the
    theme's colours, without arrow buttons, as in LeanMark. A thumb grows a
    little under the mouse.
  • Dragging the thumb, clicking or holding the track, the wheel, the keyboard
    and touch scroll as before.
  • With Windows high contrast on, the system scroll bars and colours come back.

Settings

  • Every shortcut in the settings panel fits its width. A long action wraps
    onto a second line instead of being cut off, and the list has no sideways
    scroll bar.

Measured

On the maintainer's laptop, 0.5.0 and 0.5.1 built and measured the same way,
in a 1400 x 900 window:

Measure 0.5.0 0.5.1
Zoom step, six-column 2 MB file, median / p90 285 / 379 ms 31 / 50 ms
Zoom step, 10M-row two-column file, median / p90 115 / 155 ms 21 / 24 ms
8 Ctrl+wheel notches at once, until painted, 2 MB file 1,234 ms 22.5 ms
Ctrl+Plus held for 8 repeats, wait after the last, 2 MB file 1,038 ms 1.3 ms
Page Down, 10M-row file 20.4 ms (20.0 to 21.7) 21.0 ms (21.0 to 21.2)
One wheel notch, 10M-row file 2.45 ms (2.40 to 2.60) 2.07 ms (2.00 to 2.22)
Open the 10M-row file until the row count settles 3,957 ms 3,966 ms
Start to input idle, no file 285 ms 281 ms
Start to input idle, the 10M-row file 428 ms 425 ms
Peak working set, the 10M-row file open 18.0 MiB 18.0 MiB
Peak private bytes, the 10M-row file open 3.3 MiB 3.3 MiB
Executable size, local build 986,112 bytes 1,024,512 bytes

Zoom steps are timed until the rows have painted. Page Down and the wheel are
medians of 300 presses or notches in each of 3 alternating runs, with the
range of the runs. Page Down is 0.6 ms slower: the thin bars repaint with the
rows. Start numbers are medians of 7 starts. The zoom numbers on the 10M-row
file are from a second run; in the first, single steps took up to 0.7 s on
0.5.0 and 1.1 s on 0.5.1.

Known gaps

  • A zoom step is not under 16 ms: most of it is the list painting its rows,
    which costs about as much as a Page Down. On a file with 64 columns a step
    takes about 150 ms, because the list asks for every column of every
    visible row.
  • The column titles' text does not zoom, although the title row grows.
  • The rows can show an empty sideways scroll bar when the columns' total
    width falls within 7 pixels of the window's width.
  • High contrast, a change of display scaling and touch were not tried on
    this release; they need system settings changed or a touch screen.
  • Sorting and Find do not work on .xlsx workbooks yet. Sorting says so
    instead of sorting.
  • The installer and the Store package do not register .xlsx.
  • The full local QA run with a receipt, as recorded for 0.2.0, has not been
    run for 0.5.1.