From 7c0035c971ddc6a45893a02f51b707fba2ddadc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Farkas=20J=C3=B3zsef?= Date: Sat, 26 Nov 2016 23:36:17 +0100 Subject: [PATCH] Don't allow the deletion of the last keymap Closes #178 --- src/components/keymap/edit/keymap-edit.component.html | 2 +- src/components/keymap/edit/keymap-edit.component.ts | 6 +++++- src/components/keymap/header/keymap-header.component.html | 1 + src/components/keymap/header/keymap-header.component.ts | 2 ++ 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/components/keymap/edit/keymap-edit.component.html b/src/components/keymap/edit/keymap-edit.component.html index a929aedd..6d39d7b2 100644 --- a/src/components/keymap/edit/keymap-edit.component.html +++ b/src/components/keymap/edit/keymap-edit.component.html @@ -1,5 +1,5 @@ diff --git a/src/components/keymap/edit/keymap-edit.component.ts b/src/components/keymap/edit/keymap-edit.component.ts index 426cd9b1..da3b56c0 100644 --- a/src/components/keymap/edit/keymap-edit.component.ts +++ b/src/components/keymap/edit/keymap-edit.component.ts @@ -12,7 +12,7 @@ import { ConnectableObservable } from 'rxjs/observable/ConnectableObservable'; import { Keymap } from '../../../config-serializer/config-items/Keymap'; import { AppState } from '../../../store'; -import { getKeymap } from '../../../store/reducers/keymap'; +import { getKeymap, getKeymapEntities } from '../../../store/reducers/keymap'; @Component({ selector: 'keymap-edit', @@ -24,6 +24,7 @@ import { getKeymap } from '../../../store/reducers/keymap'; }) export class KeymapEditComponent { private keymap$: Observable; + private deletable$: Observable; constructor( private store: Store, @@ -37,5 +38,8 @@ export class KeymapEditComponent { this.keymap$ = keymapConnectable; keymapConnectable.connect(); + + this.deletable$ = store.let(getKeymapEntities()) + .map((keymaps: Keymap[]) => keymaps.length > 1); } } diff --git a/src/components/keymap/header/keymap-header.component.html b/src/components/keymap/header/keymap-header.component.html index be8f3de9..0066911e 100644 --- a/src/components/keymap/header/keymap-header.component.html +++ b/src/components/keymap/header/keymap-header.component.html @@ -22,6 +22,7 @@ (click)="setDefault()" >