* Rebuild gRPC protocol interfaces
* Implement methods to get user fields for board/port combination
* Implement dialog to input board user fields
* Add configure and upload step when uploading to board requiring user fields
* Disable Sketch > Configure and Upload menu if board doesn't support user fields
* Fix serial upload not working with all boards
* Update i18n source file
* fix user fields UI
* regenerate cli protocol
* fix localisation
* check if user fields are empty
Co-authored-by: Alberto Iannaccone <a.iannaccone@arduino.cc>
* Removed Protocol type
* Reworked function that groups ports by protocol
* Remove useless protocol check in Port sameAs function
* Reworked port selection menu ordering
Now ports are shown in this order:
1. Serial with recognized boards
2. Serial with unrecognized boards
3. Network with recognized boards
4. Network with unrecognized boards
5. Other protocols with recognized boards
6. Other protocols with unrecognized boards
* Fix ports shown multiple times in menu
* Reworked board selection dropdown ordering
Ordering is now:
1. Serial with recognized boards
2. Serial with guessed boards
3. Serial with incomplete boards
4. Network with recognized boards
5. Other protocols with recognized boards
* Localize some strings
* Fix bug selecting board in boards selector dropdown
* Reworked board selection dialog ordering
* Fix Tools > Port menu not refreshing
* Move Select other board button to bottom of Board selector dropdown and change its style
* Updated arduino-cli to 0.20.0 and generated protocol files
- Fixed a monitor reconnecting issue after upload.
- Serial monitor connection was not disposed when the widget was closed
from the toolbar with the magnifier (🔍) icon. It worked only iff the
user closed the view with the `X`.
- This commit also fixes a warning that was related to the incorrect focus
handling of the widget.
- Switched to `board list -w` instead of polling.
- Added a singleton for the board discovery to spare the CPU.
- Fixed DI scopes on the backend. Each frontend gets its own service.
- Switched to the `20201112` nightly CLI.
- Fixed the Monitor view's image when the view is on the side-bar.
Signed-off-by: Akos Kitta <kittaakos@typefox.io>
This change is required to be able to support ARM arch
in the future.
- Fixed the download links for armv7l Linux.
- Checked in the generated code. [grpc/grpc-node#1497]
- Made the code generation a manual step.
- Made the `grpc-tools` dependency optional.
- From now on, the serial port regex is case-insensitive.
Signed-off-by: Akos Kitta <kittaakos@typefox.io>
From now on, we do not retrieve the ports from the attached boards.
A board can be unknown but the port is still relevant.
Signed-off-by: Akos Kitta <kittaakos@typefox.io>
Fine tuned the port unnselection when attached boards change.
This should make sure we do not have to `await` for the attached boards
from the backend.
Signed-off-by: Akos Kitta <kittaakos@typefox.io>