diff --git a/UI/AdaptiveServiceWidget/README_en.md b/UI/AdaptiveServiceWidget/README_en.md new file mode 100644 index 0000000000000000000000000000000000000000..8d52935eccd7c11bec3374c51133d7dad41f2ed7 --- /dev/null +++ b/UI/AdaptiveServiceWidget/README_en.md @@ -0,0 +1,18 @@ +# Multi-Device Adaptive Service Widget + +### Introduction + +This sample shows how five service widgets adapt to devices of different sizes. They are immersive, graphic, grid, plain text, and multi-dimensional information service widgets. When a service widget is extremely wide or high, it can be displayed through adaptive capabilities such as stretching, scaling, hiding, wrapping, and equalization. + +### Usage + +Method 1: Swipe up on the sample app icon and select a size to add a service widget to the screen. + +Method 2: Touch and hold the sample app icon until Service Widgets is displayed. Touch Service Widgets and select a size to add a service widget to the screen. + +You can install the app on different types of devices and view the adaption effect. + +### Constraints + +This sample can only be run on large-system devices. + diff --git a/UI/AdaptiveServiceWidget/README_zh.md b/UI/AdaptiveServiceWidget/README_zh.md new file mode 100644 index 0000000000000000000000000000000000000000..c0c49abd38a541e2db06c01fa06a61393904e702 --- /dev/null +++ b/UI/AdaptiveServiceWidget/README_zh.md @@ -0,0 +1,15 @@ +# 多设备自适应服务卡片 + +### 简介 + +本示例分别通过沉浸式卡片、图文卡片、宫格卡片、纯文本卡片、多维度信息卡片五种类型,展示了卡片在不同尺寸设备上的自适应能力。当卡片在极宽和极高的情况下,通过拉伸、缩放、隐藏、折行、均分等自适应能力将卡片展示出来。 + +### 使用说明 + +方式一:上滑本示例应用图标,选择需要的卡片尺寸添加屏幕。 + +方式二:长按示例应用,等待出现服务卡片字样,点击后选择需要的卡片尺寸,添加到屏幕。 + +### 约束与限制 + +本示例支持在大型设备上运行。 diff --git a/UI/AdaptiveServiceWidget/build.gradle b/UI/AdaptiveServiceWidget/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..91af1ca64995ab365fbf9f4d6b6c9a5f816d163f --- /dev/null +++ b/UI/AdaptiveServiceWidget/build.gradle @@ -0,0 +1,36 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +apply plugin: 'com.huawei.ohos.app' + +ohos { + compileSdkVersion 5 + defaultConfig { + compatibleSdkVersion 4 + } +} + +buildscript { + repositories { + maven { + url 'https://repo.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + jcenter() + } + dependencies { + classpath 'com.huawei.ohos:hap:2.4.4.2' + } +} + +allprojects { + repositories { + maven { + url 'https://repo.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + jcenter() + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/build.gradle b/UI/AdaptiveServiceWidget/entry/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..83f59debbd68242b503a22270f4378d7843ca204 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/build.gradle @@ -0,0 +1,19 @@ +apply plugin: 'com.huawei.ohos.hap' +ohos { + compileSdkVersion 5 + defaultConfig { + compatibleSdkVersion 4 + } + buildTypes { + release { + proguardOpt { + proguardEnabled false + rulesFiles 'proguard-rules.pro' + } + } + } +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar', '*.har']) +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/config.json b/UI/AdaptiveServiceWidget/entry/src/main/config.json new file mode 100644 index 0000000000000000000000000000000000000000..55ee1c66938b3e9b22a71532e66da3f577958f83 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/config.json @@ -0,0 +1,191 @@ +{ + "app": { + "bundleName": "ohos.samples.adaptiveservicewidget", + "version": { + "code": 1000000, + "name": "1.0.0" + } + }, + "deviceConfig": {}, + "module": { + "package": "ohos.samples.adaptiveservicewidget", + "name": ".MyApplication", + "mainAbility": "ohos.samples.adaptiveservicewidget.MainAbility", + "deviceType": [ + "phone", + "tablet" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "entry", + "moduleType": "entry", + "installationFree": false + }, + "abilities": [ + { + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ], + "name": "ohos.samples.adaptiveservicewidget.MainAbility", + "icon": "$media:icon", + "description": "$string:mainability_description", + "label": "$string:entry_MainAbility", + "type": "page", + "launchType": "standard", + "formsEnabled": true, + "forms": [ + { + "jsComponentName": "complex", + "isDefault": true, + "scheduledUpdateTime": "10:30", + "defaultDimension": "4*4", + "name": "complex", + "description": "This is a service widget", + "colorMode": "auto", + "type": "JS", + "supportDimensions": [ + "4*4" + ], + "updateEnabled": true, + "updateDuration": 1 + }, + { + "jsComponentName": "text", + "isDefault": false, + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "text", + "description": "This is a service widget", + "colorMode": "auto", + "type": "JS", + "supportDimensions": [ + "2*2", + "4*4" + ], + "updateEnabled": true, + "updateDuration": 1 + }, + { + "jsComponentName": "immersive", + "isDefault": false, + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "immersive", + "description": "This is a service widget", + "colorMode": "auto", + "type": "JS", + "supportDimensions": [ + "2*2" + ], + "updateEnabled": true, + "updateDuration": 1 + }, + { + "jsComponentName": "grid", + "isDefault": false, + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "grid", + "description": "This is a service widget", + "colorMode": "auto", + "type": "JS", + "supportDimensions": [ + "2*2" + ], + "updateEnabled": true, + "updateDuration": 1 + }, + { + "jsComponentName": "imgText", + "isDefault": false, + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*4", + "name": "imgText", + "description": "This is a service widget", + "colorMode": "auto", + "type": "JS", + "supportDimensions": [ + "2*4" + ], + "updateEnabled": true, + "updateDuration": 1 + } + ] + } + ], + "js": [ + { + "pages": [ + "pages/index/index" + ], + "name": "default", + "window": { + "designWidth": 720, + "autoDesignWidth": true + } + }, + { + "pages": [ + "pages/index/index" + ], + "name": "complex", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "type": "form" + }, + { + "pages": [ + "pages/index/index" + ], + "name": "text", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "type": "form" + }, + { + "pages": [ + "pages/index/index" + ], + "name": "immersive", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "type": "form" + }, + { + "pages": [ + "pages/index/index" + ], + "name": "grid", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "type": "form" + }, + { + "pages": [ + "pages/index/index" + ], + "name": "imgText", + "window": { + "designWidth": 720, + "autoDesignWidth": true + }, + "type": "form" + } + ] + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/java/ohos/samples/adaptiveservicewidget/MainAbility.java b/UI/AdaptiveServiceWidget/entry/src/main/java/ohos/samples/adaptiveservicewidget/MainAbility.java new file mode 100644 index 0000000000000000000000000000000000000000..7f17b04d2ba72825f9bd97f743cd351790de34f8 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/java/ohos/samples/adaptiveservicewidget/MainAbility.java @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ohos.samples.adaptiveservicewidget; + +import ohos.aafwk.ability.ProviderFormInfo; +import ohos.aafwk.content.Intent; +import ohos.ace.ability.AceAbility; +import ohos.hiviewdfx.HiLog; +import ohos.hiviewdfx.HiLogLabel; + +/** + * MyApplication + * + * @since 2021-08-09 + */ +public class MainAbility extends AceAbility { + private static final HiLogLabel TAG = new HiLogLabel(HiLog.DEBUG, 0x0, MainAbility.class.getName()); + + @Override + public void onStart(Intent intent) { + HiLog.info(TAG, "onStart"); + super.onStart(intent); + } + + @Override + protected ProviderFormInfo onCreateForm(Intent intent) { + HiLog.info(TAG, "onCreateForm"); + return super.onCreateForm(intent); + } + + @Override + protected void onUpdateForm(long formId) { + HiLog.info(TAG, "onUpdateForm"); + super.onUpdateForm(formId); + } + + @Override + protected void onDeleteForm(long formId) { + HiLog.info(TAG, "onDeleteForm: formId=" + formId); + super.onDeleteForm(formId); + } + + @Override + protected void onTriggerFormEvent(long formId, String message) { + HiLog.info(TAG, "onTriggerFormEvent: " + message); + super.onTriggerFormEvent(formId, message); + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/java/ohos/samples/adaptiveservicewidget/MyApplication.java b/UI/AdaptiveServiceWidget/entry/src/main/java/ohos/samples/adaptiveservicewidget/MyApplication.java new file mode 100644 index 0000000000000000000000000000000000000000..0f9a7714f1059b032fba93ec46c442707dc73107 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/java/ohos/samples/adaptiveservicewidget/MyApplication.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ohos.samples.adaptiveservicewidget; + +import ohos.aafwk.ability.AbilityPackage; + +/** + * MyApplication + * + * @since 2021-08-09 + */ +public class MyApplication extends AbilityPackage { + @Override + public void onInitialize() { + super.onInitialize(); + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/complex/common/ic_add.svg b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/common/ic_add.svg new file mode 100644 index 0000000000000000000000000000000000000000..83801893cd9710f18016d347ec2b962488751133 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/common/ic_add.svg @@ -0,0 +1,30 @@ + + + Public/ic_public_add_norm_filled + + + + + + + + + + \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/complex/common/ic_gift.svg b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/common/ic_gift.svg new file mode 100644 index 0000000000000000000000000000000000000000..479d3790d7f1f83eded09ebec9f1c6ec396c2710 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/common/ic_gift.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.css b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.css new file mode 100644 index 0000000000000000000000000000000000000000..fce2a04c3490485cfc42e0dd459687c327f21c9c --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.css @@ -0,0 +1,255 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +.container { + flex-direction: column; + margin: 12px; +} + +.region-title { + flex-direction: row; + width: 100%; + position: relative; + flex-shrink: 0; +} + +.left-image { + width: 20px; + height: 20px; +} + +.left-text { + font-size: 14px; + margin-left: 5px; + color: coral; + font-weight: bold; +} + +.right-text { + font-size: 9px; + opacity: 0.6; + position: absolute; + right: 0px; + bottom: 0px; +} + +.region-plates { + margin-top: 5px; + flex-direction: row; + justify-content: space-between; + height: 60px; + align-content: center; + flex-shrink: 0; +} + +.exponent-left { + padding: 6px; + margin-right: 4px; + border-radius: 10px; + flex-direction: column; + background-color: #FFF8F8; + justify-content: space-evenly; +} + +.exponent-text { + prefer-font-sizes: 12px,10px; + text-overflow: ellipsis; + max-lines: 1; + flex-grow: 1; + width: 80%; + font-weight: bold; + opacity: 0.8; +} + +.exponent-num-red { + font-size: 10px; + margin-top: 3px; + margin-bottom: 3px; + color: #FE3D3B; + font-weight: bold; + opacity: 0.8; +} + +.exponent-div { + flex-direction: row; +} + +.row-div { + flex-direction: row; + position: relative; + height: 20px; +} + +.region-row-div { + flex-direction: row; + height: 50px; + position: relative; +} + +.exponent-float-red { + font-size: 10px; + color: #FE3D3B; + font-weight: bold; + opacity: 0.8; +} + +.exponent-per-red { + font-size: 9px; + color: #FE3D3B; + font-weight: bold; + opacity: 0.8; + margin-left: 7px; +} + +.exponent-mid { + padding: 6px; + margin-right: 2px; + margin-left: 2px; + border-radius: 10px; + flex-direction: column; + background-color: #F4FDF4; + justify-content: space-evenly; +} + +.fund-text { + font-size: 10px; + opacity: 0.6; + position: absolute; +} + +.time-text-front { + font-size: 10px; + opacity: 0.6; + position: absolute; + right: 50px; +} + +.time-text-after { + font-size: 10px; + opacity: 0.6; + position: absolute; + right: 0px; +} + +.exponent-num-green { + font-size: 10px; + margin-top: 3px; + margin-bottom: 3px; + color: #52C45E; + font-weight: bold; + opacity: 0.8; +} + +.exponent-float-green { + font-size: 10px; + color: #52C45E; + font-weight: bold; + opacity: 0.8; +} + +.exponent-per-green { + font-size: 9px; + color: #52C45E; + font-weight: bold; + opacity: 0.8; + margin-left: 7px; +} + +.exponent-right { + padding: 6px; + margin-left: 4px; + border-radius: 10px; + flex-direction: column; + background-color: #F4FDF4; + justify-content: space-evenly; +} + +.region-fund { + flex-direction: column; + margin-top: 10px; +} + +.region-fund-item { + flex-direction: column; + justify-content: space-evenly; +} + +.column-div { + flex-direction: column; +} + +.coded-text { + font-size: 10px; + opacity: 0.6; + padding-top: 5px; +} + +.per-text { + font-size: 10px; + color: #FE3D3B; + font-weight: bold; + opacity: 0.8; + position: absolute; + right: 50px; + top: 10px; +} + +.per-text-red { + font-size: 10px; + color: #FE3D3B; + font-weight: bold; + opacity: 0.8; + position: absolute; + right: 0px; + top: 10px; +} + +.per-text-green { + font-size: 10px; + color: #52C45E; + font-weight: bold; + opacity: 0.8; + position: absolute; + right: 0px; + top: 10px; +} + +.region-bottom { + flex-direction: row; + padding-top: 5px; + height: 75px; + justify-content: space-evenly; +} + +.region-bottom-item { + flex-direction: column; + flex-wrap: wrap; + justify-content: center; +} + +.region-bottom-image { + height: 24px; + width: 24px; + flex-shrink: 0; +} + +.region-bottom-text { + margin-top: 3px; + font-size: 10px; + font-weight: bold; + opacity: 0.8; + flex-shrink: 0; + left: 2px; +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.hml b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.hml new file mode 100644 index 0000000000000000000000000000000000000000..2a50f7fa22e49184dbebce225db1d2b4842b59cc --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.hml @@ -0,0 +1,55 @@ + + +
+
+ + {{ title }} + {{ time }} +
+
+
+ {{ $item.name }} + {{ $item.num }} +
+ {{ $item.float }} + {{ $item.per }} +
+
+
+
+
+ {{ fundText }} + {{ timeText }} + {{ timeText }} +
+
+
+
+ {{ $item.name }} + {{ $item.coded }} +
+ {{ $item.perFront }} + {{ $item.perAfter }} +
+
+
+
+
+ + {{ $item.text }} +
+
+
\ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.json b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.json new file mode 100644 index 0000000000000000000000000000000000000000..cdbc0aea65bf8b16632022a7db54998cfb485799 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/complex/pages/index/index.json @@ -0,0 +1,114 @@ +{ + "data": { + "title": "天天基金", + "time": "交易日更新净值时间:16:00-23:00", + "fundText": "基金名称", + "timeText": "近一周", + "arrayPlates": [ + { + "id": 1, + "name": "上证指数", + "num": 3000.00, + "float": 36.12, + "per": "1.03%", + "exponent": "exponent-left", + "exponentNum": "exponent-float-red", + "exponentFloat": "exponent-float-red", + "exponentPer": "exponent-per-red" + }, + { + "id": 2, + "name": "深圳成指", + "num": 3000.00, + "float": -36.12, + "per": "-1.03%", + "exponent": "exponent-mid", + "exponentNum": "exponent-num-green", + "exponentFloat": "exponent-float-green", + "exponentPer": "exponent-per-green" + }, + { + "id": 3, + "name": "创业板指", + "num": 3000.00, + "float": -36.12, + "per": "-1.03%", + "exponent": "exponent-right", + "exponentNum": "exponent-num-green", + "exponentFloat": "exponent-float-green", + "exponentPer": "exponent-per-green" + } + ], + "array": [ + { + "id": 1, + "name": "某某投资有限集团内需精选混合(LOF)", + "coded": 161810, + "perFront": "2.87%", + "perAfter": "2.87%", + "displayIndex": 4, + "perTextAfter": "per-text-red" + }, + { + "id": 2, + "name": "银华内需精选混合(LOF)", + "coded": 161810, + "perFront": "2.87%", + "perAfter": "-2.87%", + "displayIndex": 4, + "perTextAfter": "per-text-green" + }, + { + "id": 3, + "name": "银华内需精选混合(LOF)", + "coded": 161810, + "perFront": "2.87%", + "perAfter": "-2.87%", + "displayIndex": 3, + "perTextAfter": "per-text-green" + }, + { + "id": 4, + "name": "银华内需精选混合(LOF)", + "coded": 161810, + "perFront": "2.87%", + "perAfter": "-2.87%", + "displayIndex": 2, + "perTextAfter": "per-text-green" + }, + { + "id": 5, + "name": "银华内需精选混合(LOF)", + "coded": 161810, + "perFront": "2.87%", + "perAfter": "-2.87%", + "displayIndex": 1, + "perTextAfter": "per-text-green" + } + ], + "arrayImage": [ + { + "id": 1, + "text": "排行" + }, + { + "id": 2, + "text": "榜单" + }, + { + "id": 3, + "text": "学堂" + } + ] + }, + "actions": { + "routerEvent": { + "action": "router", + "bundleName": "ohos.samples.adaptiveservicewidget", + "abilityName": "ohos.samples.adaptiveservicewidget.MainAbility", + "params": { + "message": "add detail" + } + } + } +} diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/default/app.js b/UI/AdaptiveServiceWidget/entry/src/main/js/default/app.js new file mode 100644 index 0000000000000000000000000000000000000000..8e47afff13e928a74fdcc01a108e4422404b9ac9 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/default/app.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export default { + onCreate() { + console.info('AceApplication onCreate'); + }, + onDestroy() { + console.info('AceApplication onDestroy'); + } +}; diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/default/i18n/en-US.json b/UI/AdaptiveServiceWidget/entry/src/main/js/default/i18n/en-US.json new file mode 100644 index 0000000000000000000000000000000000000000..58c0034c744d6366af797982451d01c3ddb93dd3 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/default/i18n/en-US.json @@ -0,0 +1,5 @@ +{ + "strings": { + "text": "Usage\n\nMethod 1: Swipe up on the sample app icon and select a size to add service widget to the screen.\n\nMethod 2: Touch and hold the sample app icon until Service Widgets is displayed. Touch Service Widgets and select a size to add a service widget to the screen.\n\nYou can install the app on different types of devices and view the adaptation effect.\n" + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/default/i18n/zh-CN.json b/UI/AdaptiveServiceWidget/entry/src/main/js/default/i18n/zh-CN.json new file mode 100644 index 0000000000000000000000000000000000000000..8ec76e93983e5664d404adc2213881929559c756 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/default/i18n/zh-CN.json @@ -0,0 +1,5 @@ +{ + "strings": { + "text": "使用说明\n\n方式一:上滑本示例应用图标,选择需要的卡片尺寸添加到屏幕。\n\n方式二:长按示例应用,等待出现服务卡片字样,点击后选择需要的卡片尺寸,添加到屏幕。\n\n可以将此应用安装到不同类型的设备上,查看自适应效果。\n" + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.css b/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.css new file mode 100644 index 0000000000000000000000000000000000000000..26bc0e7929c7d74dd7e7e4b84547165d25b6b787 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.css @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +.container { + flex-direction: column; + justify-content: center; + align-items: center; +} + +.title { + font-size: 16px; + color: #000000; + opacity: 0.9; +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.hml b/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.hml new file mode 100644 index 0000000000000000000000000000000000000000..d89a180473d3e28078734b0b7bea6e6850f5f11f --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.hml @@ -0,0 +1,20 @@ + + +
+ + {{ text }} + +
diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.js b/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.js new file mode 100644 index 0000000000000000000000000000000000000000..456819aff124de563a5b968cfdcb18ca7d0291df --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/default/pages/index/index.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export default { + data: { + text: "" + }, + onInit() { + this.text = this.$t('strings.text'); + } +} diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/grid/common/ic_app.svg b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/common/ic_app.svg new file mode 100644 index 0000000000000000000000000000000000000000..cabb1c4f3e64d96d2f910725907aa09bf6407f9d --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/common/ic_app.svg @@ -0,0 +1,8 @@ + + + ic_1 + + + + + \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/grid/common/image.png b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/common/image.png new file mode 100644 index 0000000000000000000000000000000000000000..e1b755789ae81660ad15eb2869496afa40dcd3d4 Binary files /dev/null and b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/common/image.png differ diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/grid/i18n/en-US.json b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/i18n/en-US.json new file mode 100644 index 0000000000000000000000000000000000000000..f32a8cc1dbb90479438ec4df7e67d17bde025e8d --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/i18n/en-US.json @@ -0,0 +1,5 @@ +{ + "strings": { + "title": "Hello·World" + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/grid/i18n/zh-CN.json b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/i18n/zh-CN.json new file mode 100644 index 0000000000000000000000000000000000000000..fdd2276494702d48870a5a1c0c74a9a91fdf8c61 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/i18n/zh-CN.json @@ -0,0 +1,5 @@ +{ + "strings": { + "title": "你好·世界" + } +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.css b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.css new file mode 100644 index 0000000000000000000000000000000000000000..4cf68faa1c91972069c20e54289069a4b7f1848b --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.css @@ -0,0 +1,82 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +.container { + flex-direction: column; + justify-content: center; + align-items: center; + margin: 12px; +} + +.header-div { + width: 100%; + height: 20px; + align-content: center; + align-items: center; +} + +.image-up { + width: 20px; + height: 20px; + border-radius: 10px; +} + +.text-up { + margin-left: 8px; + color: #F58508; + font-size: 12px; + min-font-size: 10px; + font-weight: normal; +} + +.main-div { + margin-top: 7.5px; + justify-content: space-evenly; + align-items: center; + width: 100%; + height: 51.5px; + flex-direction: row; + flex-shrink: 1; + flex-grow: 1; +} + +.image-radius { + border-radius: 4px; +} + +.text-down { + background-color: aliceblue; + text-color: black; + font-size: 10px; + min-font-size: 8px; + font-weight: normal; + height: 14px; + width: 36px; + border-radius: 4px; + text-align: center; +} + +.stack-left { + margin-right: 5%; + justify-content: flex-end; + align-items: flex-end; + align-content: flex-end; +} +.stack-right { + margin-left: 5%; + justify-content: flex-end; + align-items: flex-end; + align-content: flex-end; +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.hml b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.hml new file mode 100644 index 0000000000000000000000000000000000000000..4f2fa11cde251c26a7fb140cb44ff1d3f3dbbddf --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.hml @@ -0,0 +1,41 @@ + + +
+
+ + {{ $t('strings.title') }} +
+
+ + + 0.33 + + + + 0.33 + +
+
+ + + 0.33 + + + + 0.33 + +
+
\ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.json b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.json new file mode 100644 index 0000000000000000000000000000000000000000..ea66244e37648f58c84bdaecaaaf7b9f15081982 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/grid/pages/index/index.json @@ -0,0 +1,18 @@ +{ + "data": { + "title": "Title", + "detail": "Text", + "iconTitle": "Picture" + }, + "actions": { + "routerEvents": { + "action": "router", + "bundleName": "ohos.samples.adaptiveservicewidget", + "abilityName": "ohos.samples.adaptiveservicewidget.MainAbility", + "params": { + "message": "add detail" + } + } + } +} + diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/ic_app.svg b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/ic_app.svg new file mode 100644 index 0000000000000000000000000000000000000000..52e38085b88e900690a4a9fc989251874d82c452 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/ic_app.svg @@ -0,0 +1,8 @@ + + + ic_2 + + + + + \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/poster1.png b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/poster1.png new file mode 100644 index 0000000000000000000000000000000000000000..ecc0b7831969dfaec8fcf6b2971aaeb69295926f Binary files /dev/null and b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/poster1.png differ diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/poster2.png b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/poster2.png new file mode 100644 index 0000000000000000000000000000000000000000..94d8f9816ceecaf622ca141a3ab3fffde849e5ea Binary files /dev/null and b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/common/poster2.png differ diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.css b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.css new file mode 100644 index 0000000000000000000000000000000000000000..08acd812db0a38b20931a22c906164554ba2c2f6 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.css @@ -0,0 +1,114 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +.container { + flex-direction: column; + width: 100%; + height: 100%; + margin-left: 12px; + margin-bottom: 12px; + margin-top: 12px; + flex-wrap: nowrap; +} + +.header-div { + width: 100%; + margin-right: 12px; +} + +.image-div { + justify-content: flex-start; +} + +.image-up { + width: 60px; + height: 20px; +} + +.text-div { + justify-content: flex-end; +} + +.text-right-up { + height: 20px; + margin-top: 3px; + margin-bottom: 3px; + margin-left: 4px; + min-font-size: 10px; + color: black; + font-size: 10px; + font-weight: normal; +} + +.main-div { + flex-wrap: nowrap; + margin-top: 4px; + justify-content: space-between; + align-items: center; + width: 100%; + height: 100%; +} + +.item-div { + flex-direction: column; + width: 75px; + height: 100%; + flex-grow: 1; + flex-shrink: 0; + margin-right: 12px; +} + +@media (device-type: tablet) { + .item-div { + flex-direction: column; + width: 90px; + height: 100%; + flex-grow: 1; + flex-shrink: 0; + margin-right: 12px; + } +} + +.item-image { + flex-direction: row; + width: 100%; + height: 70px; + border-radius: 14px; + flex-grow: 1; + flex-shrink: 1; +} + +.item-title-up { + width: 90px; + font-size: 12px; + min-font-size: 10px; + margin-top: 2px; + font-weight: bold; + opacity: 0.9; + color: black; + text-overflow: ellipsis; + max-lines: 1; +} + +.item-title-down { + width: 90px; + font-size: 10px; + margin-top: 2px; + font-weight: normal; + opacity: 0.6; + color: black; + text-overflow: ellipsis; + max-lines: 1; +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.hml b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.hml new file mode 100644 index 0000000000000000000000000000000000000000..4523b3c5c33f8ad208deaf7ccb0443d6022c3175 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.hml @@ -0,0 +1,32 @@ + + +
+ +
+ +
+
+ {{title}} +
+
+
+
+ + {{ $item.title }} + {{ $item.detail }} +
+
+
\ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.json b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.json new file mode 100644 index 0000000000000000000000000000000000000000..211fc62d00ac785bb6ecbecf2df315116229ff23 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/imgText/pages/index/index.json @@ -0,0 +1,59 @@ +{ + "data": { + "title": "完整推荐", + "list": [ + { + "id": 1, + "title": "今日美食推荐", + "detail": "一碗香喷喷的油泼面,回到儿时的青涩回忆", + "poster": "/common/poster1.png", + "displayIndex": 3 + }, + { + "id": 2, + "title": "今日电影推荐", + "detail": "好看的电影,每一步都令人深刻", + "poster": "/common/poster2.png", + "displayIndex": 3 + }, + { + "id": 3, + "title": "今日音乐推荐", + "detail": "一缕美妙的歌声,令人念念不忘", + "poster": "/common/poster2.png", + "displayIndex": 2 + }, + { + "id": 4, + "title": "今日美食推荐", + "detail": "一碗香喷喷的油泼面,回到儿时的青涩回忆", + "poster": "/common/poster2.png", + "displayIndex": 1 + }, + { + "id": 5, + "title": "今日美食推荐", + "detail": "一碗香喷喷的油泼面,回到儿时的青涩回忆", + "poster": "/common/poster2.png", + "displayIndex": 1 + }, + { + "id": 6, + "title": "今日美食推荐", + "detail": "一碗香喷喷的油泼面,回到儿时的青涩回忆", + "poster": "/common/poster2.png", + "displayIndex": 1 + } + ] + }, + "actions": { + "routerEvent": { + "action": "router", + "bundleName": "ohos.samples.adaptiveservicewidget", + "abilityName": "ohos.samples.adaptiveservicewidget.MainAbility", + "params": { + "message": "add detail" + } + } + } +} diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/common/envelope.png b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/common/envelope.png new file mode 100644 index 0000000000000000000000000000000000000000..8c25c4aaecedee3eed8aad54a9be701f7ee201b2 Binary files /dev/null and b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/common/envelope.png differ diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.css b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.css new file mode 100644 index 0000000000000000000000000000000000000000..10f45c928940cb8619806284d27d579cfecaae6a --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.css @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +.container { + flex-direction: column; + background-color: #F3D4B4; +} + +.image-div { + height: 70%; + display: flex; +} + +.image { + object-fit: contain; +} + +.button-div { + justify-content: center; + align-items: center; +} + +.button { + background-color: #E5A466; + width: 84%; + height: 32px; +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.hml b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.hml new file mode 100644 index 0000000000000000000000000000000000000000..d15d47279b4597b051ebdca2ca9bc1fc2137006e --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.hml @@ -0,0 +1,23 @@ + + +
+
+ +
+
+ +
+
\ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.json b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.json new file mode 100644 index 0000000000000000000000000000000000000000..c9ec294686b5e856b800743e6035377f8d8ce332 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/immersive/pages/index/index.json @@ -0,0 +1,18 @@ +{ + "data": { + "title": "Title", + "detail": "Text", + "iconTitle": "Picture" + }, + "actions": { + "routerEvent": { + "action": "router", + "bundleName": "ohos.samples.adaptiveservicewidget", + "abilityName": "ohos.samples.adaptiveservicewidget.MainAbility", + "params": { + "message": "add detail" + } + } + } +} + diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.css b/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.css new file mode 100644 index 0000000000000000000000000000000000000000..ea5b509d6ac2e5bb21ffdaf2cdfa3c904a570c5d --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.css @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +.container { + flex-direction: column; + margin: 6px; +} + +.main-div { + display: flex; + flex-direction: column; + justify-content: space-evenly; + padding: 5%; +} + +.display-div { + display: flex; +} + +.exponent-div { + prefer-font-sizes: 15px, 20px; + text-overflow: ellipsis; + max-lines: 1; + flex-grow: 1; + opacity: 0.8; +} + +.exponent { + prefer-font-sizes: 15px, 20px; + text-overflow: ellipsis; + max-lines: 1; + opacity: 0.8; + align-items: flex-end; + text-align: right; +} + +.coded-div { + prefer-font-sizes: 10px, 15px; + text-overflow: ellipsis; + max-lines: 1; + flex-grow: 1; + opacity: 0.6; +} + +.per-div { + prefer-font-sizes: 10px, 15px; + text-overflow: ellipsis; + max-lines: 1; + color: crimson; + align-items: flex-end; +} diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.hml b/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.hml new file mode 100644 index 0000000000000000000000000000000000000000..434ea8fb8863ff58a3e41dfc3136cd35e66fed82 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.hml @@ -0,0 +1,27 @@ + + +
+
+
+ {{ $item.name }} + {{ $item.exponent }} +
+
+ {{ $item.coded }} + {{ $item.per }} +
+
+
\ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.json b/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.json new file mode 100644 index 0000000000000000000000000000000000000000..7c774a45b9fa1f26b7c60b3a9430bb63ed65c967 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/js/text/pages/index/index.json @@ -0,0 +1,37 @@ +{ + "data": { + "array": [ + { + "id": 1, + "name": "上证指数", + "exponent": "3599.54", + "coded": "000001", + "per": "0.21%" + }, + { + "id": 2, + "name": "上证指数", + "exponent": "3599.54", + "coded": "000001", + "per": "0.21%" + }, + { + "id": 3, + "name": "上证指数", + "exponent": "3599.54", + "coded": "000001", + "per": "0.21%" + } + ] + }, + "actions": { + "routerEvent": { + "action": "router", + "bundleName": "ohos.samples.adaptiveservicewidget", + "abilityName": "ohos.samples.adaptiveservicewidget.MainAbility", + "params": { + "message": "add detail" + } + } + } +} diff --git a/UI/AdaptiveServiceWidget/entry/src/main/resources/base/element/string.json b/UI/AdaptiveServiceWidget/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..3fc1d9f9cd4e973e7fbd0f42a867fa117cf5a887 --- /dev/null +++ b/UI/AdaptiveServiceWidget/entry/src/main/resources/base/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "entry_MainAbility", + "value": "AdaptiveServiceWidget" + }, + { + "name": "mainability_description", + "value": "Service widget example" + } + ] +} \ No newline at end of file diff --git a/UI/AdaptiveServiceWidget/entry/src/main/resources/base/media/icon.png b/UI/AdaptiveServiceWidget/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/UI/AdaptiveServiceWidget/entry/src/main/resources/base/media/icon.png differ diff --git a/UI/AdaptiveServiceWidget/screenshots/device/phone1.png b/UI/AdaptiveServiceWidget/screenshots/device/phone1.png new file mode 100644 index 0000000000000000000000000000000000000000..c8d47495236885ad1d605ac37ae2fb168ba8d685 Binary files /dev/null and b/UI/AdaptiveServiceWidget/screenshots/device/phone1.png differ diff --git a/UI/AdaptiveServiceWidget/screenshots/device/phone2.png b/UI/AdaptiveServiceWidget/screenshots/device/phone2.png new file mode 100644 index 0000000000000000000000000000000000000000..9cb645dc6086aa951ea257e8af3380c6bba1e82d Binary files /dev/null and b/UI/AdaptiveServiceWidget/screenshots/device/phone2.png differ diff --git a/UI/AdaptiveServiceWidget/screenshots/device/tablet1.png b/UI/AdaptiveServiceWidget/screenshots/device/tablet1.png new file mode 100644 index 0000000000000000000000000000000000000000..ad4a8b3a7d8ff346e7b52738a27a310cacc5936d Binary files /dev/null and b/UI/AdaptiveServiceWidget/screenshots/device/tablet1.png differ diff --git a/UI/AdaptiveServiceWidget/screenshots/device/tablet2.png b/UI/AdaptiveServiceWidget/screenshots/device/tablet2.png new file mode 100644 index 0000000000000000000000000000000000000000..c2fb4ebc392eed331ec99546561e1e905e60c5e9 Binary files /dev/null and b/UI/AdaptiveServiceWidget/screenshots/device/tablet2.png differ diff --git a/UI/AdaptiveServiceWidget/settings.gradle b/UI/AdaptiveServiceWidget/settings.gradle new file mode 100644 index 0000000000000000000000000000000000000000..4773db73233a570c2d0c01a22e75321acfbf7a07 --- /dev/null +++ b/UI/AdaptiveServiceWidget/settings.gradle @@ -0,0 +1 @@ +include ':entry'