// Copyright 2021 Victor Toni (@vitoni) // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include <stdint.h> #include <stdbool.h> #include <quantum/action.h> #include "rgb_matrix_effects.h" /** * @brief Executes periodic tasks, eg. fading or checking for upcoming supend. * @details Function declaration as weak as the implementation might "disappear" depending on the RGB settings used. * The weak declaration avoids having to change `keymap.c`. */ __attribute__((weak)) void matrix_scan_user_rgb(void); /** * @brief Executes tasks based on user activity, eg. fading in. * @details Function declaration as weak as the implementation might "disappear" depending on the RGB settings used. * The weak declaration avoids having to change `keymap.c`. * @param[in] keycode * @param[in] record * @return `false` if further processing should be stopped, `true` otherwise */ __attribute__((weak)) bool process_record_user_rgb(const uint16_t keycode, const keyrecord_t *record);