diff --git a/.gitignore b/.gitignore index 57ff50b799..f7342105d6 100644 --- a/.gitignore +++ b/.gitignore @@ -72,7 +72,7 @@ nativescript-core/css/system-classes.js* nativescript-core/nativescript-core.d.ts .vs/ -e2e/ +e2e/* !e2e/animation !e2e/config !e2e/cuteness.io diff --git a/AUTHORS b/AUTHORS index 80999269b7..429d3245e4 100644 --- a/AUTHORS +++ b/AUTHORS @@ -18,6 +18,7 @@ Kamen Velikov Lubomir Blagoev Luke Curran Matt Donovan +Martin Bekchiev Matthew Knight Mihail Slavchev Nathanael Anderson @@ -35,7 +36,9 @@ TJ VanToll Tsvetan Raikov Valentin Stoychev Vasil Chimev +Vasil Trifonov Victor Nascimento Vladimir Enchev +Vladimir Mutafov Wei Zhang Yavor Georgiev diff --git a/api-reports/NativeScript.api.md b/api-reports/NativeScript.api.md index f8662a406f..98a165b842 100644 --- a/api-reports/NativeScript.api.md +++ b/api-reports/NativeScript.api.md @@ -870,54 +870,54 @@ export class Frame extends View { // @public export interface GestureEventData extends EventData { - android: any - ios: any /* UIGestureRecognizer */; - type: GestureTypes; - view: View; -} + android: any + ios: any /* UIGestureRecognizer */; + type: GestureTypes; + view: View; + } // @public export interface GestureEventDataWithState extends GestureEventData { - // (undocumented) - state: number; -} + // (undocumented) + state: number; + } // @public export class GesturesObserver { - constructor(target: View, callback: (args: GestureEventData) => void, context: any); + constructor(target: View, callback: (args: GestureEventData) => void, context: any); - androidOnTouchEvent: (motionEvent: any /* android.view.MotionEvent */) => void; + androidOnTouchEvent: (motionEvent: any /* android.view.MotionEvent */) => void; - callback: (args: GestureEventData) => void; + callback: (args: GestureEventData) => void; - context: any; + context: any; - disconnect(); + disconnect(); - observe(type: GestureTypes); + observe(type: GestureTypes); - type: GestureTypes; -} + type: GestureTypes; + } // @public export enum GestureStateTypes { - began, - cancelled, - changed, - ended -} + began, + cancelled, + changed, + ended + } // @public export enum GestureTypes { - doubleTap, - longPress, - pan, - pinch, - rotation, - swipe, - tap, - touch -} + doubleTap, + longPress, + pan, + pinch, + rotation, + swipe, + tap, + touch + } // @public export class GridLayout extends LayoutBase { @@ -1503,6 +1503,8 @@ export class Observable { removeEventListener(eventNames: string, callback?: any, thisArg?: any); set(name: string, value: any): void; + + setProperty(name: string, value: any): void; //@endprivate } @@ -1642,11 +1644,11 @@ export class Page extends ContentView { // @public export interface PanGestureEventData extends GestureEventDataWithState { - // (undocumented) - deltaX: number; - // (undocumented) - deltaY: number; -} + // (undocumented) + deltaX: number; + // (undocumented) + deltaY: number; + } // @public export interface ParserEvent { @@ -1694,15 +1696,15 @@ export module path { // @public export interface PinchGestureEventData extends GestureEventDataWithState { - // (undocumented) - getFocusX(): number; + // (undocumented) + getFocusX(): number; - // (undocumented) - getFocusY(): number; + // (undocumented) + getFocusY(): number; - // (undocumented) - scale: number; -} + // (undocumented) + scale: number; + } // @public export class Placeholder extends View { @@ -1765,9 +1767,9 @@ export class Repeater extends CustomLayoutView { // @public export interface RotationGestureEventData extends GestureEventDataWithState { - // (undocumented) - rotation: number; -} + // (undocumented) + rotation: number; + } // @public export module Screen { @@ -1936,9 +1938,13 @@ export class Span extends ViewBase { public fontWeight: FontWeight; + public static linkTapEvent: string; + // (undocumented) _setTextInternal(value: string): void; + public readonly tappable: boolean; + public text: string; public textDecoration: TextDecoration; @@ -2168,17 +2174,17 @@ export class Style extends Observable { // @public export enum SwipeDirection { - down, - left, - right, - up -} + down, + left, + right, + up + } // @public export interface SwipeGestureEventData extends GestureEventData { - // (undocumented) - direction: SwipeDirection; -} + // (undocumented) + direction: SwipeDirection; + } // @public export class Switch extends View { @@ -2419,6 +2425,14 @@ export class TabViewItem extends ViewBase { public view: View; } +// @public +export interface TapGestureEventData extends GestureEventData { + getPointerCount(): number; + getX(): number; + getY(): number; + + } + // @public export interface Template { (): View; @@ -2489,12 +2503,16 @@ export class TextBase extends View implements AddChildFromBuilder { export class TextField extends EditableTextBase { android: any /* android.widget.EditText */; + closeOnReturn: boolean; + ios: any /* UITextField */; // (undocumented) public static returnPressEvent: string; secure: boolean; + + secureWithoutAutofill: boolean; } // @public @@ -2538,20 +2556,12 @@ export interface TimerInfo { } // @public -export interface TouchGestureEventData extends GestureEventData { - action: "up" | "move" | "down" | "cancel"; - - // Warning: (ae-forgotten-export) The symbol "Pointer" needs to be exported by the entry point index.d.ts - getActivePointers(): Array; - - getAllPointers(): Array; - - getPointerCount(): number; - - getX(): number; - - getY(): number; -} +export interface TouchGestureEventData extends TapGestureEventData { + action: "up" | "move" | "down" | "cancel"; + // Warning: (ae-forgotten-export) The symbol "Pointer" needs to be exported by the entry point index.d.ts + getActivePointers(): Array; + getAllPointers(): Array; + } // @public (undocumented) export const Trace: { @@ -2615,6 +2625,7 @@ export const Utils: { getModuleName: typeof getModuleName; openFile: typeof openFile; openUrl: typeof openUrl; + isRealDevice: typeof isRealDevice; layout: typeof layout; android: typeof ad; ios: typeof ios; @@ -2890,6 +2901,8 @@ export abstract class ViewBase extends Observable { public _goToVisualState(state: string): void; public id: string; // (undocumented) + public _ignoreFlexMinWidthHeightReset: boolean; + // (undocumented) _inheritStyleScope(styleScope: any /* StyleScope */): void; initNativeView(): void; // (undocumented) @@ -3106,9 +3119,10 @@ export class XmlParser { // nativescript-core/index.d.ts:114:5 - (ae-forgotten-export) The symbol "getModuleName" needs to be exported by the entry point index.d.ts // nativescript-core/index.d.ts:115:5 - (ae-forgotten-export) The symbol "openFile" needs to be exported by the entry point index.d.ts // nativescript-core/index.d.ts:116:5 - (ae-forgotten-export) The symbol "openUrl" needs to be exported by the entry point index.d.ts -// nativescript-core/index.d.ts:117:5 - (ae-forgotten-export) The symbol "layout" needs to be exported by the entry point index.d.ts -// nativescript-core/index.d.ts:118:5 - (ae-forgotten-export) The symbol "ad" needs to be exported by the entry point index.d.ts -// nativescript-core/index.d.ts:119:5 - (ae-forgotten-export) The symbol "ios" needs to be exported by the entry point index.d.ts +// nativescript-core/index.d.ts:117:5 - (ae-forgotten-export) The symbol "isRealDevice" needs to be exported by the entry point index.d.ts +// nativescript-core/index.d.ts:118:5 - (ae-forgotten-export) The symbol "layout" needs to be exported by the entry point index.d.ts +// nativescript-core/index.d.ts:119:5 - (ae-forgotten-export) The symbol "ad" needs to be exported by the entry point index.d.ts +// nativescript-core/index.d.ts:120:5 - (ae-forgotten-export) The symbol "ios" needs to be exported by the entry point index.d.ts // nativescript-core/ui/core/view-base/view-base.d.ts:179:26 - (ae-forgotten-export) The symbol "Property" needs to be exported by the entry point index.d.ts // nativescript-core/ui/core/view-base/view-base.d.ts:179:26 - (ae-forgotten-export) The symbol "CssProperty" needs to be exported by the entry point index.d.ts // nativescript-core/ui/core/view-base/view-base.d.ts:179:26 - (ae-forgotten-export) The symbol "CssAnimationProperty" needs to be exported by the entry point index.d.ts diff --git a/e2e/file-qualifiers/app/App_Resources/Android/src/main/AndroidManifest.xml b/e2e/file-qualifiers/app/App_Resources/Android/src/main/AndroidManifest.xml index 1bd6826c34..99b1823976 100644 --- a/e2e/file-qualifiers/app/App_Resources/Android/src/main/AndroidManifest.xml +++ b/e2e/file-qualifiers/app/App_Resources/Android/src/main/AndroidManifest.xml @@ -10,7 +10,6 @@ android:largeScreens="true" android:xlargeScreens="true"/> - diff --git a/e2e/scoped-packages/package.json b/e2e/scoped-packages/package.json index e48c642ff6..bd4a487aa7 100644 --- a/e2e/scoped-packages/package.json +++ b/e2e/scoped-packages/package.json @@ -1,26 +1,26 @@ { - "nativescript": { - "id": "org.nativescript.scopedpackages", - "tns-android": { - "version": "6.1.0" + "nativescript": { + "id": "org.nativescript.scopedpackages", + "tns-android": { + "version": "6.1.0" + }, + "tns-ios": { + "version": "6.1.0" + } }, - "tns-ios": { - "version": "6.1.0" - } - }, - "main": "app.js", - "description": "NativeScript Application", - "license": "SEE LICENSE IN ", - "repository": "", - "dependencies": { - "@nativescript/core": "file:../../dist/nativescript-core-6.5.0.tgz", - "nativescript-theme-core": "~1.0.6", - "tns-core-modules": "file:../../dist/tns-core-modules-6.5.0.tgz" - }, - "devDependencies": { - "nativescript-dev-webpack": "~1.2.0", - "typescript": "~3.5.3" - }, - "gitHead": "5fa096231ded5351b53700f0d111d60160e52ebc", - "readme": "NativeScript Application" -} + "main": "app.js", + "description": "NativeScript Application", + "license": "SEE LICENSE IN ", + "repository": "", + "dependencies": { + "@nativescript/core": "file:../../dist/nativescript-core-6.6.0.tgz", + "nativescript-theme-core": "~1.0.6", + "tns-core-modules": "file:../../dist/tns-core-modules-6.6.0.tgz" + }, + "devDependencies": { + "nativescript-dev-webpack": "~1.2.0", + "typescript": "~3.5.3" + }, + "gitHead": "5fa096231ded5351b53700f0d111d60160e52ebc", + "readme": "NativeScript Application" +} \ No newline at end of file diff --git a/e2e/ui-tests-app/app/button/main-page.ts b/e2e/ui-tests-app/app/button/main-page.ts index ecb25dc25f..5239daa131 100644 --- a/e2e/ui-tests-app/app/button/main-page.ts +++ b/e2e/ui-tests-app/app/button/main-page.ts @@ -18,6 +18,7 @@ export function loadExamples() { examples.set("issue-4287", "button/issue-4287-page"); examples.set("issue-4385", "button/issue-4385-page"); examples.set("highlight-4740", "button/highlight-4740/highlight-4740-page"); + examples.set("tappable-span", "button/tappable-span-page"); return examples; } diff --git a/e2e/ui-tests-app/app/button/tappable-span-page.ts b/e2e/ui-tests-app/app/button/tappable-span-page.ts new file mode 100644 index 0000000000..44e1a5c937 --- /dev/null +++ b/e2e/ui-tests-app/app/button/tappable-span-page.ts @@ -0,0 +1,27 @@ +import { Label } from "tns-core-modules/ui/label"; +import { EventData, TextBase } from "tns-core-modules/ui/text-base"; +import { Page } from "tns-core-modules/ui/page"; + +export function foxTap(args: EventData) { + let page = (args.object).page; + let foxTapped = page.getViewById