~ruther/qmk_firmware

1249f74b31863bc0118057884abae10de698e4a5 — Joel Challis 2 years ago fe18df9
Reduce includes for caps_word header (#18948)

2 files changed, 22 insertions(+), 11 deletions(-)

M quantum/caps_word.c
M quantum/caps_word.h
M quantum/caps_word.c => quantum/caps_word.c +6 -0
@@ 12,7 12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.

#include <stdint.h>
#include "caps_word.h"
#include "timer.h"
#include "action.h"
#include "action_util.h"

/** @brief True when Caps Word is active. */
static bool caps_word_active = false;


@@ 36,6 40,8 @@ void caps_word_task(void) {
void caps_word_reset_idle_timer(void) {
    idle_timer = timer_read() + CAPS_WORD_IDLE_TIMEOUT;
}
#else
void caps_word_task(void) {}
#endif // CAPS_WORD_IDLE_TIMEOUT > 0

void caps_word_on(void) {

M quantum/caps_word.h => quantum/caps_word.h +16 -11
@@ 14,26 14,31 @@

#pragma once

#include "quantum.h"
#include <stdbool.h>

#ifndef CAPS_WORD_IDLE_TIMEOUT
#    define CAPS_WORD_IDLE_TIMEOUT 5000 // Default timeout of 5 seconds.
#endif                                  // CAPS_WORD_IDLE_TIMEOUT
#endif

#if CAPS_WORD_IDLE_TIMEOUT > 0
/** @brief Matrix scan task for Caps Word feature */
void caps_word_task(void);

#if CAPS_WORD_IDLE_TIMEOUT > 0
/** @brief Resets timer for Caps Word idle timeout. */
void caps_word_reset_idle_timer(void);
#else
static inline void caps_word_task(void) {}
#endif // CAPS_WORD_IDLE_TIMEOUT > 0

void caps_word_on(void);     /**< Activates Caps Word. */
void caps_word_off(void);    /**< Deactivates Caps Word. */
void caps_word_toggle(void); /**< Toggles Caps Word. */
bool is_caps_word_on(void);  /**< Gets whether currently active. */
#endif

/** @brief Activates Caps Word. */
void caps_word_on(void);

/** @brief Deactivates Caps Word. */
void caps_word_off(void);

/** @brief Toggles Caps Word. */
void caps_word_toggle(void);

/** @brief Gets whether currently active. */
bool is_caps_word_on(void);

/**
 * @brief Caps Word set callback.