X-Git-Url: https://git.donarmstrong.com/?p=qmk_firmware.git;a=blobdiff_plain;f=tmk_core%2Fcommon%2Fbacklight.c;h=c0e9fb5ee48994ad4dc3927d4fd1b4278bf02222;hp=8ddacd98b699caf1032e43d041c60ef7698a732a;hb=a32f7e1a25a8a200d838aa8256ffe39708fbd723;hpb=e2dfb787da2a2ba88e0e074b396a2b988e10eccf diff --git a/tmk_core/common/backlight.c b/tmk_core/common/backlight.c index 8ddacd98b..c0e9fb5ee 100644 --- a/tmk_core/common/backlight.c +++ b/tmk_core/common/backlight.c @@ -100,7 +100,7 @@ void backlight_enable(void) backlight_set(backlight_config.level); } -/** /brief Disable backlight +/** \brief Disable backlight * * FIXME: needs doc */ @@ -162,3 +162,56 @@ uint8_t get_backlight_level(void) { return backlight_config.level; } + +#ifdef BACKLIGHT_BREATHING +/** \brief Backlight breathing toggle + * + * FIXME: needs doc + */ +void backlight_toggle_breathing(void) +{ + bool breathing = backlight_config.breathing; + dprintf("backlight breathing toggle: %u\n", breathing); + if (breathing) + backlight_disable_breathing(); + else + backlight_enable_breathing(); +} + +/** \brief Enable backlight breathing + * + * FIXME: needs doc + */ +void backlight_enable_breathing(void) +{ + if (backlight_config.breathing) return; // do nothing if breathing is already on + + backlight_config.breathing = true; + eeconfig_update_backlight(backlight_config.raw); + dprintf("backlight breathing enable\n"); + breathing_enable(); +} + +/** \brief Disable backlight breathing + * + * FIXME: needs doc + */ +void backlight_disable_breathing(void) +{ + if (!backlight_config.breathing) return; // do nothing if breathing is already off + + backlight_config.breathing = false; + eeconfig_update_backlight(backlight_config.raw); + dprintf("backlight breathing disable\n"); + breathing_disable(); +} + +/** \brief Get the backlight breathing status + * + * FIXME: needs doc + */ +bool is_backlight_breathing(void) +{ + return backlight_config.breathing; +} +#endif