diff --git a/package.json b/package.json
index 8077a99d..c16aa2c3 100644
--- a/package.json
+++ b/package.json
@@ -48,7 +48,7 @@
"jquery": "3.1.1",
"json-loader": "^0.5.4",
"ng2-dragula": "1.2.2",
- "ng2-select2": "0.6.1",
+ "ng2-select2": "1.0.0-beta.3",
"rxjs": "5.0.0-rc.4",
"select2": "^4.0.3",
"typescript": "2.1.4",
diff --git a/src/components/popover/tab/keypress/keypress-tab.component.html b/src/components/popover/tab/keypress/keypress-tab.component.html
index 7632971f..9082a15b 100644
--- a/src/components/popover/tab/keypress/keypress-tab.component.html
+++ b/src/components/popover/tab/keypress/keypress-tab.component.html
@@ -1,7 +1,12 @@
Scancode:
-
+
diff --git a/src/components/popover/tab/keypress/keypress-tab.component.ts b/src/components/popover/tab/keypress/keypress-tab.component.ts
index 3ba46c75..eebc321d 100644
--- a/src/components/popover/tab/keypress/keypress-tab.component.ts
+++ b/src/components/popover/tab/keypress/keypress-tab.component.ts
@@ -1,6 +1,6 @@
import { Component, Input, OnChanges } from '@angular/core';
-import { Select2OptionData } from 'ng2-select2/ng2-select2';
+import { Select2OptionData, Select2TemplateFunction } from 'ng2-select2';
import { KeyAction, KeystrokeAction } from '../../../../config-serializer/config-items/key-action';
@@ -23,6 +23,7 @@ export class KeypressTabComponent implements OnChanges, Tab {
private scanCodeGroups: Array;
private longPressGroups: Array;
+ private options: Select2Options;
private scanCode: number;
private selectedLongPressIndex: number;
@@ -40,6 +41,18 @@ export class KeypressTabComponent implements OnChanges, Tab {
this.rightModifierSelects = Array(this.rightModifiers.length).fill(false);
this.scanCode = 0;
this.selectedLongPressIndex = -1;
+ this.options = {
+ templateResult: this.scanCodeTemplateResult,
+ matcher: (term: string, text: string, data: Select2OptionData) => {
+ let found = text.toUpperCase().indexOf(term.toUpperCase()) > -1;
+
+ if (!found && data.additional && data.additional.explanation) {
+ found = data.additional.explanation.toUpperCase().indexOf(term.toUpperCase()) > -1;
+ }
+
+ return found;
+ }
+ };
}
ngOnChanges() {
@@ -102,7 +115,7 @@ export class KeypressTabComponent implements OnChanges, Tab {
return keystrokeAction;
}
- scanCodeTemplateResult: Function = (state: any) => {
+ scanCodeTemplateResult: Select2TemplateFunction = (state: Select2OptionData): JQuery | string => {
if (!state.id) {
return state.text;
}
diff --git a/src/index.html b/src/index.html
index 445610b2..070181e9 100644
--- a/src/index.html
+++ b/src/index.html
@@ -26,7 +26,7 @@ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
-
+