Fix change detection bug
This commit is contained in:
@@ -93,8 +93,8 @@ export class SvgKeyboardWrapComponent implements OnInit, OnChanges {
|
|||||||
const keymapChanges = changes['keymap'];
|
const keymapChanges = changes['keymap'];
|
||||||
if (keymapChanges) {
|
if (keymapChanges) {
|
||||||
this.popoverShown = false;
|
this.popoverShown = false;
|
||||||
|
this.layers = this.keymap.layers;
|
||||||
if (keymapChanges.previousValue.abbreviation !== keymapChanges.currentValue.abbreviation) {
|
if (keymapChanges.previousValue.abbreviation !== keymapChanges.currentValue.abbreviation) {
|
||||||
this.layers = this.keymap.layers;
|
|
||||||
this.currentLayer = 0;
|
this.currentLayer = 0;
|
||||||
this.keybindAnimationEnabled = keymapChanges.isFirstChange();
|
this.keybindAnimationEnabled = keymapChanges.isFirstChange();
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -119,6 +119,7 @@ export default function (state = initialState, action: Action): KeymapState {
|
|||||||
const layer: Layer = changedKeymap.layers[layerIndex];
|
const layer: Layer = changedKeymap.layers[layerIndex];
|
||||||
const changedLayer: Layer = new Layer();
|
const changedLayer: Layer = new Layer();
|
||||||
Object.assign(changedLayer, layer);
|
Object.assign(changedLayer, layer);
|
||||||
|
changedKeymap.layers = changedKeymap.layers.slice();
|
||||||
changedKeymap.layers[layerIndex] = changedLayer;
|
changedKeymap.layers[layerIndex] = changedLayer;
|
||||||
|
|
||||||
const moduleIndex: number = action.payload.module;
|
const moduleIndex: number = action.payload.module;
|
||||||
|
|||||||
Reference in New Issue
Block a user