Revert "Clean up published network condition reporting."

In some cases causes grey ICON's.

This reverts commit 2587a53c31073d277590cb9a8ae5e3bb58006927

Change-Id: I09f893d03651c3fb9fcb88ee9e5ac7ce6cb6e273
diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java
index 5aba7ec..2ccde3b 100644
--- a/services/java/com/android/server/ConnectivityService.java
+++ b/services/java/com/android/server/ConnectivityService.java
@@ -194,6 +194,7 @@
     private int mNetworkPreference;
     private int mActiveDefaultNetwork = -1;
     // 0 is full bad, 100 is full good
+    private int mDefaultInetCondition = 0;
     private int mDefaultInetConditionPublished = 0;
     private boolean mInetConditionChangeInFlight = false;
     private int mDefaultConnectionSequence = 0;
@@ -1727,10 +1728,6 @@
                 intent.putExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO, switchTo);
             } else {
                 mDefaultInetConditionPublished = 0; // we're not connected anymore
-                if (DBG) {
-                    log("handleDisconnect: net=" + mActiveDefaultNetwork +
-                            ", published condition=" + mDefaultInetConditionPublished);
-                }
                 intent.putExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, true);
             }
         }
@@ -1921,10 +1918,6 @@
                 intent.putExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO, switchTo);
             } else {
                 mDefaultInetConditionPublished = 0;
-                if (DBG) {
-                    log("handleConnectionFailure: net=" + mActiveDefaultNetwork +
-                            ", published condition=" + mDefaultInetConditionPublished);
-                }
                 intent.putExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, true);
             }
         }
@@ -2069,10 +2062,6 @@
             mDefaultInetConditionPublished = 0;
             mDefaultConnectionSequence++;
             mInetConditionChangeInFlight = false;
-            if (DBG) {
-                log("handleConnect: net=" + newNetType +
-                        ", published condition=" + mDefaultInetConditionPublished);
-            }
             // Don't do this - if we never sign in stay, grey
             //reportNetworkCondition(mActiveDefaultNetwork, 100);
         }
@@ -2723,8 +2712,7 @@
                 {
                     int netType = msg.arg1;
                     int sequence = msg.arg2;
-                    int condition = (Integer)msg.obj;
-                    handleInetConditionHoldEnd(netType, sequence, condition);
+                    handleInetConditionHoldEnd(netType, sequence);
                     break;
                 }
                 case EVENT_SET_NETWORK_PREFERENCE:
@@ -2937,13 +2925,14 @@
         if (VDBG) {
             log("handleInetConditionChange: net=" +
                     netType + ", condition=" + condition +
-                    " mActiveDefaultNetwork=" + mActiveDefaultNetwork);
+                    ",mActiveDefaultNetwork=" + mActiveDefaultNetwork);
         }
+        mDefaultInetCondition = condition;
         int delay;
         if (mInetConditionChangeInFlight == false) {
             if (VDBG) log("handleInetConditionChange: starting a change hold");
             // setup a new hold to debounce this
-            if (condition > 50) {
+            if (mDefaultInetCondition > 50) {
                 delay = Settings.Global.getInt(mContext.getContentResolver(),
                         Settings.Global.INET_CONDITION_DEBOUNCE_UP_DELAY, 500);
             } else {
@@ -2952,16 +2941,18 @@
             }
             mInetConditionChangeInFlight = true;
             mHandler.sendMessageDelayed(mHandler.obtainMessage(EVENT_INET_CONDITION_HOLD_END,
-                    mActiveDefaultNetwork, mDefaultConnectionSequence, new Integer(condition)), delay);
+                    mActiveDefaultNetwork, mDefaultConnectionSequence), delay);
         } else {
             // we've set the new condition, when this hold ends that will get picked up
             if (VDBG) log("handleInetConditionChange: currently in hold - not setting new end evt");
         }
     }
 
-    private void handleInetConditionHoldEnd(int netType, int sequence, int condition) {
+    private void handleInetConditionHoldEnd(int netType, int sequence) {
         if (DBG) {
-            log("handleInetConditionHoldEnd: net=" + netType + ", condition=" + condition);
+            log("handleInetConditionHoldEnd: net=" + netType +
+                    ", condition=" + mDefaultInetCondition +
+                    ", published condition=" + mDefaultInetConditionPublished);
         }
         mInetConditionChangeInFlight = false;
 
@@ -2973,13 +2964,19 @@
             if (DBG) log("handleInetConditionHoldEnd: event hold for obsolete network - ignoring");
             return;
         }
-
+        // TODO: Figure out why this optimization sometimes causes a
+        //       change in mDefaultInetCondition to be missed and the
+        //       UI to not be updated.
+        //if (mDefaultInetConditionPublished == mDefaultInetCondition) {
+        //    if (DBG) log("no change in condition - aborting");
+        //    return;
+        //}
         NetworkInfo networkInfo = mNetTrackers[mActiveDefaultNetwork].getNetworkInfo();
         if (networkInfo.isConnected() == false) {
             if (DBG) log("handleInetConditionHoldEnd: default network not connected - ignoring");
             return;
         }
-        mDefaultInetConditionPublished = condition;
+        mDefaultInetConditionPublished = mDefaultInetCondition;
         sendInetConditionBroadcast(networkInfo);
         return;
     }