Release v7.9.0
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "lvgl",
|
"name": "lvgl",
|
||||||
"version": "7.8.1",
|
"version": "7.9.0",
|
||||||
"keywords": "graphics, gui, embedded, tft, lvgl",
|
"keywords": "graphics, gui, embedded, tft, lvgl",
|
||||||
"description": "Graphics library to create embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint. It offers anti-aliasing, opacity, and animations using only one frame buffer.",
|
"description": "Graphics library to create embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint. It offers anti-aliasing, opacity, and animations using only one frame buffer.",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
name=lvgl
|
name=lvgl
|
||||||
version=7.8.1
|
version=7.9.0
|
||||||
author=kisvegabor
|
author=kisvegabor
|
||||||
maintainer=kisvegabor,embeddedt,pete-pjb
|
maintainer=kisvegabor,embeddedt,pete-pjb
|
||||||
sentence=Full-featured Graphics Library for Embedded Systems
|
sentence=Full-featured Graphics Library for Embedded Systems
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/**
|
/**
|
||||||
* @file lv_conf.h
|
* @file lv_conf.h
|
||||||
* Configuration file for v7.8.1-dev
|
* Configuration file for v7.9.0
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
2
lvgl.h
2
lvgl.h
@@ -17,7 +17,7 @@ extern "C" {
|
|||||||
#define LVGL_VERSION_MAJOR 7
|
#define LVGL_VERSION_MAJOR 7
|
||||||
#define LVGL_VERSION_MINOR 9
|
#define LVGL_VERSION_MINOR 9
|
||||||
#define LVGL_VERSION_PATCH 0
|
#define LVGL_VERSION_PATCH 0
|
||||||
#define LVGL_VERSION_INFO "dev"
|
#define LVGL_VERSION_INFO ""
|
||||||
|
|
||||||
/*********************
|
/*********************
|
||||||
* INCLUDES
|
* INCLUDES
|
||||||
|
|||||||
@@ -656,7 +656,7 @@ static void show_error(const lv_area_t * coords, const lv_area_t * clip_area, co
|
|||||||
|
|
||||||
static void draw_cleanup(lv_img_cache_entry_t * cache)
|
static void draw_cleanup(lv_img_cache_entry_t * cache)
|
||||||
{
|
{
|
||||||
/*Automatically close images with no caching*/
|
/*Automatically close images with no caching*/
|
||||||
#if LV_IMG_CACHE_DEF_SIZE == 0
|
#if LV_IMG_CACHE_DEF_SIZE == 0
|
||||||
lv_img_decoder_close(&cache->dec_dsc);
|
lv_img_decoder_close(&cache->dec_dsc);
|
||||||
#else
|
#else
|
||||||
|
|||||||
@@ -37,14 +37,14 @@
|
|||||||
* STATIC PROTOTYPES
|
* STATIC PROTOTYPES
|
||||||
**********************/
|
**********************/
|
||||||
#if LV_IMG_CACHE_DEF_SIZE == 0
|
#if LV_IMG_CACHE_DEF_SIZE == 0
|
||||||
static lv_img_cache_entry_t cache_temp;
|
static lv_img_cache_entry_t cache_temp;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
* STATIC VARIABLES
|
* STATIC VARIABLES
|
||||||
**********************/
|
**********************/
|
||||||
#if LV_IMG_CACHE_DEF_SIZE
|
#if LV_IMG_CACHE_DEF_SIZE
|
||||||
static uint16_t entry_cnt;
|
static uint16_t entry_cnt;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
|
|||||||
@@ -641,7 +641,7 @@ static bool calculate_touched_day(lv_obj_t * calendar, const lv_point_t * touche
|
|||||||
ext->pressed_date.year = ext->showed_date.year - (ext->showed_date.month == 1 ? 1 : 0);
|
ext->pressed_date.year = ext->showed_date.year - (ext->showed_date.month == 1 ? 1 : 0);
|
||||||
ext->pressed_date.month = ext->showed_date.month == 1 ? 12 : (ext->showed_date.month - 1);
|
ext->pressed_date.month = ext->showed_date.month == 1 ? 12 : (ext->showed_date.month - 1);
|
||||||
ext->pressed_date.day = get_month_length(ext->pressed_date.year, ext->pressed_date.month) -
|
ext->pressed_date.day = get_month_length(ext->pressed_date.year, ext->pressed_date.month) -
|
||||||
lv_calendar_get_day_of_week(ext->showed_date.year, ext->showed_date.month, 1) + 1 + i_pos;
|
lv_calendar_get_day_of_week(ext->showed_date.year, ext->showed_date.month, 1) + 1 + i_pos;
|
||||||
}
|
}
|
||||||
else if(i_pos < (lv_calendar_get_day_of_week(ext->showed_date.year, ext->showed_date.month, 1) +
|
else if(i_pos < (lv_calendar_get_day_of_week(ext->showed_date.year, ext->showed_date.month, 1) +
|
||||||
get_month_length(ext->showed_date.year, ext->showed_date.month))) {
|
get_month_length(ext->showed_date.year, ext->showed_date.month))) {
|
||||||
|
|||||||
@@ -217,7 +217,7 @@ void lv_chart_remove_series(lv_obj_t * chart, lv_chart_series_t * series)
|
|||||||
{
|
{
|
||||||
LV_ASSERT_OBJ(chart, LV_OBJX_NAME);
|
LV_ASSERT_OBJ(chart, LV_OBJX_NAME);
|
||||||
LV_ASSERT_NULL(series);
|
LV_ASSERT_NULL(series);
|
||||||
|
|
||||||
if(chart == NULL || series == NULL) return;
|
if(chart == NULL || series == NULL) return;
|
||||||
lv_chart_ext_t * ext = lv_obj_get_ext_attr(chart);
|
lv_chart_ext_t * ext = lv_obj_get_ext_attr(chart);
|
||||||
if(!series->ext_buf_assigned && series->points) lv_mem_free(series->points);
|
if(!series->ext_buf_assigned && series->points) lv_mem_free(series->points);
|
||||||
@@ -1180,7 +1180,7 @@ static void draw_series_line(lv_obj_t * chart, const lv_area_t * series_area, co
|
|||||||
|
|
||||||
/*Go through all data lines*/
|
/*Go through all data lines*/
|
||||||
_LV_LL_READ_BACK(ext->series_ll, ser) {
|
_LV_LL_READ_BACK(ext->series_ll, ser) {
|
||||||
if (ser->hidden) continue;
|
if(ser->hidden) continue;
|
||||||
line_dsc.color = ser->color;
|
line_dsc.color = ser->color;
|
||||||
point_dsc.bg_color = ser->color;
|
point_dsc.bg_color = ser->color;
|
||||||
area_dsc.bg_color = ser->color;
|
area_dsc.bg_color = ser->color;
|
||||||
@@ -1317,7 +1317,7 @@ static void draw_series_column(lv_obj_t * chart, const lv_area_t * series_area,
|
|||||||
|
|
||||||
/*Draw the current point of all data line*/
|
/*Draw the current point of all data line*/
|
||||||
_LV_LL_READ_BACK(ext->series_ll, ser) {
|
_LV_LL_READ_BACK(ext->series_ll, ser) {
|
||||||
if (ser->hidden) continue;
|
if(ser->hidden) continue;
|
||||||
lv_coord_t start_point = ext->update_mode == LV_CHART_UPDATE_MODE_SHIFT ? ser->start_point : 0;
|
lv_coord_t start_point = ext->update_mode == LV_CHART_UPDATE_MODE_SHIFT ? ser->start_point : 0;
|
||||||
|
|
||||||
col_a.x1 = x_act;
|
col_a.x1 = x_act;
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
#define LV_OBJX_NAME "lv_cont"
|
#define LV_OBJX_NAME "lv_cont"
|
||||||
|
|
||||||
#ifndef LV_LAYOUT_MAX_RECURSION
|
#ifndef LV_LAYOUT_MAX_RECURSION
|
||||||
#define LV_LAYOUT_MAX_RECURSION 10
|
#define LV_LAYOUT_MAX_RECURSION 10
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
@@ -787,7 +787,7 @@ static void lv_cont_refr_autofit(lv_obj_t * cont)
|
|||||||
|
|
||||||
/*Do nothing if the coordinates are not changed*/
|
/*Do nothing if the coordinates are not changed*/
|
||||||
if(cont->coords.x1 != new_area.x1 || cont->coords.y1 != new_area.y1 || cont->coords.x2 != new_area.x2 ||
|
if(cont->coords.x1 != new_area.x1 || cont->coords.y1 != new_area.y1 || cont->coords.x2 != new_area.x2 ||
|
||||||
cont->coords.y2 != new_area.y2) {
|
cont->coords.y2 != new_area.y2) {
|
||||||
|
|
||||||
lv_obj_invalidate(cont);
|
lv_obj_invalidate(cont);
|
||||||
lv_area_copy(&cont->coords, &new_area);
|
lv_area_copy(&cont->coords, &new_area);
|
||||||
@@ -808,7 +808,8 @@ static void lv_cont_refr_autofit(lv_obj_t * cont)
|
|||||||
child_i->signal_cb(child_i, LV_SIGNAL_PARENT_SIZE_CHG, &ori);
|
child_i->signal_cb(child_i, LV_SIGNAL_PARENT_SIZE_CHG, &ori);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
}
|
||||||
|
else {
|
||||||
LV_LOG_ERROR("LV_LAYOUT_MAX_RECURSION reached! You may have encountered issue #1539.");
|
LV_LOG_ERROR("LV_LAYOUT_MAX_RECURSION reached! You may have encountered issue #1539.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -598,21 +598,21 @@ static lv_design_res_t lv_win_header_design(lv_obj_t * header, const lv_area_t *
|
|||||||
case LV_TXT_FLAG_CENTER:
|
case LV_TXT_FLAG_CENTER:
|
||||||
txt_area.x1 = header->coords.x1 + header_left + btn_offset;
|
txt_area.x1 = header->coords.x1 + header_left + btn_offset;
|
||||||
txt_area.x2 = header->coords.x2 - header_right - btn_offset;
|
txt_area.x2 = header->coords.x2 - header_right - btn_offset;
|
||||||
txt_area.y1 = header->coords.y1 + (lv_obj_get_height(header) - txt_size.y) / 2;
|
txt_area.y1 = header->coords.y1 + (lv_obj_get_height(header) - txt_size.y) / 2;
|
||||||
txt_area.y2 = txt_area.y1 + txt_size.y;
|
txt_area.y2 = txt_area.y1 + txt_size.y;
|
||||||
break;
|
break;
|
||||||
case LV_TXT_FLAG_RIGHT:
|
case LV_TXT_FLAG_RIGHT:
|
||||||
txt_area.x1 = header->coords.x1;
|
txt_area.x1 = header->coords.x1;
|
||||||
txt_area.x2 = header->coords.x2 - header_right - btn_offset;
|
txt_area.x2 = header->coords.x2 - header_right - btn_offset;
|
||||||
txt_area.y1 = header->coords.y1 + (lv_obj_get_height(header) - txt_size.y) / 2;
|
txt_area.y1 = header->coords.y1 + (lv_obj_get_height(header) - txt_size.y) / 2;
|
||||||
txt_area.y2 = txt_area.y1 + txt_size.y;
|
txt_area.y2 = txt_area.y1 + txt_size.y;
|
||||||
break;
|
break;
|
||||||
case LV_TXT_FLAG_FIT || LV_TXT_FLAG_EXPAND:
|
case LV_TXT_FLAG_FIT || LV_TXT_FLAG_EXPAND:
|
||||||
txt_area.x1 = header->coords.x1;
|
txt_area.x1 = header->coords.x1;
|
||||||
txt_area.x2 = header->coords.x2;
|
txt_area.x2 = header->coords.x2;
|
||||||
txt_area.y1 = header->coords.y1 + (lv_obj_get_height(header) - txt_size.y) / 2;
|
txt_area.y1 = header->coords.y1 + (lv_obj_get_height(header) - txt_size.y) / 2;
|
||||||
txt_area.y2 = txt_area.y1 + txt_size.y;
|
txt_area.y2 = txt_area.y1 + txt_size.y;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
txt_area.x1 = header->coords.x1 + header_left + btn_offset;
|
txt_area.x1 = header->coords.x1 + header_left + btn_offset;
|
||||||
txt_area.x2 = txt_area.x1 + txt_size.x + btn_offset;
|
txt_area.x2 = txt_area.x1 + txt_size.x + btn_offset;
|
||||||
|
|||||||
@@ -177,7 +177,7 @@ void lv_win_set_anim_time(lv_obj_t * win, uint16_t anim_time);
|
|||||||
void lv_win_set_drag(lv_obj_t * win, bool en);
|
void lv_win_set_drag(lv_obj_t * win, bool en);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set alignment of title text in window header.
|
* Set alignment of title text in window header.
|
||||||
* @param win pointer to a window object
|
* @param win pointer to a window object
|
||||||
* @param alignment set the type of alignment with LV_TXT_FLAGS
|
* @param alignment set the type of alignment with LV_TXT_FLAGS
|
||||||
*/
|
*/
|
||||||
@@ -263,7 +263,7 @@ static inline bool lv_win_get_drag(const lv_obj_t * win)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the current alignment of title text in window header.
|
* Get the current alignment of title text in window header.
|
||||||
* @param win pointer to a window object
|
* @param win pointer to a window object
|
||||||
*/
|
*/
|
||||||
uint8_t lv_win_title_get_alignment(lv_obj_t * win);
|
uint8_t lv_win_title_get_alignment(lv_obj_t * win);
|
||||||
|
|||||||
Reference in New Issue
Block a user