|
|
|
@ -62,23 +62,19 @@ static uint8_t qw_dv_swap_state = 0;
|
|
|
|
|
bool process_record_user (uint16_t keycode, keyrecord_t *record) {
|
|
|
|
|
if (keycode == KC_LGUI) {
|
|
|
|
|
if (record->event.pressed)
|
|
|
|
|
qw_dv_swap_state |= B00000001;
|
|
|
|
|
qw_dv_swap_state |= 0b00000001;
|
|
|
|
|
else
|
|
|
|
|
qw_dv_swap_state &= ~(B00000001);
|
|
|
|
|
qw_dv_swap_state &= ~(0b00000001);
|
|
|
|
|
}
|
|
|
|
|
if (keycode == KC_LCTL) {
|
|
|
|
|
if (record->event.pressed)
|
|
|
|
|
qw_dv_swap_state |= B00000010;
|
|
|
|
|
qw_dv_swap_state |= 0b00000010;
|
|
|
|
|
else
|
|
|
|
|
qw_dv_swap_state &= ~(B00000010);
|
|
|
|
|
qw_dv_swap_state &= ~(0b00000010);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (qw_dv_swap_state == B00000011) {
|
|
|
|
|
uint8_t layer = biton32(layer_state);
|
|
|
|
|
if (layer == QW)
|
|
|
|
|
TO(DV);
|
|
|
|
|
else if (layer == DV)
|
|
|
|
|
TO(QW);
|
|
|
|
|
return true;
|
|
|
|
|
if (qw_dv_swap_state == 0b00000011) {
|
|
|
|
|
layer_invert(DV);
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|