docs(application): a provider's subject takes entry when selected after every built-in subject, whose fixed order is unchanged

This commit is contained in:
Denis Groshev committed 2026-11-12 16:59:18 +01:00
1 parent 557fe7169a
commit fe7590d66a
1 file changed
+13 -11
+13 -11
View File
@@ -236,12 +236,14 @@ selected AIS vessel. An application adds kinds of its own with
`services.cockpitSubjects` on `createApplicationControls`: a list of `services.cockpitSubjects` on `createApplicationControls`: a list of
providers, checked once when the controls are built providers, checked once when the controls are built
(`src/cockpitSubjectProviders.js`). A malformed provider is left out with a (`src/cockpitSubjectProviders.js`). A malformed provider is left out with a
warning. Entry rides the most recently selected subject of all kinds and needs warning. A provider's subject takes entry when it was selected after every
the provider's `layerId` on; the provider then holds its subject, hands the built-in subject present (a tracked aircraft or satellite, a selected vessel),
camera a frame and the generic HUD a view model on every update, and releases whose own fixed order is unchanged, and needs the provider's `layerId` on; the
it on exit. Provider methods are synchronous and are called on the provider, provider then holds its subject, hands the camera a frame and the generic HUD
so a class instance's methods keep their `this`; one that throws or returns a a view model on every update, and releases it on exit. Provider methods are
promise is treated as having failed. synchronous and are called on the provider, so a class instance's methods keep
their `this`; one that throws or returns a promise is treated as having
failed.
```js ```js
import { getLocale, onLocaleChange } from '@gods-eye-view/core/i18n/locale'; import { getLocale, onLocaleChange } from '@gods-eye-view/core/i18n/locale';
@@ -315,11 +317,11 @@ Rail and Transit read APIs (`getSelectedTrain`, `getSelectedVehicle`,
are experimental and may change without notice. are experimental and may change without notice.
A candidate's `selectedAt` is a token that changes each time the user selects A candidate's `selectedAt` is a token that changes each time the user selects
the subject, even the same one again, so entry takes it first. The Rail and the subject, even the same one again, so entry counts it as selected then. The
Transit snapshots give one, `selectedAtMs`: when the user last selected the Rail and Transit snapshots give one, `selectedAtMs`: when the user last
train or vehicle by a click or `focusTrain`/`focusVehicle`. It is null after selected the train or vehicle by a click or `focusTrain`/`focusVehicle`. It is
a deselection and for one selected only by a hold, since a hold is not the null after a deselection and for one selected only by a hold, since a hold is
user's selection. not the user's selection.
A frame with `heightM: null` stands on the shared floor, or where it last A frame with `heightM: null` stands on the shared floor, or where it last
stood while that floor is cold. If no height has been known since entry, the stood while that floor is cold. If no height has been known since entry, the