15
15
*/
16
16
17
17
#include "process_ucis.h"
18
+ #include "unicode.h"
19
+ #include "keycode.h"
20
+ #include "wait.h"
18
21
19
22
qk_ucis_state_t qk_ucis_state ;
20
23
@@ -26,9 +29,7 @@ void qk_ucis_start(void) {
26
29
}
27
30
28
31
__attribute__((weak )) void qk_ucis_start_user (void ) {
29
- unicode_input_start ();
30
- register_hex (0x2328 ); // ⌨
31
- unicode_input_finish ();
32
+ register_unicode (0x2328 ); // ⌨
32
33
}
33
34
34
35
__attribute__((weak )) void qk_ucis_success (uint8_t symbol_index ) {}
@@ -51,10 +52,7 @@ static bool is_uni_seq(char *seq) {
51
52
52
53
__attribute__((weak )) void qk_ucis_symbol_fallback (void ) {
53
54
for (uint8_t i = 0 ; i < qk_ucis_state .count - 1 ; i ++ ) {
54
- uint8_t keycode = qk_ucis_state .codes [i ];
55
- register_code (keycode );
56
- unregister_code (keycode );
57
- wait_ms (UNICODE_TYPE_DELAY );
55
+ tap_code (qk_ucis_state .codes [i ]);
58
56
}
59
57
}
60
58
@@ -63,7 +61,6 @@ __attribute__((weak)) void qk_ucis_cancel(void) {}
63
61
void register_ucis (const uint32_t * code_points ) {
64
62
for (int i = 0 ; i < UCIS_MAX_CODE_POINTS && code_points [i ]; i ++ ) {
65
63
register_unicode (code_points [i ]);
66
- wait_ms (UNICODE_TYPE_DELAY );
67
64
}
68
65
}
69
66
@@ -94,9 +91,7 @@ bool process_ucis(uint16_t keycode, keyrecord_t *record) {
94
91
case KC_ENTER :
95
92
case KC_ESCAPE :
96
93
for (uint8_t i = 0 ; i < qk_ucis_state .count ; i ++ ) {
97
- register_code (KC_BACKSPACE );
98
- unregister_code (KC_BACKSPACE );
99
- wait_ms (UNICODE_TYPE_DELAY );
94
+ tap_code (KC_BACKSPACE );
100
95
}
101
96
102
97
if (keycode == KC_ESCAPE ) {
0 commit comments