trust layers_top so we don't disable a layer that was already off

master
Stefan Dorn 2016-02-13 22:08:05 +00:00
parent b5f88d06f4
commit ea97f185de
1 changed files with 5 additions and 7 deletions

View File

@ -172,15 +172,13 @@ void main_layers_enable(uint8_t layer, uint8_t sticky) {
// disable a layer
void main_layers_disable(uint8_t layer) {
if (layer >= KB_LAYERS) { return; }
// base layer stays always on
if (layer > 0) {
layers[layer].active = false;
layers[layer].sticky = eStickyNone;
}
if (layer >= KB_LAYERS || layer == 0) { return; }
if (layer >= layers_top) {
layers[layer].active = false;
layers[layer].sticky = eStickyNone;
if (layer == layers_top) {
layers_top = _highest_active_layer(1);
}
}