When first sample is taken, the notification is displayed showing what was sampled and number of samples taken. Number of samples taken is updated on the second sample. Notification is removed when the final sample is taken.
Plugins authors can now optionally specify what ways their notifications are rendered (subject, of course, to user preferences/settings). The default is to render notifications in all available channels. Examples:
- Show native pop-up window only (ie. no voice/plugin notifiers)
- Disallow other plugin notifiers
This does not support selection of notifier plugins.
Furthermore, persistent notification updates were not previously being forwarded to anything but the native popup notifier. Now plugins and native voice are also supported (subject to user preferences) and respect the new rendering controls added here. There is currently no concept of closing notifications for the native voice or plugin-based notifiers.
System context pre-reading logic previously assumed the player jumped into the current system in their own ship as a pilot. Arriving docked on their carrier was thus missed and may have resulted in processing more than one systems worth of context (or simply failing to pre-read context).
Manipulating active notifications must be done on the Avalonia UI thread. UpdateNotification and CloseNotification were not properly doing this.
Any plugin attempting to use persistent notifications would have encountered these errors.
NOTE: There is not yet hooks for cleaning up persistent/infinite timeout notifications when the APP is closed.
* WIP: initial commit for observatory herald
* Plugin error handling refactor
* make error window non-modal
* tidy up plugin error handling
* first pass for basic herald functionality
* corrections for linux env
* Use FNV hash directly instead of managing through dictionary/index file
* resolve audio queuing issue, switch to personal NetCoreAudio fork
* merge cleanup
* add enable setting, populate defaults
* framework xml doc update
* Adjust settings, add style selection, replace locale with demonym in dropdown list.
* Test is position is on screen before saving/loading.
* use a default that's actually in the list
* chore: move all observatory repos to core
* only save journal folder on change, don't constantly re-check during monitoring
* chore: monorepo project changes
* chore: monorepo migration
* feat: cosmetic overhaul of native notification popup
* fix: use correct screen default
* feat: move notification test from debug build type to button press
* fix: not debug anymore
* fix: rearrange native notification settings controls
* fix: account for display scaling when positioning notification
* fix: guard against a screen that no longer exists
* fix: safer way to get screens, in case control tree changes