colour -> color, behaviour -> behavior, centre -> center, favourite -> favorite, and about twenty other pairs, applied consistently across comments, docs, error/UI copy, and a handful of QML identifiers that used the British spelling as their actual name: SystemSettings' serialiseValue/serialiseTable/normaliseGradient, Displays' normaliseModes, Wallpaper's normalisePolicy, SettingsBackup's serialiseHomeState, DateTime's ntpSynchronised property, Clipboard's _normalise helper, and ShortcutCapture's cancelled signal (with its onCancelled handler in ShortcutsPage.qml). Every call site and the two tests that assert on the literal source text (settings-ownership and settings-backup-live contracts) were updated in lockstep. Left untouched: config/dot/espanso/match/packages/misspell-en/ is a vendored third-party autocorrect dictionary -- its entries are typo corrections, not our prose, and rewriting them would fight the package's own purpose (and any future re-sync from upstream). The already-American `favorites` property (Home page pinned accessories) was never actually misspelled -- only nearby comments and error strings said "favourites" -- so no data migration was needed there. Claude-Session: https://claude.ai/code/session_01E6TJUAh41HaP25MVHWkhRZ
32 lines
1.1 KiB
QML
32 lines
1.1 KiB
QML
// A time of day, stored as a decimal hour.
|
|
//
|
|
// SliderRow would render 17.5 as "17.50", which is not how anyone reads a
|
|
// clock. This is the same control with the readout formatted as a time, so the
|
|
// night light schedule says "5:30 PM" rather than a number you have to convert.
|
|
//
|
|
// Honors the 24-hour clock preference, because a user who has asked for 18:30
|
|
// everywhere else should not be shown 6:30 PM here.
|
|
|
|
import QtQuick
|
|
import qs.config
|
|
import qs.services
|
|
|
|
SliderRow {
|
|
id: root
|
|
|
|
// SliderRow renders `unit` after the number; a time needs the whole readout
|
|
// replaced, so the formatting is done here instead.
|
|
function display(value: real): string {
|
|
const hour = Math.floor(value);
|
|
const minute = Math.round((value - hour) * 60);
|
|
const padded = String(minute).padStart(2, "0");
|
|
|
|
if (Settings.use24Hour)
|
|
return `${String(hour).padStart(2, "0")}:${padded}`;
|
|
|
|
const suffix = hour < 12 ? "AM" : "PM";
|
|
const twelve = hour % 12 === 0 ? 12 : hour % 12;
|
|
return `${twelve}:${padded} ${suffix}`;
|
|
}
|
|
}
|