From b0dfecf1e463ef738222659cad576f736ac33b17 Mon Sep 17 00:00:00 2001 From: Vladislav Tasev Date: Tue, 19 Mar 2019 16:17:09 +0200 Subject: [PATCH] refactor: remove gestures --- packages/base/package.json | 1 - .../ui/webcomponents/base/Configuration.js | 7 --- .../base/events/ControlEvents.js | 16 ------ .../base/events/DefaultGestures.js | 54 ------------------- .../base/events/PolymerGestures.js | 4 -- packages/main/bundle.esm.js | 1 - packages/main/src/Button.js | 6 +-- packages/main/src/CalendarHeader.js | 2 +- packages/main/src/CheckBox.js | 2 +- packages/main/src/DatePicker.js | 2 +- packages/main/src/Icon.js | 4 +- packages/main/src/Label.js | 2 +- packages/main/src/Link.js | 2 +- packages/main/src/ListItem.js | 6 +-- packages/main/src/RadioButton.js | 2 +- packages/main/src/Select.js | 2 +- packages/main/src/Switch.js | 2 +- packages/main/src/TabContainer.js | 2 +- packages/main/src/ToggleButton.js | 2 +- .../ui/webcomponents/main/pages/Eventing.html | 6 --- yarn.lock | 12 ----- 21 files changed, 18 insertions(+), 119 deletions(-) delete mode 100644 packages/base/src/sap/ui/webcomponents/base/events/DefaultGestures.js delete mode 100644 packages/base/src/sap/ui/webcomponents/base/events/PolymerGestures.js diff --git a/packages/base/package.json b/packages/base/package.json index bf198ac105ac..e3d6a0ac597e 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -19,7 +19,6 @@ "lint": "eslint ." }, "dependencies": { - "@polymer/polymer": "^3.1.0", "@ui5/webcomponents-core": "0.9.0", "lit-html": "^1.0.0", "regenerator-runtime": "0.12.1", diff --git a/packages/base/src/sap/ui/webcomponents/base/Configuration.js b/packages/base/src/sap/ui/webcomponents/base/Configuration.js index bc7b6c2d0c2f..fb095dcea165 100644 --- a/packages/base/src/sap/ui/webcomponents/base/Configuration.js +++ b/packages/base/src/sap/ui/webcomponents/base/Configuration.js @@ -15,7 +15,6 @@ const CONFIGURATION = { supportedLanguages, calendarType: null, derivedRTL: null, - "xx-wc-force-default-gestures": false, "xx-wc-no-conflict": false, // no URL }; @@ -40,11 +39,6 @@ const getSupportedLanguages = () => { return CONFIGURATION.supportedLanguages; }; -/* WC specifics */ -const getWCForceDefaultGestures = () => { - return CONFIGURATION["xx-wc-force-default-gestures"]; -}; - const getWCNoConflict = () => { return CONFIGURATION["xx-wc-no-conflict"]; }; @@ -134,7 +128,6 @@ export { getRTL, getLanguage, getCompactSize, - getWCForceDefaultGestures, getWCNoConflict, getCalendarType, getLocale, diff --git a/packages/base/src/sap/ui/webcomponents/base/events/ControlEvents.js b/packages/base/src/sap/ui/webcomponents/base/events/ControlEvents.js index 21c4193925d7..31261e52c02b 100644 --- a/packages/base/src/sap/ui/webcomponents/base/events/ControlEvents.js +++ b/packages/base/src/sap/ui/webcomponents/base/events/ControlEvents.js @@ -1,5 +1,3 @@ -import Gestures from "./DefaultGestures"; - /** * @namespace * @public @@ -54,12 +52,6 @@ oControlEvents.events = [ // IMPORTANT: update the public documentation when ext "touchcancel", ]; -oControlEvents.gestures = [ - "down", - "up", - "tap", -]; - /** * Binds all events for listening with the given callback function. * @@ -71,10 +63,6 @@ oControlEvents.bindAnyEvent = function bindAnyEvent(fnCallback) { oControlEvents.events.forEach(event => { document.addEventListener(event, fnCallback); }); - - oControlEvents.gestures.forEach(gesture => { - Gestures.addListener(document, gesture, fnCallback); - }); } }; @@ -89,10 +77,6 @@ oControlEvents.unbindAnyEvent = function unbindAnyEvent(fnCallback) { oControlEvents.events.forEach(event => { document.removeEventListener(event, fnCallback); }); - - oControlEvents.gestures.forEach(gesture => { - Gestures.removeListener(document, gesture, fnCallback); - }); } }; diff --git a/packages/base/src/sap/ui/webcomponents/base/events/DefaultGestures.js b/packages/base/src/sap/ui/webcomponents/base/events/DefaultGestures.js deleted file mode 100644 index dea20527678e..000000000000 --- a/packages/base/src/sap/ui/webcomponents/base/events/DefaultGestures.js +++ /dev/null @@ -1,54 +0,0 @@ -import getOriginalEventTarget from "./getOriginalEventTarget"; -import { getWCForceDefaultGestures } from "../Configuration"; - -/** - * Default Gestures implementation using DOM APIs - * Only addListener and removeListener are implemented - * The gesture event object only supports the "sourceEvent" parameter, ("x" and "y" are not needed for anything yet) - */ - -const gesturesMap = { - "up": "mouseup", - "down": "mousedown", - "tap": "click", -}; - -let Gestures = { // eslint-disable-line - addListener: (node, gestureName, handler) => { - const stdEventName = gesturesMap[gestureName]; - node.addEventListener(stdEventName, stdEvent => { - const eventTarget = getOriginalEventTarget(stdEvent); - - const gestureEventOptions = { - bubbles: true, - cancelable: true, - composed: true, - }; - const gestureEvent = new Event(gestureName, gestureEventOptions); - gestureEvent.detail = { - sourceEvent: stdEvent, - }; - const defaultPrevented = !eventTarget.dispatchEvent(gestureEvent); - - if (defaultPrevented) { - stdEvent.preventDefault(); - } - }); - return node.addEventListener(gestureName, handler); - }, - removeListener: (node, gestureName, handler) => { - const stdEventName = gesturesMap[gestureName]; - node.removeEventListener(stdEventName, handler); - node.removeEventListener(gestureName, handler); - }, -}; - -export { Gestures as default }; -export const injectGesturesProvider = newGestures => { - // Used for test purposes - if (getWCForceDefaultGestures()) { - return; - } - - Gestures = newGestures; -}; diff --git a/packages/base/src/sap/ui/webcomponents/base/events/PolymerGestures.js b/packages/base/src/sap/ui/webcomponents/base/events/PolymerGestures.js deleted file mode 100644 index 3611db34b375..000000000000 --- a/packages/base/src/sap/ui/webcomponents/base/events/PolymerGestures.js +++ /dev/null @@ -1,4 +0,0 @@ -import * as PolymerGestures from "@polymer/polymer/lib/utils/gestures"; -import { injectGesturesProvider } from "./DefaultGestures"; - -injectGesturesProvider(PolymerGestures); diff --git a/packages/main/bundle.esm.js b/packages/main/bundle.esm.js index 3a42ffa9401c..cf581b3f9557 100644 --- a/packages/main/bundle.esm.js +++ b/packages/main/bundle.esm.js @@ -2,7 +2,6 @@ import "@ui5/webcomponents-base/src/sap/ui/webcomponents/base/browsersupport/Edge"; import "@ui5/webcomponents-base/src/sap/ui/webcomponents/base/shims/jquery-shim"; -import "@ui5/webcomponents-base/src/sap/ui/webcomponents/base/events/PolymerGestures"; import "./src/ThemePropertiesProvider"; import Gregorian from "@ui5/webcomponents-core/dist/sap/ui/core/date/Gregorian"; diff --git a/packages/main/src/Button.js b/packages/main/src/Button.js index 25c84fe00ee4..4fe0ce017c6c 100644 --- a/packages/main/src/Button.js +++ b/packages/main/src/Button.js @@ -177,21 +177,21 @@ class Button extends WebComponent { } } - ontap(event) { + onclick(event) { event.isMarked = "button"; if (!this.disabled) { this.fireEvent("press", {}); } } - ondown(event) { + onmousedown(event) { event.isMarked = "button"; if (this.activeIcon) { this._active = true; } } - onup(event) { + onmouseup(event) { event.isMarked = "button"; if (this.activeIcon) { this._active = false; diff --git a/packages/main/src/CalendarHeader.js b/packages/main/src/CalendarHeader.js index 193fb73fdfbf..9e43c0d8f9a8 100644 --- a/packages/main/src/CalendarHeader.js +++ b/packages/main/src/CalendarHeader.js @@ -94,7 +94,7 @@ class CalendarHeader extends WebComponent { this.fireEvent("btn2Press", event); } - ontap(event) { + onclick(event) { const composedPath = event.composedPath(); for (let index = 0; index < composedPath.length; index++) { diff --git a/packages/main/src/CheckBox.js b/packages/main/src/CheckBox.js index 89a764693cac..8673f2c15614 100644 --- a/packages/main/src/CheckBox.js +++ b/packages/main/src/CheckBox.js @@ -179,7 +179,7 @@ class CheckBox extends WebComponent { this._label.textDirection = this.textDirection; } - ontap() { + onclick() { this.toggle(); } diff --git a/packages/main/src/DatePicker.js b/packages/main/src/DatePicker.js index f62b58afa5f8..3649dc9b0ef2 100644 --- a/packages/main/src/DatePicker.js +++ b/packages/main/src/DatePicker.js @@ -292,7 +292,7 @@ class DatePicker extends WebComponent { } } - ontap(event) { + onclick(event) { const icon = this.shadowRoot.querySelector("ui5-icon"); const isIconTab = (event.ui5target === icon); diff --git a/packages/main/src/Icon.js b/packages/main/src/Icon.js index 013a3eda09c3..10f4046bd3ff 100644 --- a/packages/main/src/Icon.js +++ b/packages/main/src/Icon.js @@ -90,7 +90,7 @@ class Icon extends WebComponent { HTMLElement.prototype.focus.call(this); } - ontap() { + onclick() { this.fireEvent("press"); } @@ -99,7 +99,7 @@ class Icon extends WebComponent { event.preventDefault(); this.__spaceDown = true; } else if (isEnter(event)) { - this.ontap(event); + this.onclick(event); } } diff --git a/packages/main/src/Label.js b/packages/main/src/Label.js index 8ccfe95d4e17..41129d3a9eff 100644 --- a/packages/main/src/Label.js +++ b/packages/main/src/Label.js @@ -109,7 +109,7 @@ class Label extends WebComponent { return LabelRenderer; } - ontap() { + onclick() { const labelFor = this.for; if (labelFor) { diff --git a/packages/main/src/Link.js b/packages/main/src/Link.js index c1aa19633fec..6b356380c477 100644 --- a/packages/main/src/Link.js +++ b/packages/main/src/Link.js @@ -158,7 +158,7 @@ class Link extends WebComponent { return LinkRederer; } - ontap(event) { + onclick(event) { if (this.disabled) { return; } diff --git a/packages/main/src/ListItem.js b/packages/main/src/ListItem.js index fb822defd85e..8b971833299a 100644 --- a/packages/main/src/ListItem.js +++ b/packages/main/src/ListItem.js @@ -125,14 +125,14 @@ class ListItem extends ListItemBase { } } - ondown(event) { + onmousedown(event) { if (event.isMarked === "button") { return; } this.activate(); } - onup(event) { + onmouseup(event) { if (event.isMarked === "button") { return; } @@ -143,7 +143,7 @@ class ListItem extends ListItemBase { this.deactivate(); } - ontap(event) { + onclick(event) { if (event.isMarked === "button") { return; } diff --git a/packages/main/src/RadioButton.js b/packages/main/src/RadioButton.js index cc49541087df..f7834fd74ab1 100644 --- a/packages/main/src/RadioButton.js +++ b/packages/main/src/RadioButton.js @@ -196,7 +196,7 @@ class RadioButton extends WebComponent { this._group = this.group; } - ontap() { + onclick() { return this.toggle(); } diff --git a/packages/main/src/Select.js b/packages/main/src/Select.js index d4acdf334d4c..d28903765784 100644 --- a/packages/main/src/Select.js +++ b/packages/main/src/Select.js @@ -163,7 +163,7 @@ class Select extends WebComponent { } /* Event handling */ - ontap(event) { + onclick(event) { if (this.disabled) { return; } diff --git a/packages/main/src/Switch.js b/packages/main/src/Switch.js index 8a79fd428760..5fcefb2e2b22 100644 --- a/packages/main/src/Switch.js +++ b/packages/main/src/Switch.js @@ -135,7 +135,7 @@ class Switch extends WebComponent { return SwitchRenderer; } - ontap(event) { + onclick(event) { this.toggle(); } diff --git a/packages/main/src/TabContainer.js b/packages/main/src/TabContainer.js index 30cec721586e..bded7c9a197d 100644 --- a/packages/main/src/TabContainer.js +++ b/packages/main/src/TabContainer.js @@ -743,7 +743,7 @@ class TabContainer extends WebComponent { } } - ontap(event) { + onclick(event) { const icon = event.composedPath().filter(element => { return element.classList && element.classList.contains("sapMITBArrowScroll"); })[0]; diff --git a/packages/main/src/ToggleButton.js b/packages/main/src/ToggleButton.js index 584ad0213e07..559a83c1d9f2 100644 --- a/packages/main/src/ToggleButton.js +++ b/packages/main/src/ToggleButton.js @@ -71,7 +71,7 @@ class ToggleButton extends Button { return ToggleButtonRenderer; } - ontap() { + onclick() { if (!this.disabled) { this.pressed = !this.pressed; this.fireEvent("press", { pressed: this.pressed }); diff --git a/packages/main/test/sap/ui/webcomponents/main/pages/Eventing.html b/packages/main/test/sap/ui/webcomponents/main/pages/Eventing.html index 5740f3f95f6e..b1a2981743d3 100644 --- a/packages/main/test/sap/ui/webcomponents/main/pages/Eventing.html +++ b/packages/main/test/sap/ui/webcomponents/main/pages/Eventing.html @@ -6,12 +6,6 @@ Eventing - -