diff options
| author | Yan-Fa Li <yanfali@gmail.com> | 2019-11-27 14:00:23 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-11-27 14:00:23 -0800 |
| commit | 1604f79623c9f3b061dac54ff9f3b657b4246519 (patch) | |
| tree | 2b6261ef28d1ea2cf453b15938f7b71dafb1d65d /quantum/quantum.c | |
| parent | 265c415f5e13b32fd14f06d8af4ae2498ba9059b (diff) | |
| download | qmk_firmware-1604f79623c9f3b061dac54ff9f3b657b4246519.tar.gz qmk_firmware-1604f79623c9f3b061dac54ff9f3b657b4246519.zip | |
clean up quantum.c (#7485)
* idea
* progress
* more stuff
* wip
* wip
* last couple of keycodes you can move safely
* Update quantum/quantum.c
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Put back RGB_MODE_BREATHE
Diffstat (limited to 'quantum/quantum.c')
| -rw-r--r-- | quantum/quantum.c | 260 |
1 files changed, 87 insertions, 173 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c index 2e5e6376b..aaed6ce4e 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c | |||
| @@ -276,259 +276,181 @@ bool process_record_quantum(keyrecord_t *record) { | |||
| 276 | return false; | 276 | return false; |
| 277 | } | 277 | } |
| 278 | 278 | ||
| 279 | // Shift / paren setup | 279 | if (record->event.pressed) { |
| 280 | 280 | switch (keycode) { | |
| 281 | switch (keycode) { | 281 | case RESET: |
| 282 | case RESET: | ||
| 283 | if (record->event.pressed) { | ||
| 284 | reset_keyboard(); | 282 | reset_keyboard(); |
| 285 | } | 283 | return false; |
| 286 | return false; | 284 | case DEBUG: |
| 287 | case DEBUG: | ||
| 288 | if (record->event.pressed) { | ||
| 289 | debug_enable ^= 1; | 285 | debug_enable ^= 1; |
| 290 | if (debug_enable) { | 286 | if (debug_enable) { |
| 291 | print("DEBUG: enabled.\n"); | 287 | print("DEBUG: enabled.\n"); |
| 292 | } else { | 288 | } else { |
| 293 | print("DEBUG: disabled.\n"); | 289 | print("DEBUG: disabled.\n"); |
| 294 | } | 290 | } |
| 295 | } | 291 | return false; |
| 296 | return false; | 292 | case EEPROM_RESET: |
| 297 | case EEPROM_RESET: | ||
| 298 | if (record->event.pressed) { | ||
| 299 | eeconfig_init(); | 293 | eeconfig_init(); |
| 300 | } | 294 | return false; |
| 301 | return false; | ||
| 302 | #ifdef FAUXCLICKY_ENABLE | 295 | #ifdef FAUXCLICKY_ENABLE |
| 303 | case FC_TOG: | 296 | case FC_TOG: |
| 304 | if (record->event.pressed) { | ||
| 305 | FAUXCLICKY_TOGGLE; | 297 | FAUXCLICKY_TOGGLE; |
| 306 | } | 298 | return false; |
| 307 | return false; | 299 | case FC_ON: |
| 308 | case FC_ON: | ||
| 309 | if (record->event.pressed) { | ||
| 310 | FAUXCLICKY_ON; | 300 | FAUXCLICKY_ON; |
| 311 | } | 301 | return false; |
| 312 | return false; | 302 | case FC_OFF: |
| 313 | case FC_OFF: | ||
| 314 | if (record->event.pressed) { | ||
| 315 | FAUXCLICKY_OFF; | 303 | FAUXCLICKY_OFF; |
| 316 | } | 304 | return false; |
| 317 | return false; | 305 | #endif |
| 306 | #ifdef VELOCIKEY_ENABLE | ||
| 307 | case VLK_TOG: | ||
| 308 | velocikey_toggle(); | ||
| 309 | return false; | ||
| 310 | #endif | ||
| 311 | #ifdef PROTOCOL_LUFA | ||
| 312 | case OUT_AUTO: | ||
| 313 | set_output(OUTPUT_AUTO); | ||
| 314 | return false; | ||
| 315 | case OUT_USB: | ||
| 316 | set_output(OUTPUT_USB); | ||
| 317 | return false; | ||
| 318 | # ifdef BLUETOOTH_ENABLE | ||
| 319 | case OUT_BT: | ||
| 320 | set_output(OUTPUT_BLUETOOTH); | ||
| 321 | return false; | ||
| 322 | # endif | ||
| 318 | #endif | 323 | #endif |
| 324 | } | ||
| 325 | } | ||
| 326 | |||
| 319 | #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) | 327 | #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) |
| 320 | case RGB_TOG: | ||
| 321 | // Split keyboards need to trigger on key-up for edge-case issue | ||
| 322 | # ifndef SPLIT_KEYBOARD | 328 | # ifndef SPLIT_KEYBOARD |
| 323 | if (record->event.pressed) { | 329 | if (record->event.pressed) { |
| 324 | # else | 330 | # else |
| 325 | if (!record->event.pressed) { | 331 | // Split keyboards need to trigger on key-up for edge-case issue |
| 332 | if (!record->event.pressed) { | ||
| 326 | # endif | 333 | # endif |
| 334 | uint8_t shifted = get_mods() & (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)); | ||
| 335 | switch (keycode) { | ||
| 336 | case RGB_TOG: | ||
| 327 | rgblight_toggle(); | 337 | rgblight_toggle(); |
| 328 | } | 338 | return false; |
| 329 | return false; | 339 | case RGB_MODE_FORWARD: |
| 330 | case RGB_MODE_FORWARD: | ||
| 331 | if (record->event.pressed) { | ||
| 332 | uint8_t shifted = get_mods() & (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)); | ||
| 333 | if (shifted) { | 340 | if (shifted) { |
| 334 | rgblight_step_reverse(); | 341 | rgblight_step_reverse(); |
| 335 | } else { | 342 | } else { |
| 336 | rgblight_step(); | 343 | rgblight_step(); |
| 337 | } | 344 | } |
| 338 | } | 345 | return false; |
| 339 | return false; | 346 | case RGB_MODE_REVERSE: |
| 340 | case RGB_MODE_REVERSE: | ||
| 341 | if (record->event.pressed) { | ||
| 342 | uint8_t shifted = get_mods() & (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)); | ||
| 343 | if (shifted) { | 347 | if (shifted) { |
| 344 | rgblight_step(); | 348 | rgblight_step(); |
| 345 | } else { | 349 | } else { |
| 346 | rgblight_step_reverse(); | 350 | rgblight_step_reverse(); |
| 347 | } | 351 | } |
| 348 | } | 352 | return false; |
| 349 | return false; | 353 | case RGB_HUI: |
| 350 | case RGB_HUI: | ||
| 351 | // Split keyboards need to trigger on key-up for edge-case issue | ||
| 352 | # ifndef SPLIT_KEYBOARD | ||
| 353 | if (record->event.pressed) { | ||
| 354 | # else | ||
| 355 | if (!record->event.pressed) { | ||
| 356 | # endif | ||
| 357 | rgblight_increase_hue(); | 354 | rgblight_increase_hue(); |
| 358 | } | 355 | return false; |
| 359 | return false; | 356 | case RGB_HUD: |
| 360 | case RGB_HUD: | ||
| 361 | // Split keyboards need to trigger on key-up for edge-case issue | ||
| 362 | # ifndef SPLIT_KEYBOARD | ||
| 363 | if (record->event.pressed) { | ||
| 364 | # else | ||
| 365 | if (!record->event.pressed) { | ||
| 366 | # endif | ||
| 367 | rgblight_decrease_hue(); | 357 | rgblight_decrease_hue(); |
| 368 | } | 358 | return false; |
| 369 | return false; | 359 | case RGB_SAI: |
| 370 | case RGB_SAI: | ||
| 371 | // Split keyboards need to trigger on key-up for edge-case issue | ||
| 372 | # ifndef SPLIT_KEYBOARD | ||
| 373 | if (record->event.pressed) { | ||
| 374 | # else | ||
| 375 | if (!record->event.pressed) { | ||
| 376 | # endif | ||
| 377 | rgblight_increase_sat(); | 360 | rgblight_increase_sat(); |
| 378 | } | 361 | return false; |
| 379 | return false; | 362 | case RGB_SAD: |
| 380 | case RGB_SAD: | ||
| 381 | // Split keyboards need to trigger on key-up for edge-case issue | ||
| 382 | # ifndef SPLIT_KEYBOARD | ||
| 383 | if (record->event.pressed) { | ||
| 384 | # else | ||
| 385 | if (!record->event.pressed) { | ||
| 386 | # endif | ||
| 387 | rgblight_decrease_sat(); | 363 | rgblight_decrease_sat(); |
| 388 | } | 364 | return false; |
| 389 | return false; | 365 | case RGB_VAI: |
| 390 | case RGB_VAI: | ||
| 391 | // Split keyboards need to trigger on key-up for edge-case issue | ||
| 392 | # ifndef SPLIT_KEYBOARD | ||
| 393 | if (record->event.pressed) { | ||
| 394 | # else | ||
| 395 | if (!record->event.pressed) { | ||
| 396 | # endif | ||
| 397 | rgblight_increase_val(); | 366 | rgblight_increase_val(); |
| 398 | } | 367 | return false; |
| 399 | return false; | 368 | case RGB_VAD: |
| 400 | case RGB_VAD: | ||
| 401 | // Split keyboards need to trigger on key-up for edge-case issue | ||
| 402 | # ifndef SPLIT_KEYBOARD | ||
| 403 | if (record->event.pressed) { | ||
| 404 | # else | ||
| 405 | if (!record->event.pressed) { | ||
| 406 | # endif | ||
| 407 | rgblight_decrease_val(); | 369 | rgblight_decrease_val(); |
| 408 | } | 370 | return false; |
| 409 | return false; | 371 | case RGB_SPI: |
| 410 | case RGB_SPI: | ||
| 411 | if (record->event.pressed) { | ||
| 412 | rgblight_increase_speed(); | 372 | rgblight_increase_speed(); |
| 413 | } | 373 | return false; |
| 414 | return false; | 374 | case RGB_SPD: |
| 415 | case RGB_SPD: | ||
| 416 | if (record->event.pressed) { | ||
| 417 | rgblight_decrease_speed(); | 375 | rgblight_decrease_speed(); |
| 418 | } | 376 | return false; |
| 419 | return false; | 377 | case RGB_MODE_PLAIN: |
| 420 | case RGB_MODE_PLAIN: | ||
| 421 | if (record->event.pressed) { | ||
| 422 | rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT); | 378 | rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT); |
| 423 | } | 379 | return false; |
| 424 | return false; | 380 | case RGB_MODE_BREATHE: |
| 425 | case RGB_MODE_BREATHE: | ||
| 426 | # ifdef RGBLIGHT_EFFECT_BREATHING | 381 | # ifdef RGBLIGHT_EFFECT_BREATHING |
| 427 | if (record->event.pressed) { | ||
| 428 | if ((RGBLIGHT_MODE_BREATHING <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_BREATHING_end)) { | 382 | if ((RGBLIGHT_MODE_BREATHING <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_BREATHING_end)) { |
| 429 | rgblight_step(); | 383 | rgblight_step(); |
| 430 | } else { | 384 | } else { |
| 431 | rgblight_mode(RGBLIGHT_MODE_BREATHING); | 385 | rgblight_mode(RGBLIGHT_MODE_BREATHING); |
| 432 | } | 386 | } |
| 433 | } | ||
| 434 | # endif | 387 | # endif |
| 435 | return false; | 388 | return false; |
| 436 | case RGB_MODE_RAINBOW: | 389 | case RGB_MODE_RAINBOW: |
| 437 | # ifdef RGBLIGHT_EFFECT_RAINBOW_MOOD | 390 | # ifdef RGBLIGHT_EFFECT_RAINBOW_MOOD |
| 438 | if (record->event.pressed) { | ||
| 439 | if ((RGBLIGHT_MODE_RAINBOW_MOOD <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_RAINBOW_MOOD_end)) { | 391 | if ((RGBLIGHT_MODE_RAINBOW_MOOD <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_RAINBOW_MOOD_end)) { |
| 440 | rgblight_step(); | 392 | rgblight_step(); |
| 441 | } else { | 393 | } else { |
| 442 | rgblight_mode(RGBLIGHT_MODE_RAINBOW_MOOD); | 394 | rgblight_mode(RGBLIGHT_MODE_RAINBOW_MOOD); |
| 443 | } | 395 | } |
| 444 | } | ||
| 445 | # endif | 396 | # endif |
| 446 | return false; | 397 | case RGB_MODE_SWIRL: |
| 447 | case RGB_MODE_SWIRL: | ||
| 448 | # ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL | 398 | # ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL |
| 449 | if (record->event.pressed) { | ||
| 450 | if ((RGBLIGHT_MODE_RAINBOW_SWIRL <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_RAINBOW_SWIRL_end)) { | 399 | if ((RGBLIGHT_MODE_RAINBOW_SWIRL <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_RAINBOW_SWIRL_end)) { |
| 451 | rgblight_step(); | 400 | rgblight_step(); |
| 452 | } else { | 401 | } else { |
| 453 | rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL); | 402 | rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL); |
| 454 | } | 403 | } |
| 455 | } | ||
| 456 | # endif | 404 | # endif |
| 457 | return false; | 405 | return false; |
| 458 | case RGB_MODE_SNAKE: | 406 | case RGB_MODE_SNAKE: |
| 459 | # ifdef RGBLIGHT_EFFECT_SNAKE | 407 | # ifdef RGBLIGHT_EFFECT_SNAKE |
| 460 | if (record->event.pressed) { | ||
| 461 | if ((RGBLIGHT_MODE_SNAKE <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_SNAKE_end)) { | 408 | if ((RGBLIGHT_MODE_SNAKE <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_SNAKE_end)) { |
| 462 | rgblight_step(); | 409 | rgblight_step(); |
| 463 | } else { | 410 | } else { |
| 464 | rgblight_mode(RGBLIGHT_MODE_SNAKE); | 411 | rgblight_mode(RGBLIGHT_MODE_SNAKE); |
| 465 | } | 412 | } |
| 466 | } | ||
| 467 | # endif | 413 | # endif |
| 468 | return false; | 414 | return false; |
| 469 | case RGB_MODE_KNIGHT: | 415 | case RGB_MODE_KNIGHT: |
| 470 | # ifdef RGBLIGHT_EFFECT_KNIGHT | 416 | # ifdef RGBLIGHT_EFFECT_KNIGHT |
| 471 | if (record->event.pressed) { | ||
| 472 | if ((RGBLIGHT_MODE_KNIGHT <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_KNIGHT_end)) { | 417 | if ((RGBLIGHT_MODE_KNIGHT <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_KNIGHT_end)) { |
| 473 | rgblight_step(); | 418 | rgblight_step(); |
| 474 | } else { | 419 | } else { |
| 475 | rgblight_mode(RGBLIGHT_MODE_KNIGHT); | 420 | rgblight_mode(RGBLIGHT_MODE_KNIGHT); |
| 476 | } | 421 | } |
| 477 | } | ||
| 478 | # endif | 422 | # endif |
| 479 | return false; | 423 | return false; |
| 480 | case RGB_MODE_XMAS: | 424 | case RGB_MODE_XMAS: |
| 481 | # ifdef RGBLIGHT_EFFECT_CHRISTMAS | 425 | # ifdef RGBLIGHT_EFFECT_CHRISTMAS |
| 482 | if (record->event.pressed) { | ||
| 483 | rgblight_mode(RGBLIGHT_MODE_CHRISTMAS); | 426 | rgblight_mode(RGBLIGHT_MODE_CHRISTMAS); |
| 484 | } | ||
| 485 | # endif | 427 | # endif |
| 486 | return false; | 428 | return false; |
| 487 | case RGB_MODE_GRADIENT: | 429 | case RGB_MODE_GRADIENT: |
| 488 | # ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT | 430 | # ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT |
| 489 | if (record->event.pressed) { | ||
| 490 | if ((RGBLIGHT_MODE_STATIC_GRADIENT <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_STATIC_GRADIENT_end)) { | 431 | if ((RGBLIGHT_MODE_STATIC_GRADIENT <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_STATIC_GRADIENT_end)) { |
| 491 | rgblight_step(); | 432 | rgblight_step(); |
| 492 | } else { | 433 | } else { |
| 493 | rgblight_mode(RGBLIGHT_MODE_STATIC_GRADIENT); | 434 | rgblight_mode(RGBLIGHT_MODE_STATIC_GRADIENT); |
| 494 | } | 435 | } |
| 495 | } | ||
| 496 | # endif | 436 | # endif |
| 497 | return false; | 437 | return false; |
| 498 | case RGB_MODE_RGBTEST: | 438 | case RGB_MODE_RGBTEST: |
| 499 | # ifdef RGBLIGHT_EFFECT_RGB_TEST | 439 | # ifdef RGBLIGHT_EFFECT_RGB_TEST |
| 500 | if (record->event.pressed) { | ||
| 501 | rgblight_mode(RGBLIGHT_MODE_RGB_TEST); | 440 | rgblight_mode(RGBLIGHT_MODE_RGB_TEST); |
| 502 | } | ||
| 503 | # endif | 441 | # endif |
| 504 | return false; | 442 | return false; |
| 505 | #endif // defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) | 443 | #if defined(BACKLIGHT_ENABLE) && defined(BACKLIGHT_BREATHING) |
| 506 | #ifdef VELOCIKEY_ENABLE | 444 | case BL_BRTG: |
| 507 | case VLK_TOG: | 445 | backlight_toggle_breathing(); |
| 508 | if (record->event.pressed) { | 446 | return false; |
| 509 | velocikey_toggle(); | ||
| 510 | } | ||
| 511 | return false; | ||
| 512 | #endif | 447 | #endif |
| 513 | #ifdef PROTOCOL_LUFA | 448 | } |
| 514 | case OUT_AUTO: | 449 | } |
| 515 | if (record->event.pressed) { | ||
| 516 | set_output(OUTPUT_AUTO); | ||
| 517 | } | ||
| 518 | return false; | ||
| 519 | case OUT_USB: | ||
| 520 | if (record->event.pressed) { | ||
| 521 | set_output(OUTPUT_USB); | ||
| 522 | } | ||
| 523 | return false; | ||
| 524 | # ifdef BLUETOOTH_ENABLE | ||
| 525 | case OUT_BT: | ||
| 526 | if (record->event.pressed) { | ||
| 527 | set_output(OUTPUT_BLUETOOTH); | ||
| 528 | } | ||
| 529 | return false; | ||
| 530 | # endif | ||
| 531 | #endif | 450 | #endif |
| 451 | |||
| 452 | // keycodes that depend on both pressed and non-pressed state | ||
| 453 | switch (keycode) { | ||
| 532 | case MAGIC_SWAP_CONTROL_CAPSLOCK ... MAGIC_TOGGLE_ALT_GUI: | 454 | case MAGIC_SWAP_CONTROL_CAPSLOCK ... MAGIC_TOGGLE_ALT_GUI: |
| 533 | case MAGIC_SWAP_LCTL_LGUI ... MAGIC_EE_HANDS_RIGHT: | 455 | case MAGIC_SWAP_LCTL_LGUI ... MAGIC_EE_HANDS_RIGHT: |
| 534 | if (record->event.pressed) { | 456 | if (record->event.pressed) { |
| @@ -711,14 +633,6 @@ bool process_record_quantum(keyrecord_t *record) { | |||
| 711 | return false; | 633 | return false; |
| 712 | } | 634 | } |
| 713 | 635 | ||
| 714 | #if defined(BACKLIGHT_ENABLE) && defined(BACKLIGHT_BREATHING) | ||
| 715 | case BL_BRTG: { | ||
| 716 | if (record->event.pressed) { | ||
| 717 | backlight_toggle_breathing(); | ||
| 718 | } | ||
| 719 | return false; | ||
| 720 | } | ||
| 721 | #endif | ||
| 722 | } | 636 | } |
| 723 | 637 | ||
| 724 | return process_action_kb(record); | 638 | return process_action_kb(record); |
