From a05f842a8456ba157392959da1e4178a3515334f Mon Sep 17 00:00:00 2001 From: Rossen Hristov Date: Tue, 30 Aug 2016 10:48:28 +0300 Subject: [PATCH] Non-uniform borders --- apps/.vscode/launch.json | 62 +- .../ui-tests-app/css/border-playground.css | 13 + .../app/ui-tests-app/css/border-playground.ts | 39 + .../ui-tests-app/css/border-playground.xml | 39 + apps/app/ui-tests-app/css/button-border.css | 78 ++ apps/app/ui-tests-app/css/button-border.xml | 22 + apps/app/ui-tests-app/css/image-border.css | 77 ++ apps/app/ui-tests-app/css/image-border.xml | 22 + apps/app/ui-tests-app/css/label-border.css | 77 ++ apps/app/ui-tests-app/css/label-border.xml | 22 + apps/app/ui-tests-app/css/layout-border.css | 80 ++ apps/app/ui-tests-app/css/layout-border.xml | 22 + .../css/layouts-border-overlap.css | 27 + .../css/layouts-border-overlap.xml | 25 + apps/app/ui-tests-app/css/main-page.ts | 9 + apps/app/ui-tests-app/css/measure-tests.css | 11 + apps/app/ui-tests-app/css/measure-tests.xml | 16 + .../ui-tests-app/css/text-field-border.css | 77 ++ .../ui-tests-app/css/text-field-border.xml | 22 + .../app/ui-tests-app/css/text-view-border.css | 77 ++ .../app/ui-tests-app/css/text-view-border.xml | 22 + apps/app/ui-tests-app/font/button.ts | 15 +- .../app/ui-tests-app/image-view/gravatar2.png | Bin 0 -> 530 bytes package.json | 2 +- .../app/ui/styling/style-properties-tests.ts | 164 ++++- tests/app/ui/view/view-tests-common.ts | 6 +- tests/app/ui/view/view-tests.android.ts | 20 +- tests/app/ui/view/view-tests.d.ts | 6 +- tests/app/ui/view/view-tests.ios.ts | 14 +- tns-core-modules/color/color-common.ts | 4 + .../org.nativescript.widgets.d.ts | 52 +- tns-core-modules/ui/border/border.d.ts | 4 +- tns-core-modules/ui/border/border.ts | 18 +- tns-core-modules/ui/button/button.ios.ts | 90 ++- tns-core-modules/ui/core/view-common.ts | 104 ++- tns-core-modules/ui/core/view.android.ts | 14 +- tns-core-modules/ui/core/view.d.ts | 70 +- tns-core-modules/ui/core/view.ios.ts | 120 +-- tns-core-modules/ui/image/image.android.ts | 48 -- tns-core-modules/ui/label/label.ios.ts | 132 +++- .../absolute-layout/absolute-layout.ios.ts | 8 +- .../ui/layouts/dock-layout/dock-layout.ios.ts | 16 +- .../ui/layouts/grid-layout/grid-layout.ios.ts | 8 +- .../layouts/stack-layout/stack-layout.ios.ts | 20 +- .../ui/layouts/wrap-layout/wrap-layout.ios.ts | 25 +- .../ui/progress/progress.android.ts | 18 +- tns-core-modules/ui/slider/slider.android.ts | 18 +- .../ui/styling/background-common.ts | 293 ++++++-- .../ui/styling/background.android.ts | 34 +- tns-core-modules/ui/styling/background.d.ts | 67 +- tns-core-modules/ui/styling/background.ios.ts | 168 ++++- tns-core-modules/ui/styling/style.d.ts | 44 +- tns-core-modules/ui/styling/style.ts | 694 +++++++++++++----- tns-core-modules/ui/styling/styling.d.ts | 65 +- tns-core-modules/ui/switch/switch.android.ts | 18 +- .../ui/text-field/text-field.ios.ts | 6 +- .../ui/text-view/text-view.ios.ts | 90 ++- 57 files changed, 2643 insertions(+), 671 deletions(-) create mode 100644 apps/app/ui-tests-app/css/border-playground.css create mode 100644 apps/app/ui-tests-app/css/border-playground.ts create mode 100644 apps/app/ui-tests-app/css/border-playground.xml create mode 100644 apps/app/ui-tests-app/css/button-border.css create mode 100644 apps/app/ui-tests-app/css/button-border.xml create mode 100644 apps/app/ui-tests-app/css/image-border.css create mode 100644 apps/app/ui-tests-app/css/image-border.xml create mode 100644 apps/app/ui-tests-app/css/label-border.css create mode 100644 apps/app/ui-tests-app/css/label-border.xml create mode 100644 apps/app/ui-tests-app/css/layout-border.css create mode 100644 apps/app/ui-tests-app/css/layout-border.xml create mode 100644 apps/app/ui-tests-app/css/layouts-border-overlap.css create mode 100644 apps/app/ui-tests-app/css/layouts-border-overlap.xml create mode 100644 apps/app/ui-tests-app/css/measure-tests.css create mode 100644 apps/app/ui-tests-app/css/measure-tests.xml create mode 100644 apps/app/ui-tests-app/css/text-field-border.css create mode 100644 apps/app/ui-tests-app/css/text-field-border.xml create mode 100644 apps/app/ui-tests-app/css/text-view-border.css create mode 100644 apps/app/ui-tests-app/css/text-view-border.xml create mode 100644 apps/app/ui-tests-app/image-view/gravatar2.png diff --git a/apps/.vscode/launch.json b/apps/.vscode/launch.json index d2ea7615d..ba955c4f1 100644 --- a/apps/.vscode/launch.json +++ b/apps/.vscode/launch.json @@ -2,17 +2,30 @@ "version": "0.2.0", "configurations": [ { - "name": "Launch on iOS Device", + "name": "Sync on iOS", "type": "nativescript", "platform": "ios", "request": "launch", "appRoot": "${workspaceRoot}", "sourceMaps": true, "diagnosticLogging": false, - "emulator": false + "emulator": false, + "rebuild": false, + "syncAllFiles": true }, { - "name": "Attach on iOS Device", + "name": "Launch on iOS", + "type": "nativescript", + "platform": "ios", + "request": "launch", + "appRoot": "${workspaceRoot}", + "sourceMaps": true, + "diagnosticLogging": false, + "emulator": false, + "rebuild": true + }, + { + "name": "Attach on iOS", "type": "nativescript", "platform": "ios", "request": "attach", @@ -22,47 +35,30 @@ "emulator": false }, { - "name": "Launch on iOS Emulator", - "type": "nativescript", - "platform": "ios", - "request": "launch", - "appRoot": "${workspaceRoot}", - "sourceMaps": true, - "diagnosticLogging": false, - "emulator": true - }, - { - "name": "Attach on iOS Emulator", - "type": "nativescript", - "platform": "ios", - "request": "attach", - "appRoot": "${workspaceRoot}", - "sourceMaps": true, - "diagnosticLogging": false, - "emulator": true - }, - { - "name": "Launch on Android Device", + "name": "Sync on Android", "type": "nativescript", "platform": "android", "request": "launch", "appRoot": "${workspaceRoot}", "sourceMaps": true, "diagnosticLogging": false, - "emulator": false + "emulator": false, + "rebuild": false, + "syncAllFiles": true }, { - "name": "Launch on Android Emulator", + "name": "Launch on Android", "type": "nativescript", "platform": "android", "request": "launch", "appRoot": "${workspaceRoot}", "sourceMaps": true, "diagnosticLogging": false, - "emulator": true + "emulator": false, + "rebuild": true }, { - "name": "Attach on Android Device", + "name": "Attach on Android", "type": "nativescript", "platform": "android", "request": "attach", @@ -70,16 +66,6 @@ "sourceMaps": true, "diagnosticLogging": false, "emulator": false - }, - { - "name": "Attach on Android Emulator", - "type": "nativescript", - "platform": "android", - "request": "attach", - "appRoot": "${workspaceRoot}", - "sourceMaps": true, - "diagnosticLogging": false, - "emulator": true } ] } \ No newline at end of file diff --git a/apps/app/ui-tests-app/css/border-playground.css b/apps/app/ui-tests-app/css/border-playground.css new file mode 100644 index 000000000..46ef62499 --- /dev/null +++ b/apps/app/ui-tests-app/css/border-playground.css @@ -0,0 +1,13 @@ +StackLayout { + background-color: lightgray; +} + +Button { + font-size: 8; + width: 70; + height: 40; +} + +TextView { + font-size: 8; +} \ No newline at end of file diff --git a/apps/app/ui-tests-app/css/border-playground.ts b/apps/app/ui-tests-app/css/border-playground.ts new file mode 100644 index 000000000..ea037fc2d --- /dev/null +++ b/apps/app/ui-tests-app/css/border-playground.ts @@ -0,0 +1,39 @@ +import { EventData } from "data/observable"; +import { View } from "ui/core/view"; +import { Button } from "ui/button"; +import { Color } from "color"; +import { TextView } from "ui/text-view"; +import { ScrollView } from "ui/scroll-view"; + +let red = new Color("red"); +let green = new Color("green"); + +export function onToggle(args: EventData){ + let button =