Fix some LVGL bugs (#19904)
This commit is contained in:
parent
a74e82fbae
commit
75b0e3246a
|
@ -21,7 +21,7 @@
|
||||||
*/
|
*/
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "../../inc/MarlinConfigPre.h"
|
#include "../../../../inc/MarlinConfigPre.h"
|
||||||
|
|
||||||
#if HAS_TFT_LVGL_UI
|
#if HAS_TFT_LVGL_UI
|
||||||
|
|
||||||
|
|
|
@ -50,20 +50,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
|
||||||
|
|
||||||
void lv_draw_about(void) {
|
void lv_draw_about(void) {
|
||||||
scr = lv_screen_create(ABOUT_UI);
|
scr = lv_screen_create(ABOUT_UI);
|
||||||
|
lv_big_button_create(scr, "F:/bmp_return.bin", common_menu.text_back, BTN_X_PIXEL * 3 + INTERVAL_V * 4, BTN_Y_PIXEL + INTERVAL_H + titleHeight, event_handler, ID_A_RETURN);
|
||||||
// Create an Image button
|
|
||||||
lv_obj_t *buttonBack = lv_imgbtn_create(scr, "F:/bmp_return.bin", BTN_X_PIXEL * 3 + INTERVAL_V * 4, BTN_Y_PIXEL + INTERVAL_H + titleHeight, event_handler, ID_A_RETURN);
|
|
||||||
#if HAS_ROTARY_ENCODER
|
|
||||||
if (gCfgItems.encoder_enable) lv_group_add_obj(g, buttonBack);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Create a label on the image button
|
|
||||||
lv_obj_t *label_Back = lv_label_create_empty(buttonBack);
|
|
||||||
|
|
||||||
if (gCfgItems.multiple_language) {
|
|
||||||
lv_label_set_text(label_Back, common_menu.text_back);
|
|
||||||
lv_obj_align(label_Back, buttonBack, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
|
||||||
}
|
|
||||||
|
|
||||||
//fw_version = lv_label_create(scr, SHORT_BUILD_VERSION);
|
//fw_version = lv_label_create(scr, SHORT_BUILD_VERSION);
|
||||||
//lv_obj_align(fw_version, nullptr, LV_ALIGN_CENTER, 0, -60);
|
//lv_obj_align(fw_version, nullptr, LV_ALIGN_CENTER, 0, -60);
|
||||||
|
|
|
@ -214,7 +214,7 @@ void lv_draw_dialog(uint8_t type) {
|
||||||
uiCfg.dialogType = type;
|
uiCfg.dialogType = type;
|
||||||
scr = lv_screen_create(DIALOG_UI);
|
scr = lv_screen_create(DIALOG_UI);
|
||||||
|
|
||||||
lv_obj_t *labelDialog = lv_label_create_empty(scr);
|
lv_obj_t *labelDialog = lv_label_create(scr, "");
|
||||||
|
|
||||||
if (DIALOG_IS(TYPE_FINISH_PRINT, PAUSE_MESSAGE_RESUME)) {
|
if (DIALOG_IS(TYPE_FINISH_PRINT, PAUSE_MESSAGE_RESUME)) {
|
||||||
btnOk = lv_button_btn_create(scr, BTN_OK_X + 90, BTN_OK_Y, 100, 50, btn_ok_event_cb);
|
btnOk = lv_button_btn_create(scr, BTN_OK_X + 90, BTN_OK_Y, 100, 50, btn_ok_event_cb);
|
||||||
|
|
|
@ -208,11 +208,6 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
|
||||||
void lv_draw_print_file(void) {
|
void lv_draw_print_file(void) {
|
||||||
//uint8_t i;
|
//uint8_t i;
|
||||||
uint8_t file_count;
|
uint8_t file_count;
|
||||||
if (disp_state_stack._disp_state[disp_state_stack._disp_index] != PRINT_FILE_UI) {
|
|
||||||
disp_state_stack._disp_index++;
|
|
||||||
disp_state_stack._disp_state[disp_state_stack._disp_index] = PRINT_FILE_UI;
|
|
||||||
}
|
|
||||||
disp_state = PRINT_FILE_UI;
|
|
||||||
|
|
||||||
curDirLever = 0;
|
curDirLever = 0;
|
||||||
dir_offset[curDirLever].curPage = 0;
|
dir_offset[curDirLever].curPage = 0;
|
||||||
|
@ -252,7 +247,7 @@ static char test_public_buf_l[40];
|
||||||
void disp_gcode_icon(uint8_t file_num) {
|
void disp_gcode_icon(uint8_t file_num) {
|
||||||
uint8_t i;
|
uint8_t i;
|
||||||
|
|
||||||
scr = lv_screen_create(MAIN_UI, "");
|
scr = lv_screen_create(PRINT_FILE_UI, "");
|
||||||
|
|
||||||
// Create image buttons
|
// Create image buttons
|
||||||
buttonPageUp = lv_imgbtn_create(scr, "F:/bmp_pageUp.bin", OTHER_BTN_XPIEL * 3 + INTERVAL_V * 4, titleHeight, event_handler, ID_P_UP);
|
buttonPageUp = lv_imgbtn_create(scr, "F:/bmp_pageUp.bin", OTHER_BTN_XPIEL * 3 + INTERVAL_V * 4, titleHeight, event_handler, ID_P_UP);
|
||||||
|
|
|
@ -1640,7 +1640,6 @@ lv_obj_t* lv_screen_create(DISP_STATE newScreenType, const char* title) {
|
||||||
disp_state_stack._disp_state[disp_state_stack._disp_index] = newScreenType;
|
disp_state_stack._disp_state[disp_state_stack._disp_index] = newScreenType;
|
||||||
}
|
}
|
||||||
disp_state = newScreenType;
|
disp_state = newScreenType;
|
||||||
lv_refr_now(lv_refr_get_disp_refreshing());
|
|
||||||
|
|
||||||
// title
|
// title
|
||||||
lv_obj_t *titleLabel = nullptr;
|
lv_obj_t *titleLabel = nullptr;
|
||||||
|
@ -1651,18 +1650,22 @@ lv_obj_t* lv_screen_create(DISP_STATE newScreenType, const char* title) {
|
||||||
if (titleLabel)
|
if (titleLabel)
|
||||||
lv_obj_set_style(titleLabel, &tft_style_label_rel);
|
lv_obj_set_style(titleLabel, &tft_style_label_rel);
|
||||||
|
|
||||||
|
lv_refr_now(lv_refr_get_disp_refreshing());
|
||||||
|
|
||||||
return scr;
|
return scr;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create an empty label
|
// Create an empty label
|
||||||
lv_obj_t* lv_label_create_empty(lv_obj_t *par) {
|
lv_obj_t* lv_label_create_empty(lv_obj_t *par) {
|
||||||
return lv_label_create(par, (lv_obj_t*)nullptr);
|
lv_obj_t *label = lv_label_create(par, (lv_obj_t*)nullptr);
|
||||||
|
return label;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create a label with style and text
|
// Create a label with style and text
|
||||||
lv_obj_t* lv_label_create(lv_obj_t *par, const char *text) {
|
lv_obj_t* lv_label_create(lv_obj_t *par, const char *text) {
|
||||||
lv_obj_t *label = lv_label_create_empty(par);
|
lv_obj_t *label = lv_label_create_empty(par);
|
||||||
if (text) lv_label_set_text(label, text);
|
if (text) lv_label_set_text(label, text);
|
||||||
|
lv_obj_set_style(label, &tft_style_label_rel);
|
||||||
return label;
|
return label;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -86,7 +86,7 @@
|
||||||
#include "draw_wifi_tips.h"
|
#include "draw_wifi_tips.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "../../inc/MarlinConfigPre.h"
|
#include "../../../../inc/MarlinConfigPre.h"
|
||||||
#define FILE_SYS_USB 0
|
#define FILE_SYS_USB 0
|
||||||
#define FILE_SYS_SD 1
|
#define FILE_SYS_SD 1
|
||||||
|
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
#include "../../../../MarlinCore.h"
|
#include "../../../../MarlinCore.h"
|
||||||
#include "../../../../inc/MarlinConfig.h"
|
#include "../../../../inc/MarlinConfig.h"
|
||||||
|
|
||||||
#include HAL_PATH(../../HAL, tft/xpt2046.h)
|
#include HAL_PATH(../../../../HAL, tft/xpt2046.h)
|
||||||
#include "../../../marlinui.h"
|
#include "../../../marlinui.h"
|
||||||
XPT2046 touch;
|
XPT2046 touch;
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
extern "C" { /* C-declarations for C++ */
|
extern "C" { /* C-declarations for C++ */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "../../inc/MarlinConfigPre.h"
|
#include "../../../../inc/MarlinConfigPre.h"
|
||||||
|
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
Loading…
Reference in a new issue