From 6f762bb7c776894ca49f8143cf28dade4099d988 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Sun, 10 Nov 2019 10:45:49 +0100 Subject: [PATCH] fix lv_cpicker_set_color with 16 bit color depth and byte swap Fixes #1257 --- src/lv_objx/lv_cpicker.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/lv_objx/lv_cpicker.c b/src/lv_objx/lv_cpicker.c index cf1f1a129..73197d374 100644 --- a/src/lv_objx/lv_cpicker.c +++ b/src/lv_objx/lv_cpicker.c @@ -275,7 +275,12 @@ bool lv_cpicker_set_hsv(lv_obj_t * cpicker, lv_color_hsv_t hsv) */ bool lv_cpicker_set_color(lv_obj_t * cpicker, lv_color_t color) { +#if LV_COLOR_DEPTH == 16 && LV_COLOR_16_SWAP != 0 + uint8_t green = (color.ch.green_h << 3) + color.ch.green_l; + return lv_cpicker_set_hsv(cpicker, lv_color_rgb_to_hsv(color.ch.red, green, color.ch.blue)); +#else return lv_cpicker_set_hsv(cpicker, lv_color_rgb_to_hsv(color.ch.red, color.ch.green, color.ch.blue)); +#endif } /**