diff options
author | bulic <bulic@google.com> | 2014-11-04 20:56:06 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-11-04 20:56:06 +0000 |
commit | b78f6a457541cf83fce9b7e290255107c9f93ec9 (patch) | |
tree | 49498201b968dae63c51b0b99d8b03949b144c84 | |
parent | eecac56cb7734fa46f39507fbb912088eb43dc93 (diff) | |
parent | 6d30f7cf06d44fe205c85352a61953d06f5099b7 (diff) | |
download | sample-b78f6a457541cf83fce9b7e290255107c9f93ec9.tar.gz |
Merge "Added clock widget" into lmp-mr1-dev
19 files changed, 138 insertions, 0 deletions
diff --git a/apps/LeanbackCustomizer/AndroidManifest.xml b/apps/LeanbackCustomizer/AndroidManifest.xml index ed313c6..5ec2147 100644 --- a/apps/LeanbackCustomizer/AndroidManifest.xml +++ b/apps/LeanbackCustomizer/AndroidManifest.xml @@ -2,6 +2,10 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.google.android.leanbacklauncher.partnercustomizer"> + <uses-sdk + android:minSdkVersion="19" + android:targetSdkVersion="19" /> + <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.INTERNET" /> @@ -19,5 +23,6 @@ <data android:scheme="package"/> </intent-filter> </receiver> + </application> </manifest> diff --git a/apps/LeanbackCustomizer/res/drawable-mdpi/ic_blank.png b/apps/LeanbackCustomizer/res/drawable-mdpi/ic_blank.png Binary files differdeleted file mode 100644 index edae9c4..0000000 --- a/apps/LeanbackCustomizer/res/drawable-mdpi/ic_blank.png +++ /dev/null diff --git a/apps/LeanbackCustomizer/res/values/config.xml b/apps/LeanbackCustomizer/res/values/config.xml index 02f97e7..d16db34 100644 --- a/apps/LeanbackCustomizer/res/values/config.xml +++ b/apps/LeanbackCustomizer/res/values/config.xml @@ -2,6 +2,10 @@ <resources> <!-- DO NOT TRANSLATE --> <string name="partner_wallpaper" translatable="false">bg_custom</string> + <!-- DO NOT TRANSLATE --> + <string name="partner_widget_provider_component_name" translatable="false"> + com.google.android.leanbacklauncher.partnerwidget/.ClockWidgetProvider + </string> <!-- DO NOT TRANSLATE diff --git a/apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java b/apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java index 2c1282b..2c1282b 100644 --- a/apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java +++ b/apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java diff --git a/apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/TestActivity.java b/apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/TestActivity.java index 6ae07ef..6ae07ef 100644 --- a/apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/TestActivity.java +++ b/apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/TestActivity.java diff --git a/apps/LeanbackWidget/Android.mk b/apps/LeanbackWidget/Android.mk new file mode 100644 index 0000000..7209b52 --- /dev/null +++ b/apps/LeanbackWidget/Android.mk @@ -0,0 +1,13 @@ +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) + +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_PATH := $(PRODUCT_OUT)/system/app + +LOCAL_SRC_FILES := $(call all-java-files-under, src) + +LOCAL_PACKAGE_NAME := LeanbackWidget + +LOCAL_SDK_VERSION := current + +include $(BUILD_PACKAGE) diff --git a/apps/LeanbackWidget/AndroidManifest.xml b/apps/LeanbackWidget/AndroidManifest.xml new file mode 100644 index 0000000..7c7001f --- /dev/null +++ b/apps/LeanbackWidget/AndroidManifest.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.google.android.leanbacklauncher.partnerwidget"> + + <uses-sdk + android:minSdkVersion="19" + android:targetSdkVersion="19" /> + + <application android:label="@string/app_label"> + + <receiver android:name=".ClockWidgetProvider" > + <intent-filter> + <action android:name="android.appwidget.action.APPWIDGET_ENABLED" /> + <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> + </intent-filter> + + <meta-data + android:name="android.appwidget.provider" + android:resource="@xml/clock_widget_info" /> + </receiver> + </application> +</manifest> diff --git a/apps/LeanbackWidget/proguard-project.txt b/apps/LeanbackWidget/proguard-project.txt new file mode 100644 index 0000000..f2fe155 --- /dev/null +++ b/apps/LeanbackWidget/proguard-project.txt @@ -0,0 +1,20 @@ +# To enable ProGuard in your project, edit project.properties +# to define the proguard.config property as described in that file. +# +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in ${sdk.dir}/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the ProGuard +# include property in project.properties. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/apps/LeanbackWidget/res/drawable-hdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-hdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..eb9dfe2 --- /dev/null +++ b/apps/LeanbackWidget/res/drawable-hdpi/ic_launcher.png diff --git a/apps/LeanbackWidget/res/drawable-mdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-mdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..d8e46f3 --- /dev/null +++ b/apps/LeanbackWidget/res/drawable-mdpi/ic_launcher.png diff --git a/apps/LeanbackWidget/res/drawable-xhdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-xhdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..e4e79c9 --- /dev/null +++ b/apps/LeanbackWidget/res/drawable-xhdpi/ic_launcher.png diff --git a/apps/LeanbackWidget/res/drawable-xxhdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-xxhdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..53ced36 --- /dev/null +++ b/apps/LeanbackWidget/res/drawable-xxhdpi/ic_launcher.png diff --git a/apps/LeanbackWidget/res/layout/clock_widget.xml b/apps/LeanbackWidget/res/layout/clock_widget.xml new file mode 100644 index 0000000..9da9dc4 --- /dev/null +++ b/apps/LeanbackWidget/res/layout/clock_widget.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8"?> +<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_gravity="top|end"> + + <TextClock + android:id="@+id/clock" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:format12Hour="@string/widget_12_hours_format" + android:format24Hour="@string/widget_24_hours_format" + android:fontFamily="@string/light_font" + android:textColor="@color/clock_text_color" + android:textSize="@dimen/clock_text_size" + android:layout_gravity="top|end" /> + +</FrameLayout> diff --git a/apps/LeanbackWidget/res/values/colors.xml b/apps/LeanbackWidget/res/values/colors.xml new file mode 100644 index 0000000..bcc3a80 --- /dev/null +++ b/apps/LeanbackWidget/res/values/colors.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <color name="clock_text_color">#FFEEEEEE</color> +</resources> diff --git a/apps/LeanbackWidget/res/values/config.xml b/apps/LeanbackWidget/res/values/config.xml new file mode 100644 index 0000000..9e4f1ba --- /dev/null +++ b/apps/LeanbackWidget/res/values/config.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + + <!-- DO NOT TRANSLATE --> + <string name="font" translatable="false">sans-serif-condensed</string> + <!-- DO NOT TRANSLATE --> + <string name="light_font" translatable="false">sans-serif-light</string> + <!-- DO NOT TRANSLATE --> + <string name="regular_font" translatable="false">sans-serif</string> + + <string name="widget_12_hours_format" translatable="false">h:mm</string> + <string name="widget_24_hours_format" translatable="false">kk:mm</string> + +</resources> diff --git a/apps/LeanbackWidget/res/values/dimens.xml b/apps/LeanbackWidget/res/values/dimens.xml new file mode 100644 index 0000000..7c04e7c --- /dev/null +++ b/apps/LeanbackWidget/res/values/dimens.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <dimen name="clock_text_size">32sp</dimen> +</resources> diff --git a/apps/LeanbackWidget/res/values/strings.xml b/apps/LeanbackWidget/res/values/strings.xml new file mode 100644 index 0000000..4f733a4 --- /dev/null +++ b/apps/LeanbackWidget/res/values/strings.xml @@ -0,0 +1,5 @@ +<resources> + + <string name="app_label">LeanbackWidget</string> + +</resources> diff --git a/apps/LeanbackWidget/res/xml/clock_widget_info.xml b/apps/LeanbackWidget/res/xml/clock_widget_info.xml new file mode 100644 index 0000000..d932126 --- /dev/null +++ b/apps/LeanbackWidget/res/xml/clock_widget_info.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" + android:updatePeriodMillis="86400000" + android:initialLayout="@layout/clock_widget" />
\ No newline at end of file diff --git a/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java b/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java new file mode 100644 index 0000000..1143812 --- /dev/null +++ b/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java @@ -0,0 +1,25 @@ + +package com.google.android.leanbacklauncher.partnerwidget; + +import android.appwidget.AppWidgetManager; +import android.appwidget.AppWidgetProvider; +import android.content.ComponentName; +import android.content.Context; +import android.widget.RemoteViews; + +public class ClockWidgetProvider extends AppWidgetProvider { + + + public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { + + ComponentName thisWidget = new ComponentName(context, ClockWidgetProvider.class); + int[] allWidgetIds = appWidgetManager.getAppWidgetIds(thisWidget); + for (int widgetId : allWidgetIds) { + RemoteViews remoteView = new RemoteViews(context.getPackageName(), + R.layout.clock_widget); + appWidgetManager.updateAppWidget(widgetId, remoteView); + } + + super.onUpdate(context, appWidgetManager, appWidgetIds); + } +} |