diff options
Diffstat (limited to 'common/command.c')
| -rw-r--r-- | common/command.c | 29 | 
1 files changed, 14 insertions, 15 deletions
| diff --git a/common/command.c b/common/command.c index 7bb2a23f1..202d531fd 100644 --- a/common/command.c +++ b/common/command.c @@ -26,7 +26,9 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #include "timer.h"  #include "keyboard.h"  #include "bootloader.h" +#include "layer_switch.h"  #include "command.h" +  #ifdef MOUSEKEY_ENABLE  #include "mousekey.h"  #endif @@ -53,7 +55,7 @@ static void mousekey_console_help(void);  #endif  static uint8_t numkey2num(uint8_t code); -static void switch_layer(uint8_t layer); +static void switch_default_layer(uint8_t layer);  typedef enum { ONESHOT, CONSOLE, MOUSEKEY } cmdstate_t; @@ -261,18 +263,16 @@ static bool command_common(uint8_t code)  #endif              break;  #endif +        case KC_ESC: +        case KC_GRV:          case KC_0: -        case KC_F10: -            clear_keyboard(); -            switch_layer(0); +            switch_default_layer(0);              break;          case KC_1 ... KC_9: -            clear_keyboard(); -            switch_layer((code - KC_1) + 1); +            switch_default_layer((code - KC_1) + 1);              break; -        case KC_F1 ... KC_F9: -            clear_keyboard(); -            switch_layer((code - KC_F1) + 1); +        case KC_F1 ... KC_F12: +            switch_default_layer((code - KC_F1) + 1);              break;          default:              print("?"); @@ -541,11 +541,10 @@ static uint8_t numkey2num(uint8_t code)      return 0;  } -static void switch_layer(uint8_t layer) +static void switch_default_layer(uint8_t layer)  { -    print_val_hex8(current_layer); -    print_val_hex8(default_layer); -    current_layer = layer; -    default_layer = layer; -    print("switch to "); print_val_hex8(layer); +    print("switch_default_layer: "); print_dec(default_layer); print(" to "); print_dec(layer); print("\n"); +    default_layer_set(layer); +    overlay_clear(); +    clear_keyboard();  } | 
