A command to repeat last spoken information (#19173)
Close #625
First step to #18400
### Summary of the issue:
People want commands to repeat the last spoken information, to be able
to display it and to copy it.
Actually, they also want a deeper history of the speech, but NV Access
has recommended in #18400 to begin with the last speech.
### Description of user facing changes:
A new commands has been introduced: Repeat last spoken information
(`NVDA+shift+F12`). Pressing it twice displays this information in a
browseable message.
The copy concern can be considered addressed since browseable message
now have a copy button.
When in on-demand speech mode, the last string to be spoken is
memorized, no matter if it is actually spoken (on-demand command), or
not. This provide a quite handy mode to retrive the last information
that should have been spoken if speech mode had been on.
### Description of developer facing changes:
N/A
### Description of development approach:
Use `pre_speech` extension point to store the last spoken information
### Testing strategy:
Manual test, with speech modes on and on-demand.
### Known issues with pull request:
This minimalist PR may be frustrating for a lot of people expecting
more, i.e. a more complete speech history feature as in the add-on, in
Jaws or in Narrator.