aboutsummaryrefslogtreecommitdiffstats
path: root/quantum/debounce.h
blob: e26106cd3b65a50c41d8ca3150df2a44b241044e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

#include <stdint.h>
#include <stdbool.h>
#include "matrix.h"

/**
 * @brief Debounce raw matrix events according to the choosen debounce algorithm.
 *
 * @param raw The current key state
 * @param cooked The debounced key state
 * @param changed True if raw has changed since the last call
 * @return true Cooked has new keychanges after debouncing
 * @return false Cooked is the same as before
 */
bool debounce(matrix_row_t raw[], matrix_row_t cooked[], bool changed);

void debounce_init(void);