From 48ce5b1f70c3dabb3f541c0aa8439cbde88fec71 Mon Sep 17 00:00:00 2001 From: bulic Date: Tue, 3 Feb 2015 16:22:30 -0800 Subject: cleaned up unnecessary updates Change-Id: I055d2b1ff1ccad908626f44ffd64714bde23b9b7 --- .../partnerwidget/ClockWidgetProvider.java | 31 +++++++++++++++------- 1 file changed, 21 insertions(+), 10 deletions(-) (limited to 'apps') diff --git a/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java b/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java index 274aff4..77a2851 100644 --- a/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java +++ b/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java @@ -1,4 +1,3 @@ - package com.google.android.leanbacklauncher.partnerwidget; import android.appwidget.AppWidgetManager; @@ -8,6 +7,7 @@ import android.content.Context; import android.content.Intent; import android.net.ConnectivityManager; import android.net.NetworkInfo; +import android.os.Bundle; import android.widget.RemoteViews; public class ClockWidgetProvider extends AppWidgetProvider { @@ -20,18 +20,30 @@ public class ClockWidgetProvider extends AppWidgetProvider { @Override public void onReceive(Context context, Intent intent) { String intentAction = intent.getAction(); - if (INET_CONDITION_ACTION.equals(intentAction)) { - // a broadcast with this intent action is only fired when we are actually connected - // (i.e connectionStatus = 100). So, clearing connectivity status when changing - // networks is required - int connectionStatus = intent.getIntExtra(EXTRA_INET_CONDITION, -551); - writeConnectivity(context, connectionStatus > INET_CONDITION_THRESHOLD); + + if (INET_CONDITION_ACTION.equals(intentAction) || + ConnectivityManager.CONNECTIVITY_ACTION.equals(intentAction)) { + + if (INET_CONDITION_ACTION.equals(intentAction)) { + // a broadcast with this intent action is only fired when we are actually connected + // (i.e connectionStatus = 100). So, clearing connectivity status when changing + // networks is required + int connectionStatus = intent.getIntExtra(EXTRA_INET_CONDITION, -551); + writeConnectivity(context, connectionStatus > INET_CONDITION_THRESHOLD); + } + + update(context); } - update(context); super.onReceive(context, intent); } + @Override + public void onAppWidgetOptionsChanged(Context context, AppWidgetManager appWidgetManager, + int appWidgetId, Bundle newOptions) { + update(context); + } + public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { update(context); super.onUpdate(context, appWidgetManager, appWidgetIds); @@ -44,8 +56,7 @@ public class ClockWidgetProvider extends AppWidgetProvider { } private RemoteViews getRemoteViews(Context context) { - RemoteViews remoteViews = new RemoteViews(context.getPackageName(), - R.layout.clock_widget); + RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.clock_widget); remoteViews.setImageViewResource(R.id.connectivity_indicator, getConnectedResId(context)); return remoteViews; -- cgit v1.2.3