From: Nathaniel Wesley Filardo Date: Sun, 6 Oct 2019 21:32:11 +0000 (+0100) Subject: main display: update menu from UI thread. X-Git-Url: https://hydra-www.ietfng.org/gitweb/?a=commitdiff_plain;h=af86bcefa9e807d5549ade067886e611c7a1c1ad;p=acmetensortoys-ctfws-android main display: update menu from UI thread. --- diff --git a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java index cf41656..63b0021 100644 --- a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java +++ b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java @@ -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; + } + } + }); } }