Add selectable logo images
This commit is contained in:
parent
fc78d80d8d
commit
d45dba3dd7
8 changed files with 226 additions and 2 deletions
|
@ -48,7 +48,10 @@ if(CONFIG_ZMK_DISPLAY)
|
||||||
zephyr_library_sources(widgets/icons/layers2.c)
|
zephyr_library_sources(widgets/icons/layers2.c)
|
||||||
endif()
|
endif()
|
||||||
if(NOT CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
if(NOT CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||||
zephyr_library_sources(widgets/icons/zenlogo.c)
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_ZEN app PRIVATE widgets/icons/zenlogo.c)
|
||||||
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_LPKB app PRIVATE widgets/icons/lpkblogo.c)
|
||||||
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_ZMK app PRIVATE widgets/icons/zmklogo.c)
|
||||||
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_MIRYOKU app PRIVATE widgets/icons/miryokulogo.c)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -74,6 +74,23 @@ menuconfig CUSTOM_WIDGET_PERIPHERAL_STATUS
|
||||||
config CUSTOM_WIDGET_LAYER_STATUS_HIDE_HEADING
|
config CUSTOM_WIDGET_LAYER_STATUS_HIDE_HEADING
|
||||||
bool "Hide heading strip for layer widget and center widgets on 1/3rds"
|
bool "Hide heading strip for layer widget and center widgets on 1/3rds"
|
||||||
|
|
||||||
|
choice CUSTOM_WIDGET_LOGO_IMAGE
|
||||||
|
prompt "custom logo widget image"
|
||||||
|
|
||||||
|
config CUSTOM_WIDGET_LOGO_IMAGE_ZEN
|
||||||
|
bool "Corne-ish Zen"
|
||||||
|
|
||||||
|
config CUSTOM_WIDGET_LOGO_IMAGE_LPKB
|
||||||
|
bool "LPKB"
|
||||||
|
|
||||||
|
config CUSTOM_WIDGET_LOGO_IMAGE_ZMK
|
||||||
|
bool "ZMK"
|
||||||
|
|
||||||
|
config CUSTOM_WIDGET_LOGO_IMAGE_MIRYOKU
|
||||||
|
bool "Miryoku"
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
|
||||||
endif # BOARD_CORNEISH_ZEN_LEFT || BOARD_CORNEISH_ZEN_RIGHT
|
endif # BOARD_CORNEISH_ZEN_LEFT || BOARD_CORNEISH_ZEN_RIGHT
|
||||||
|
|
||||||
if BOARD_CORNEISH_ZEN_V1_LEFT || BOARD_CORNEISH_ZEN_V1_RIGHT
|
if BOARD_CORNEISH_ZEN_V1_LEFT || BOARD_CORNEISH_ZEN_V1_RIGHT
|
||||||
|
|
|
@ -60,6 +60,7 @@ CONFIG_CUSTOM_WIDGET_OUTPUT_STATUS=y
|
||||||
CONFIG_ZMK_WIDGET_OUTPUT_STATUS=n
|
CONFIG_ZMK_WIDGET_OUTPUT_STATUS=n
|
||||||
CONFIG_CUSTOM_WIDGET_LAYER_STATUS=y
|
CONFIG_CUSTOM_WIDGET_LAYER_STATUS=y
|
||||||
CONFIG_ZMK_WIDGET_LAYER_STATUS=n
|
CONFIG_ZMK_WIDGET_LAYER_STATUS=n
|
||||||
|
CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_ZEN=y
|
||||||
|
|
||||||
# Turn on logging, and set ZMK logging to debug output
|
# Turn on logging, and set ZMK logging to debug output
|
||||||
#CONFIG_LOG=y
|
#CONFIG_LOG=y
|
||||||
|
|
|
@ -58,6 +58,7 @@ CONFIG_CUSTOM_WIDGET_BATTERY_STATUS=y
|
||||||
CONFIG_ZMK_WIDGET_BATTERY_STATUS=n
|
CONFIG_ZMK_WIDGET_BATTERY_STATUS=n
|
||||||
CONFIG_CUSTOM_WIDGET_PERIPHERAL_STATUS=y
|
CONFIG_CUSTOM_WIDGET_PERIPHERAL_STATUS=y
|
||||||
CONFIG_ZMK_WIDGET_PERIPHERAL_STATUS=n
|
CONFIG_ZMK_WIDGET_PERIPHERAL_STATUS=n
|
||||||
|
CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_ZEN=y
|
||||||
|
|
||||||
# Turn on logging, and set ZMK logging to debug output
|
# Turn on logging, and set ZMK logging to debug output
|
||||||
#CONFIG_LOG=y
|
#CONFIG_LOG=y
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
#include <zephyr/logging/log.h>
|
#include <zephyr/logging/log.h>
|
||||||
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||||
|
|
||||||
LV_IMG_DECLARE(zenlogo);
|
|
||||||
LV_IMG_DECLARE(layers2);
|
LV_IMG_DECLARE(layers2);
|
||||||
|
|
||||||
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_BATTERY_STATUS)
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_BATTERY_STATUS)
|
||||||
|
@ -88,7 +87,19 @@ lv_obj_t *zmk_display_status_screen() {
|
||||||
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||||
lv_obj_t *zenlogo_icon;
|
lv_obj_t *zenlogo_icon;
|
||||||
zenlogo_icon = lv_img_create(screen);
|
zenlogo_icon = lv_img_create(screen);
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_ZEN)
|
||||||
|
LV_IMG_DECLARE(zenlogo);
|
||||||
lv_img_set_src(zenlogo_icon, &zenlogo);
|
lv_img_set_src(zenlogo_icon, &zenlogo);
|
||||||
|
#elif IS_ENABLED(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_LPKB)
|
||||||
|
LV_IMG_DECLARE(lpkblogo);
|
||||||
|
lv_img_set_src(zenlogo_icon, &lpkblogo);
|
||||||
|
#elif IS_ENABLED(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_ZMK)
|
||||||
|
LV_IMG_DECLARE(zmklogo);
|
||||||
|
lv_img_set_src(zenlogo_icon, &zmklogo);
|
||||||
|
#elif IS_ENABLED(CONFIG_CUSTOM_WIDGET_LOGO_IMAGE_MIRYOKU)
|
||||||
|
LV_IMG_DECLARE(miryokulogo);
|
||||||
|
lv_img_set_src(zenlogo_icon, &miryokulogo);
|
||||||
|
#endif
|
||||||
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_LAYER_STATUS_HIDE_HEADING)
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_LAYER_STATUS_HIDE_HEADING)
|
||||||
lv_obj_align(zenlogo_icon, LV_ALIGN_CENTER, 0, 43);
|
lv_obj_align(zenlogo_icon, LV_ALIGN_CENTER, 0, 43);
|
||||||
#else
|
#else
|
||||||
|
|
67
app/boards/arm/corneish_zen/widgets/icons/lpkblogo.c
Normal file
67
app/boards/arm/corneish_zen/widgets/icons/lpkblogo.c
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_LPKBLOGO
|
||||||
|
#define LV_ATTRIBUTE_IMG_LPKBLOGO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_LPKBLOGO uint8_t lpkblogo_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x7f, 0xff, 0xff, 0xff, 0xc0,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xe0,
|
||||||
|
0xe0, 0x00, 0x00, 0x00, 0xe0,
|
||||||
|
0xc0, 0x00, 0x00, 0x00, 0x60,
|
||||||
|
0xc7, 0x83, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc3, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc3, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc3, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0x00, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0x00, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0x00, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0x00, 0x60,
|
||||||
|
0xcf, 0xc0, 0x00, 0x00, 0x60,
|
||||||
|
0xcf, 0xc3, 0xff, 0xf8, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xcf, 0xc7, 0xff, 0xfc, 0x60,
|
||||||
|
0xc7, 0x83, 0xff, 0xf8, 0x60,
|
||||||
|
0xc0, 0x00, 0x00, 0x00, 0x60,
|
||||||
|
0xe0, 0x00, 0x00, 0x00, 0xe0,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xe0,
|
||||||
|
0x7f, 0xff, 0xff, 0xff, 0xc0,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t lpkblogo = {
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.reserved = 0,
|
||||||
|
.header.w = 35,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 183,
|
||||||
|
.data = lpkblogo_map,
|
||||||
|
};
|
59
app/boards/arm/corneish_zen/widgets/icons/miryokulogo.c
Normal file
59
app/boards/arm/corneish_zen/widgets/icons/miryokulogo.c
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
// Copyright 2022 Manna Harbour
|
||||||
|
// https://github.com/manna-harbour/miryoku
|
||||||
|
|
||||||
|
#include "lvgl.h"
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_MIRYOKULOGO
|
||||||
|
#define LV_ATTRIBUTE_IMG_MIRYOKULOGO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_MIRYOKULOGO uint8_t miryokulogo_map[] = {
|
||||||
|
0x04, 0x02, 0x04, 0xff, /*Color of index 0*/
|
||||||
|
0xfc, 0xfe, 0xfc, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0xff, 0xff, 0xff, 0xff,
|
||||||
|
0x80, 0x00, 0x00, 0x01,
|
||||||
|
0x80, 0x00, 0x00, 0x01,
|
||||||
|
0x9f, 0xff, 0xff, 0xf9,
|
||||||
|
0x9f, 0xff, 0xff, 0xf9,
|
||||||
|
0x98, 0x01, 0x99, 0x99,
|
||||||
|
0x98, 0x01, 0x99, 0x99,
|
||||||
|
0x99, 0x99, 0x80, 0x19,
|
||||||
|
0x99, 0x99, 0x80, 0x19,
|
||||||
|
0x98, 0x01, 0xf9, 0xf9,
|
||||||
|
0x98, 0x01, 0xf9, 0xf9,
|
||||||
|
0x99, 0x99, 0x99, 0x99,
|
||||||
|
0x99, 0x99, 0x99, 0x99,
|
||||||
|
0x98, 0x01, 0x80, 0x19,
|
||||||
|
0x98, 0x01, 0x80, 0x19,
|
||||||
|
0x9f, 0x9f, 0xf9, 0xf9,
|
||||||
|
0x9f, 0x9f, 0xf9, 0xf9,
|
||||||
|
0x98, 0x01, 0x80, 0x19,
|
||||||
|
0x98, 0x01, 0x80, 0x19,
|
||||||
|
0x99, 0x99, 0x99, 0x99,
|
||||||
|
0x99, 0x99, 0x99, 0x99,
|
||||||
|
0x99, 0x81, 0x99, 0x99,
|
||||||
|
0x99, 0x81, 0x99, 0x99,
|
||||||
|
0x99, 0x9f, 0x99, 0x99,
|
||||||
|
0x99, 0x9f, 0x99, 0x99,
|
||||||
|
0x99, 0x80, 0x19, 0x99,
|
||||||
|
0x99, 0x80, 0x19, 0x99,
|
||||||
|
0x9f, 0xff, 0xff, 0xf9,
|
||||||
|
0x9f, 0xff, 0xff, 0xf9,
|
||||||
|
0x80, 0x00, 0x00, 0x01,
|
||||||
|
0x80, 0x00, 0x00, 0x01,
|
||||||
|
0xff, 0xff, 0xff, 0xff,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t miryokulogo = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 32,
|
||||||
|
.header.h = 32,
|
||||||
|
.data_size = 136,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = miryokulogo_map,
|
||||||
|
};
|
65
app/boards/arm/corneish_zen/widgets/icons/zmklogo.c
Normal file
65
app/boards/arm/corneish_zen/widgets/icons/zmklogo.c
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
#include "lvgl.h"
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_ZMKLOGO
|
||||||
|
#define LV_ATTRIBUTE_IMG_ZMKLOGO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_ZMKLOGO uint8_t zmklogo_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xfe, /*Color of index 1*/
|
||||||
|
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xf0, 0x0e, 0x7e, 0x73, 0xc7,
|
||||||
|
0xe0, 0x04, 0x3c, 0x31, 0x87,
|
||||||
|
0xf0, 0x0c, 0x18, 0x31, 0x0f,
|
||||||
|
0xff, 0x0c, 0x18, 0x30, 0x1f,
|
||||||
|
0xff, 0x1c, 0x00, 0x30, 0x3f,
|
||||||
|
0xfe, 0x3c, 0x00, 0x30, 0x7f,
|
||||||
|
0xfe, 0x3c, 0x42, 0x30, 0xff,
|
||||||
|
0xfc, 0x7c, 0x66, 0x30, 0xff,
|
||||||
|
0xf8, 0x7c, 0x7e, 0x30, 0x7f,
|
||||||
|
0xf8, 0xfc, 0x7e, 0x30, 0x3f,
|
||||||
|
0xf0, 0xfc, 0x7e, 0x30, 0x1f,
|
||||||
|
0xf0, 0x0c, 0x7e, 0x31, 0x0f,
|
||||||
|
0xe0, 0x04, 0x7e, 0x31, 0x87,
|
||||||
|
0xf0, 0x0e, 0xff, 0x73, 0xc7,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t zmklogo = {
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.reserved = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 40,
|
||||||
|
.data_size = 208,
|
||||||
|
.data = zmklogo_map,
|
||||||
|
};
|
Loading…
Add table
Reference in a new issue