From 95b5159f40320e34b1a4d122ace527be24e836ee Mon Sep 17 00:00:00 2001 From: Vladislav Tasev Date: Fri, 22 Mar 2019 11:36:39 +0200 Subject: [PATCH 1/4] fix: select click always works --- packages/main/src/Select.hbs | 14 ++++++++++---- packages/main/src/Select.js | 12 ++++++++---- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/packages/main/src/Select.hbs b/packages/main/src/Select.hbs index 20136b774245..7172f0eebba3 100644 --- a/packages/main/src/Select.hbs +++ b/packages/main/src/Select.hbs @@ -2,8 +2,10 @@ class="{{classes.main}}" style="{{styles.main}}" tabindex="{{tabIndex}}"> -
- {{ctr._text}} +
+ {{ctr._text}}
{{#if ctr.items}} @@ -20,5 +22,9 @@ {{/if}} - -
\ No newline at end of file + + diff --git a/packages/main/src/Select.js b/packages/main/src/Select.js index d28903765784..6d137f23fa92 100644 --- a/packages/main/src/Select.js +++ b/packages/main/src/Select.js @@ -94,6 +94,10 @@ const metadata = { type: Boolean, defaultValue: false, }, + + _fnClickSelectBox: { + type: Function + } }, events: /** @lends sap.ui.webcomponents.main.Select.prototype */ { /** @@ -156,6 +160,7 @@ class Select extends WebComponent { this._setSelectedItem(null); this._setPreviewedItem(null); this.Suggestions = new Suggestions(this, "items", true /* move focus with arrow keys */); + this._fnClickSelectBox = this.toggleList.bind(this); } onBeforeRendering() { @@ -163,13 +168,12 @@ class Select extends WebComponent { } /* Event handling */ - onclick(event) { + toggleList(event) { if (this.disabled) { return; } - if (event.target === this) { - this.Suggestions.toggle(); - } + + this.Suggestions.toggle(); } onkeydown(event) { From cc90b3efc7c171aa4dab84c6f8711b14725b8c47 Mon Sep 17 00:00:00 2001 From: Vladislav Tasev Date: Fri, 22 Mar 2019 14:10:55 +0200 Subject: [PATCH 2/4] cleanup --- packages/main/src/Select.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/main/src/Select.js b/packages/main/src/Select.js index 9d9b76ed587c..46e64fbc828e 100644 --- a/packages/main/src/Select.js +++ b/packages/main/src/Select.js @@ -12,6 +12,7 @@ import ShadowDOM from "@ui5/webcomponents-base/src/compatibility/ShadowDOM"; import KeyCodes from "@ui5/webcomponents-core/dist/sap/ui/events/KeyCodes"; import ValueState from "@ui5/webcomponents-base/src/types/ValueState"; import Suggestions from "./Suggestions"; +import Function from "@ui5/webcomponents-base/src/types/Function"; // Template import SelectRenderer from "./build/compiled/SelectRenderer.lit"; @@ -96,8 +97,8 @@ const metadata = { }, _fnClickSelectBox: { - type: Function - } + type: Function, + }, }, events: /** @lends sap.ui.webcomponents.main.Select.prototype */ { /** @@ -168,7 +169,7 @@ class Select extends WebComponent { } /* Event handling */ - toggleList(event) { + toggleList() { if (this.disabled) { return; } From 9dd68fe7e4420f1bc2517f2ae7248f014c10dfb1 Mon Sep 17 00:00:00 2001 From: Vladislav Tasev Date: Fri, 22 Mar 2019 14:13:19 +0200 Subject: [PATCH 3/4] fix whitespaces --- packages/main/src/Select.hbs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/main/src/Select.hbs b/packages/main/src/Select.hbs index 7172f0eebba3..372072d300c6 100644 --- a/packages/main/src/Select.hbs +++ b/packages/main/src/Select.hbs @@ -3,9 +3,9 @@ style="{{styles.main}}" tabindex="{{tabIndex}}">
- {{ctr._text}} + class="sapWCSelectLabel" + @click="{{ctr._fnClickSelectBox}}"> + {{ctr._text}}
{{#if ctr.items}} @@ -23,8 +23,8 @@ {{/if}} + src="sap-icon://slim-arrow-down" + class="sapWCSelectDropDownIcon" + @press="{{ctr._fnClickSelectBox}}" + > From 9a998d5ceba8ec7da8998be1bf2c96a2ac533add Mon Sep 17 00:00:00 2001 From: Vladislav Tasev Date: Fri, 22 Mar 2019 14:17:31 +0200 Subject: [PATCH 4/4] fix import order --- packages/main/src/Select.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/main/src/Select.js b/packages/main/src/Select.js index 46e64fbc828e..c34655ac4281 100644 --- a/packages/main/src/Select.js +++ b/packages/main/src/Select.js @@ -11,8 +11,8 @@ import { import ShadowDOM from "@ui5/webcomponents-base/src/compatibility/ShadowDOM"; import KeyCodes from "@ui5/webcomponents-core/dist/sap/ui/events/KeyCodes"; import ValueState from "@ui5/webcomponents-base/src/types/ValueState"; -import Suggestions from "./Suggestions"; import Function from "@ui5/webcomponents-base/src/types/Function"; +import Suggestions from "./Suggestions"; // Template import SelectRenderer from "./build/compiled/SelectRenderer.lit";