]> hydra-www.ietfng.org Git - acmetensortoys-ctfws-android/commitdiff
main display: update menu from UI thread.
authorNathaniel Wesley Filardo <nwfilardo@gmail.com>
Sun, 6 Oct 2019 21:32:11 +0000 (22:32 +0100)
committerNathaniel Wesley Filardo <nwfilardo@gmail.com>
Tue, 8 Oct 2019 09:19:56 +0000 (10:19 +0100)
mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java

index cf41656d5d5da86ef0fac4dc285d422251ad82b1..63b0021ce99db35d5737dbf16530f3e8d41ba2a4 100644 (file)
@@ -53,7 +53,7 @@ public class Activity extends CtFwSActivityBase {
         public void onMqttServerEvent(MainService.LocalBinder b, MainService.MqttServerEvent mse) {
             mLastMSE = mse;
             if (mMenuReconn != null) {
-                setMenuReconnVis(mse);
+                updateMenuReconnVis();
             }
             switch(mse) {
                 case MSE_CONN:
@@ -262,7 +262,7 @@ public class Activity extends CtFwSActivityBase {
 
         mMenuReconn = menu.findItem(R.id.mainmenu_reconn);
         if (mLastMSE != null) {
-            setMenuReconnVis(mLastMSE);
+            updateMenuReconnVis();
         }
 
 
@@ -273,15 +273,20 @@ public class Activity extends CtFwSActivityBase {
         return true;
     }
 
-    private void setMenuReconnVis(MainService.MqttServerEvent mse) {
-        switch(mse) {
-            case MSE_CONN:
-            case MSE_SUB:
-                mMenuReconn.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
-                break;
-            case MSE_DISCONN:
-                mMenuReconn.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
-                break;
-        }
+    private void updateMenuReconnVis() {
+        runOnUiThread(new Runnable() {
+            @Override
+            public void run() {
+                switch(mLastMSE) {
+                    case MSE_CONN:
+                    case MSE_SUB:
+                        mMenuReconn.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
+                        break;
+                    case MSE_DISCONN:
+                        mMenuReconn.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
+                        break;
+                }
+            }
+        });
     }
 }