mirror of
https://github.com/arendst/Tasmota.git
synced 2025-04-24 23:07:17 +00:00
ESP32 LVGL library from v8.3.6 to v8.3.7 (no functional change) (#18573)
* ESP32 LVGL library from v8.3.7 to v8.3.7 (no functional change) * Fix version
This commit is contained in:
parent
0cbe2fc587
commit
fe1bc615f0
@ -18,6 +18,7 @@ All notable changes to this project will be documented in this file.
|
||||
### Changed
|
||||
- ESP32 Framework (Core) from v2.0.7 to v2.0.8
|
||||
- Refactored Zero Cross Dimmer (#18481)
|
||||
- ESP32 LVGL library from v8.3.6 to v8.3.7 (no functional change)
|
||||
|
||||
### Fixed
|
||||
- ESP8266 Energy Export Active no update regression from v12.3.1.3
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "lvgl",
|
||||
"version": "8.3.6",
|
||||
"version": "8.3.7",
|
||||
"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.",
|
||||
"repository": {
|
||||
|
@ -1,5 +1,5 @@
|
||||
name=lvgl
|
||||
version=8.3.6
|
||||
version=8.3.7
|
||||
author=kisvegabor
|
||||
maintainer=kisvegabor,embeddedt,pete-pjb
|
||||
sentence=Full-featured Graphics Library for Embedded Systems
|
||||
|
@ -1,6 +1,6 @@
|
||||
/**
|
||||
* @file lv_conf.h
|
||||
* Configuration file for v8.3.6
|
||||
* Configuration file for v8.3.7
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@ -15,7 +15,7 @@ extern "C" {
|
||||
***************************/
|
||||
#define LVGL_VERSION_MAJOR 8
|
||||
#define LVGL_VERSION_MINOR 3
|
||||
#define LVGL_VERSION_PATCH 6
|
||||
#define LVGL_VERSION_PATCH 7
|
||||
#define LVGL_VERSION_INFO ""
|
||||
|
||||
/*********************
|
||||
|
@ -281,12 +281,13 @@ static lv_obj_t * find_scroll_obj(_lv_indev_proc_t * proc)
|
||||
while(obj_act) {
|
||||
/*Get the transformed scroll_sum with this object*/
|
||||
int16_t angle = 0;
|
||||
int16_t zoom = 256;
|
||||
int32_t zoom = 256;
|
||||
lv_point_t pivot = { 0, 0 };
|
||||
lv_obj_t * parent = obj_act;
|
||||
while(parent) {
|
||||
angle += lv_obj_get_style_transform_angle(parent, 0);
|
||||
zoom *= (lv_obj_get_style_transform_zoom(parent, 0) / 256);
|
||||
int32_t zoom_act = lv_obj_get_style_transform_zoom(parent, 0);
|
||||
zoom = (zoom * zoom_act) >> 8;
|
||||
parent = lv_obj_get_parent(parent);
|
||||
}
|
||||
|
||||
|
@ -749,6 +749,7 @@ static void trans_anim_cb(void * _tr, int32_t v)
|
||||
else value_final.ptr = tr->end_value.ptr;
|
||||
break;
|
||||
case LV_STYLE_BG_COLOR:
|
||||
case LV_STYLE_BG_GRAD_COLOR:
|
||||
case LV_STYLE_BORDER_COLOR:
|
||||
case LV_STYLE_TEXT_COLOR:
|
||||
case LV_STYLE_SHADOW_COLOR:
|
||||
|
@ -3,6 +3,24 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (C) 2010-2023 Arm Limited or its affiliates. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the License); you may
|
||||
* not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
|
||||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
@ -94,6 +112,8 @@
|
||||
arm_2dp_rgb565_tile_transform_with_src_mask_and_opacity_prepare
|
||||
#define arm_2d_tile_transform_with_opacity_prepare \
|
||||
arm_2dp_rgb565_tile_transform_with_opacity_prepare
|
||||
#define arm_2d_tile_transform_only_with_opacity_prepare \
|
||||
arm_2dp_rgb565_tile_transform_only_with_opacity_prepare
|
||||
#define arm_2d_tile_transform_prepare \
|
||||
arm_2dp_rgb565_tile_transform_prepare
|
||||
|
||||
@ -131,6 +151,8 @@
|
||||
arm_2dp_cccn888_tile_transform_with_src_mask_and_opacity_prepare
|
||||
#define arm_2d_tile_transform_with_opacity_prepare \
|
||||
arm_2dp_cccn888_tile_transform_with_opacity_prepare
|
||||
#define arm_2d_tile_transform_only_with_opacity_prepare \
|
||||
arm_2dp_cccn888_tile_transform_only_with_opacity_prepare
|
||||
#define arm_2d_tile_transform_prepare \
|
||||
arm_2dp_cccn888_tile_transform_prepare
|
||||
|
||||
@ -345,7 +367,7 @@
|
||||
#define __RECOLOUR_END() \
|
||||
} while(0); \
|
||||
if (NULL != rgb_tmp_buf) { \
|
||||
lv_free(rgb_tmp_buf); \
|
||||
lv_mem_buf_release(rgb_tmp_buf); \
|
||||
} \
|
||||
} while(0); \
|
||||
src_buf = src_buf_org;
|
||||
@ -1270,8 +1292,7 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
|
||||
source_center.iX = draw_dsc->pivot.x;
|
||||
source_center.iY = draw_dsc->pivot.y;
|
||||
|
||||
if((LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED == cf) ||
|
||||
(LV_IMG_CF_TRUE_COLOR == cf)) {
|
||||
if(LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED == cf) {
|
||||
|
||||
__ARM_2D_PREPARE_TRANS_AND_TARGET_REGION(
|
||||
arm_2d_tile_transform_with_opacity_prepare,
|
||||
@ -1289,6 +1310,24 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
|
||||
);
|
||||
is_accelerated = true;
|
||||
}
|
||||
#if ARM_2D_VERISON >= 10103
|
||||
else if (LV_IMG_CF_TRUE_COLOR == cf) {
|
||||
__ARM_2D_PREPARE_TRANS_AND_TARGET_REGION(
|
||||
arm_2d_tile_transform_only_with_opacity_prepare,
|
||||
&source_tile,
|
||||
source_center,
|
||||
ARM_2D_ANGLE((draw_dsc->angle / 10.0f)),
|
||||
draw_dsc->zoom / 256.0f,
|
||||
blend_dsc.opa);
|
||||
|
||||
arm_2d_tile_transform(
|
||||
&target_tile,
|
||||
&target_region,
|
||||
NULL
|
||||
);
|
||||
is_accelerated = true;
|
||||
}
|
||||
#endif
|
||||
else if (LV_IMG_CF_RGB565A8 == cf) {
|
||||
static arm_2d_tile_t mask_tile;
|
||||
mask_tile = source_tile;
|
||||
|
@ -195,6 +195,11 @@ void lv_menu_set_page(lv_obj_t * obj, lv_obj_t * page)
|
||||
|
||||
lv_menu_t * menu = (lv_menu_t *)obj;
|
||||
|
||||
/* Guard against setting the same page again */
|
||||
if(menu->main_page == page) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* Hide previous page */
|
||||
if(menu->main_page != NULL) {
|
||||
lv_obj_set_parent(menu->main_page, menu->storage);
|
||||
|
@ -434,9 +434,6 @@ static void lv_spinbox_event(const lv_obj_class_t * class_p, lv_event_t * e)
|
||||
else if(c == LV_KEY_DOWN) {
|
||||
lv_spinbox_decrement(obj);
|
||||
}
|
||||
else {
|
||||
lv_textarea_add_char(obj, c);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -440,7 +440,11 @@ LV_ATTRIBUTE_FAST_MEM static inline lv_color_t lv_color_mix(lv_color_t c1, lv_co
|
||||
{
|
||||
lv_color_t ret;
|
||||
|
||||
#if LV_COLOR_DEPTH == 16 && LV_COLOR_16_SWAP == 0 && LV_COLOR_MIX_ROUND_OFS == 0
|
||||
#if LV_COLOR_DEPTH == 16 && LV_COLOR_MIX_ROUND_OFS == 0
|
||||
#if LV_COLOR_16_SWAP == 1
|
||||
c1.full = c1.full << 8 | c1.full >> 8;
|
||||
c2.full = c2.full << 8 | c2.full >> 8;
|
||||
#endif
|
||||
/*Source: https://stackoverflow.com/a/50012418/1999969*/
|
||||
mix = (uint32_t)((uint32_t)mix + 4) >> 3;
|
||||
uint32_t bg = (uint32_t)((uint32_t)c2.full | ((uint32_t)c2.full << 16)) &
|
||||
@ -448,6 +452,9 @@ LV_ATTRIBUTE_FAST_MEM static inline lv_color_t lv_color_mix(lv_color_t c1, lv_co
|
||||
uint32_t fg = (uint32_t)((uint32_t)c1.full | ((uint32_t)c1.full << 16)) & 0x7E0F81F;
|
||||
uint32_t result = ((((fg - bg) * mix) >> 5) + bg) & 0x7E0F81F;
|
||||
ret.full = (uint16_t)((result >> 16) | result);
|
||||
#if LV_COLOR_16_SWAP == 1
|
||||
ret.full = ret.full << 8 | ret.full >> 8;
|
||||
#endif
|
||||
#elif LV_COLOR_DEPTH != 1
|
||||
/*LV_COLOR_DEPTH == 8, 16 or 32*/
|
||||
LV_COLOR_SET_R(ret, LV_UDIV255((uint16_t)LV_COLOR_GET_R(c1) * mix + LV_COLOR_GET_R(c2) *
|
||||
|
@ -32,18 +32,19 @@ LV_EXPORT_CONST_INT(LV_BTNMATRIX_BTN_NONE);
|
||||
/** Type to store button control bits (disabled, hidden etc.)
|
||||
* The first 3 bits are used to store the width*/
|
||||
enum {
|
||||
_LV_BTNMATRIX_WIDTH = 0x0007, /**< Reserved to stire the size units*/
|
||||
LV_BTNMATRIX_CTRL_HIDDEN = 0x0008, /**< Button hidden*/
|
||||
LV_BTNMATRIX_CTRL_NO_REPEAT = 0x0010, /**< Do not repeat press this button.*/
|
||||
LV_BTNMATRIX_CTRL_DISABLED = 0x0020, /**< Disable this button.*/
|
||||
LV_BTNMATRIX_CTRL_CHECKABLE = 0x0040, /**< The button can be toggled.*/
|
||||
LV_BTNMATRIX_CTRL_CHECKED = 0x0080, /**< Button is currently toggled (e.g. checked).*/
|
||||
LV_BTNMATRIX_CTRL_CLICK_TRIG = 0x0100, /**< 1: Send LV_EVENT_VALUE_CHANGE on CLICK, 0: Send LV_EVENT_VALUE_CHANGE on PRESS*/
|
||||
LV_BTNMATRIX_CTRL_POPOVER = 0x0200, /**< Show a popover when pressing this key*/
|
||||
LV_BTNMATRIX_CTRL_RECOLOR = 0x1000, /**< Enable text recoloring with `#color`*/
|
||||
_LV_BTNMATRIX_CTRL_RESERVED = 0x2000, /**< Reserved for later use*/
|
||||
LV_BTNMATRIX_CTRL_CUSTOM_1 = 0x4000, /**< Custom free to use flag*/
|
||||
LV_BTNMATRIX_CTRL_CUSTOM_2 = 0x8000, /**< Custom free to use flag*/
|
||||
_LV_BTNMATRIX_WIDTH = 0x000F, /**< Reserved to store the size units*/
|
||||
LV_BTNMATRIX_CTRL_HIDDEN = 0x0010, /**< Button hidden*/
|
||||
LV_BTNMATRIX_CTRL_NO_REPEAT = 0x0020, /**< Do not repeat press this button.*/
|
||||
LV_BTNMATRIX_CTRL_DISABLED = 0x0040, /**< Disable this button.*/
|
||||
LV_BTNMATRIX_CTRL_CHECKABLE = 0x0080, /**< The button can be toggled.*/
|
||||
LV_BTNMATRIX_CTRL_CHECKED = 0x0100, /**< Button is currently toggled (e.g. checked).*/
|
||||
LV_BTNMATRIX_CTRL_CLICK_TRIG = 0x0200, /**< 1: Send LV_EVENT_VALUE_CHANGE on CLICK, 0: Send LV_EVENT_VALUE_CHANGE on PRESS*/
|
||||
LV_BTNMATRIX_CTRL_POPOVER = 0x0400, /**< Show a popover when pressing this key*/
|
||||
LV_BTNMATRIX_CTRL_RECOLOR = 0x0800, /**< Enable text recoloring with `#color`*/
|
||||
_LV_BTNMATRIX_CTRL_RESERVED_1 = 0x1000, /**< Reserved for later use*/
|
||||
_LV_BTNMATRIX_CTRL_RESERVED_2 = 0x2000, /**< Reserved for later use*/
|
||||
LV_BTNMATRIX_CTRL_CUSTOM_1 = 0x4000, /**< Custom free to use flag*/
|
||||
LV_BTNMATRIX_CTRL_CUSTOM_2 = 0x8000, /**< Custom free to use flag*/
|
||||
};
|
||||
|
||||
typedef uint16_t lv_btnmatrix_ctrl_t;
|
||||
|
Loading…
x
Reference in New Issue
Block a user