Share the one HTTP envelope and the one byte formatter

Both stores carried their own ~28-line request<T>, and formatBytes existed
twice – the second copy had lost the "B" branch, so a small sprite would have
read as 0 KB had its caller ever passed one under a kilobyte.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
rootandClaude Opus 5 committed 2026-09-10 07:14:23 +02:00
1 parent 787a19d525
commit b13b130da7
11 files changed
+80 -78

No files matched your search

-2
View File
@@ -202,8 +202,6 @@ export class ListView extends Widget {
this.drawDropMarker();
}
// --- pointer input -------------------------------------------------------------------------
private onRowPress(row: ListRow, e: FederatedPointerEvent): void {
const { item } = row;
const modifiers: PickModifiers = { ctrl: e.ctrlKey || e.metaKey, shift: e.shiftKey };
-6
View File
@@ -115,8 +115,6 @@ export class TextField extends Widget implements TextEditTarget {
this.dragSelecting = true;
}
// --- focus ---------------------------------------------------------------------------------
override onFocus(): void {
super.onFocus();
this.startEditing();
@@ -173,8 +171,6 @@ export class TextField extends Widget implements TextEditTarget {
this.invalidate();
}
// --- TextEditTarget ------------------------------------------------------------------------
/** Adopts the input's value and selection verbatim; fires `onInput` only when the text changed. */
onBridgeInput(value: string, selectionStart: number, selectionEnd: number): void {
const changed = value !== this.valueText;
@@ -212,8 +208,6 @@ export class TextField extends Widget implements TextEditTarget {
if (ui().focus.focused === this) ui().focus.blur();
}
// --- geometry ------------------------------------------------------------------------------
private textWidth(text: string): number {
return CanvasTextMetrics.measureText(text, this.textNode.style).width;
}