We now only open MIDI by default on non-Web platforms. On web, there is
an extra button to open MIDI devices. This allows us to no longer pester
users with the "allow MIDI" popup when they don't want to use MIDI.
If MIDI devices have been opened, the multiplayer part of this project
now uses it as well, in the same way the "singleplayer" part does it.
Move "Leave" buttons always to upper right of screen. The "Get a Wav"
button now has a text that expresses better what it does depending on
the platform (save, download, share).
We use a modified version of cengiz-pz's godot android share plugin[0],
which allows us to not only share text/images, but also sund files (see
PR here[1]). With this, the "Write WAV" button (bad naming, I know) will
allow the user to share a wav file of the morsed data to another app,
e.g. for sending some morse via Signal. It looks like Telegram doesn't
like wav files in general, so another audio format, might be interesting
(though it's hard to choose, as we don't have a proper encoder on board,
mp3 is a pain and opus or ogg is not compatible with very old Iphones).
Using the share plugin requires us to enable gradle build. An explicitly
set unique name is required as well, else sharing will fail (see [2]).
I'm not sure if the Share node needs to be an extra node or if we could
also use it as an autoload script instead, but I went with the way the
docs described it for now.
[0] https://github.com/cengiz-pz/godot-android-share-plugin/
[1] https://github.com/cengiz-pz/godot-android-share-plugin/pull/8
[2] https://github.com/cengiz-pz/godot-android-share-plugin/issues/7
* requires gradle build
* requires app name
To make things more accessible on mobile (nobody wants to try to "aim"
for the buttons") and also not waste screen space on other platforms we
stretch all widgets to match the window size.