Fix bluetooth setting not actually changing bluetooth radio settings.
Long Explanation
NimbleController.cpp was running bleController.Disconnect() each time NimbleController::EnableRadio() was called by SystemTask.cpp's case matching Messages::BleRadioEnableToggle. This meant that each time the bluetooth settings page was opened, the Messages::BleRadioEnableToggle case was matched and the setting variable bleRadioEnabled was set to false. This caused the conditionals for the checkboxList class call in SettingBluetooth.cpp to not allow toggling the bluetooth on and off, and caused the bluetooth status icon to dissappear in StatusIcons.cpp
Short Explanation
The nimblecontroller was telling the bluetooth controller to disconnect when the radio was enabled, which was happening each time the bluetooth settings page was opened. This caused the toggles/checboxes in the bluetooth settings page to be un-changeable, and the bluetooth status icon to disappear.
(A large explanation for removing a single line of code... I know ;) )
This fixes #1961
Build checks have not completed. Possible reasons for this are:
- The checks need to be approved by a maintainer
- The branch has conflicts
- The firmware build has failed
Thanks @JustScott ! Thought it was something simple, but didn't have the time to investigate 👍
#2037 created by @JF002 better addresses this issue at its core by only pushing the BleRadioEnableToggle Message when the toggle is actually changed, instead of when the bluetooth settings page is opened.
If you're currently using my PR in your fork, please switch to using #2037 instead, as my solution could (and probably will) cause weird bugs in the future if anything is altered with NimbleController or BleController.