#include "keymap_skel.h"
-#include "usb_keyboard.h"
+#include "host.h"
#include "debug.h"
#include "timer.h"
#include "layer.h"
+
/*
* Parameters:
* ENTER_DELAY |=======|
debug(" -> "); debug_hex(current_layer); debug("\n");
}
} else {
- if (usb_keyboard_has_key()) { // other keys is pressed
+ if (host_has_anykey()) { // other keys is pressed
uint8_t _fn_to_send = BIT_SUBT(fn_bits, sent_fn);
if (_fn_to_send) {
debug("Fn case: 4(send Fn before other key pressed)\n");
// send only Fn key first
- usb_keyboard_swap_report();
- usb_keyboard_clear_report();
- usb_keyboard_add_code(keymap_fn_keycode(_fn_to_send)); // TODO: do all Fn keys
- usb_keyboard_set_mods(last_mods);
- usb_keyboard_send();
- usb_keyboard_swap_report();
+ host_swap_keyboard_report();
+ host_clear_keyboard_report();
+ host_set_mods(last_mods);
+ host_add_code(keymap_fn_keycode(_fn_to_send)); // TODO: do all Fn keys
+ host_send_keyboard_report();
+ host_swap_keyboard_report();
sent_fn |= _fn_to_send;
}
}
}
// add Fn keys to send
- //usb_keyboard_add_code(keymap_fn_keycode(fn_bits&sent_fn)); // TODO: do all Fn keys
+ //host_add_code(keymap_fn_keycode(fn_bits&sent_fn)); // TODO: do all Fn keys
}
} else { // Fn state is changed(edge)
uint8_t fn_changed = 0;
// pressed Fn
if ((fn_changed = BIT_SUBT(fn_bits, last_fn))) {
debug("fn_changed: "); debug_bin(fn_changed); debug("\n");
- if (usb_keyboard_has_key()) {
+ if (host_has_anykey()) {
debug("Fn case: 5(pressed Fn with other key)\n");
sent_fn |= fn_changed;
} else if (fn_changed & sent_fn) { // pressed same Fn in a row
if (BIT_SUBT(fn_changed, sent_fn)) { // layer not used && Fn not sent
debug("Fn case: 2(send Fn one shot: released Fn during LAYER_SEND_FN_TERM)\n");
// send only Fn key first
- usb_keyboard_swap_report();
- usb_keyboard_clear_report();
- usb_keyboard_add_code(keymap_fn_keycode(fn_changed)); // TODO: do all Fn keys
- usb_keyboard_set_mods(last_mods);
- usb_keyboard_send();
- usb_keyboard_swap_report();
+ host_swap_keyboard_report();
+ host_clear_keyboard_report();
+ host_set_mods(last_mods);
+ host_add_code(keymap_fn_keycode(fn_changed)); // TODO: do all Fn keys
+ host_send_keyboard_report();
+ host_swap_keyboard_report();
sent_fn |= fn_changed;
}
}
}
last_fn = fn_bits;
- last_mods = usb_keyboard_mods;
+ last_mods = keyboard_report->mods;
last_timer = timer_read();
}
// send Fn keys
for (uint8_t i = 0; i < 8; i++) {
if ((sent_fn & fn_bits) & (1<<i)) {
- usb_keyboard_add_code(keymap_fn_keycode(1<<i));
+ host_add_code(keymap_fn_keycode(1<<i));
}
}
}