mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-25 01:05:27 +03:00
Detect support for flash chip and disable tab if not available
This commit is contained in:
parent
7fb9f43b00
commit
ed285992da
4 changed files with 91 additions and 65 deletions
|
@ -846,7 +846,10 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
"dataflashNote": {
|
"dataflashNote": {
|
||||||
"message": "Blackbox flight logs can be stored on the onboard dataflash chip if your flight controller supports one."
|
"message": "Blackbox flight logs can be recorded to your flight controller's onboard dataflash chip."
|
||||||
|
},
|
||||||
|
"dataflashNotSupportedNote": {
|
||||||
|
"message": "Your flight controller does not have a compatible dataflash chip available."
|
||||||
},
|
},
|
||||||
"dataflashButtonSaveFile": {
|
"dataflashButtonSaveFile": {
|
||||||
"message": "Save flash to file..."
|
"message": "Save flash to file..."
|
||||||
|
|
|
@ -176,4 +176,17 @@
|
||||||
}
|
}
|
||||||
.dataflash-saving.done .dataflash-saving-after {
|
.dataflash-saving.done .dataflash-saving-after {
|
||||||
display:block;
|
display:block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.require-dataflash {
|
||||||
|
display:none;
|
||||||
|
}
|
||||||
|
.tab-dataflash.supported .require-dataflash {
|
||||||
|
display:block;
|
||||||
|
}
|
||||||
|
.require-no-dataflash {
|
||||||
|
display:block;
|
||||||
|
}
|
||||||
|
.tab-dataflash.supported .require-no-dataflash {
|
||||||
|
display:none;
|
||||||
}
|
}
|
|
@ -1,63 +1,66 @@
|
||||||
<div class="tab-dataflash">
|
<div class="tab-dataflash">
|
||||||
<div class="note" i18n="dataflashNote">
|
<div class="require-dataflash">
|
||||||
</div>
|
<div class="note" i18n="dataflashNote">
|
||||||
|
|
||||||
<dialog class="dataflash-confirm-erase">
|
|
||||||
<h3 i18n="dataflashConfirmEraseTitle"></h3>
|
|
||||||
<div class="dataflash-confirm-erase-note" i18n="dataflashConfirmEraseNote">
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="dataflash-erase-progress">
|
<dialog class="dataflash-confirm-erase">
|
||||||
<div class="data-loading">
|
<h3 i18n="dataflashConfirmEraseTitle"></h3>
|
||||||
<p>Erase in progress, please wait...</p>
|
<div class="dataflash-confirm-erase-note" i18n="dataflashConfirmEraseNote">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
<div class="dataflash-erase-progress">
|
||||||
|
<div class="data-loading">
|
||||||
|
<p>Erase in progress, please wait...</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="buttons">
|
||||||
|
<a href="#" class="erase-flash-cancel" i18n="dataflashButtonEraseCancel"></a>
|
||||||
|
<a href="#" class="erase-flash-confirm" i18n="dataflashButtonEraseConfirm"></a>
|
||||||
|
</div>
|
||||||
|
</dialog>
|
||||||
|
|
||||||
|
<dialog class="dataflash-saving">
|
||||||
|
<h3 i18n="dataflashSavingTitle"></h3>
|
||||||
|
<div class="dataflash-saving-before">
|
||||||
|
<div i18n="dataflashSavingNote">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<progress value="0" min="0" max="100"></progress>
|
||||||
|
|
||||||
|
<div class="buttons">
|
||||||
|
<a href="#" class="save-flash-cancel" i18n="dataflashButtonSaveCancel"></a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="dataflash-saving-after">
|
||||||
|
<div i18n="dataflashSavingNoteAfter">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="buttons">
|
||||||
|
<a href="#" class="save-flash-dismiss" i18n="dataflashButtonSaveDismiss"></a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</dialog>
|
||||||
|
|
||||||
|
<h3>Dataflash contents</h3>
|
||||||
|
<ul class="dataflash-contents">
|
||||||
|
<li class="dataflash-used">
|
||||||
|
<div class="legend">
|
||||||
|
Used space
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li class="dataflash-free">
|
||||||
|
<div class="legend">
|
||||||
|
Free space
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<a href="#" class="erase-flash-cancel" i18n="dataflashButtonEraseCancel"></a>
|
<a href="#" class="erase-flash" i18n="dataflashButtonErase"></a>
|
||||||
<a href="#" class="erase-flash-confirm" i18n="dataflashButtonEraseConfirm"></a>
|
<a href="#" class="save-flash" i18n="dataflashButtonSaveFile"></a>
|
||||||
</div>
|
</div>
|
||||||
</dialog>
|
</div>
|
||||||
|
<div class="note require-no-dataflash" i18n="dataflashNotSupportedNote">
|
||||||
<dialog class="dataflash-saving">
|
|
||||||
<h3 i18n="dataflashSavingTitle"></h3>
|
|
||||||
<div class="dataflash-saving-before">
|
|
||||||
<div i18n="dataflashSavingNote">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<progress value="0" min="0" max="100"></progress>
|
|
||||||
|
|
||||||
<div class="buttons">
|
|
||||||
<a href="#" class="save-flash-cancel" i18n="dataflashButtonSaveCancel"></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="dataflash-saving-after">
|
|
||||||
<div i18n="dataflashSavingNoteAfter">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="buttons">
|
|
||||||
<a href="#" class="save-flash-dismiss" i18n="dataflashButtonSaveDismiss"></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</dialog>
|
|
||||||
|
|
||||||
<h3>Dataflash contents</h3>
|
|
||||||
<ul class="dataflash-contents">
|
|
||||||
<li class="dataflash-used">
|
|
||||||
<div class="legend">
|
|
||||||
Used space
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
<li class="dataflash-free">
|
|
||||||
<div class="legend">
|
|
||||||
Free space
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
<div class="buttons">
|
|
||||||
<a href="#" class="erase-flash" i18n="dataflashButtonErase"></a>
|
|
||||||
<a href="#" class="save-flash" i18n="dataflashButtonSaveFile"></a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
|
@ -71,20 +71,27 @@ TABS.dataflash.initialize = function (callback) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function create_html() {
|
function create_html() {
|
||||||
|
var
|
||||||
|
supportsDataflash = DATAFLASH.totalSize > 0;
|
||||||
|
|
||||||
// translate to user-selected language
|
// translate to user-selected language
|
||||||
localize();
|
localize();
|
||||||
|
|
||||||
// UI hooks
|
$(".tab-dataflash").toggleClass("supported", supportsDataflash);
|
||||||
$('.tab-dataflash a.erase-flash').click(ask_to_erase_flash);
|
|
||||||
|
|
||||||
$('.tab-dataflash a.erase-flash-confirm').click(flash_erase);
|
if (supportsDataflash) {
|
||||||
$('.tab-dataflash a.erase-flash-cancel').click(flash_erase_cancel);
|
// UI hooks
|
||||||
|
$('.tab-dataflash a.erase-flash').click(ask_to_erase_flash);
|
||||||
$('.tab-dataflash a.save-flash').click(flash_save_begin);
|
|
||||||
$('.tab-dataflash a.save-flash-cancel').click(flash_save_cancel);
|
$('.tab-dataflash a.erase-flash-confirm').click(flash_erase);
|
||||||
$('.tab-dataflash a.save-flash-dismiss').click(dismiss_saving_dialog);
|
$('.tab-dataflash a.erase-flash-cancel').click(flash_erase_cancel);
|
||||||
|
|
||||||
update_html();
|
$('.tab-dataflash a.save-flash').click(flash_save_begin);
|
||||||
|
$('.tab-dataflash a.save-flash-cancel').click(flash_save_cancel);
|
||||||
|
$('.tab-dataflash a.save-flash-dismiss').click(dismiss_saving_dialog);
|
||||||
|
|
||||||
|
update_html();
|
||||||
|
}
|
||||||
|
|
||||||
if (callback) callback();
|
if (callback) callback();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue