From: Nathaniel Wesley Filardo Date: Sat, 5 Oct 2019 16:57:39 +0000 (+0100) Subject: Add hierarchy to activity package X-Git-Url: https://hydra-www.ietfng.org/gitweb/?a=commitdiff_plain;h=adb429c6bb3a42a6b65960f0d09a684a9bb2655a;p=acmetensortoys-ctfws-android Add hierarchy to activity package --- diff --git a/mobile/src/main/AndroidManifest.xml b/mobile/src/main/AndroidManifest.xml index eaad69a..a05bf7a 100644 --- a/mobile/src/main/AndroidManifest.xml +++ b/mobile/src/main/AndroidManifest.xml @@ -21,7 +21,7 @@ android:supportsRtl="true" android:theme="@style/AppTheme"> - + diff --git a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivity.java b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java similarity index 92% rename from mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivity.java rename to mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java index c923b7f..cf41656 100644 --- a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivity.java +++ b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/Activity.java @@ -1,4 +1,4 @@ -package com.acmetensortoys.ctfwstimer.activity; +package com.acmetensortoys.ctfwstimer.activity.main; import android.content.Intent; import android.content.SharedPreferences; @@ -18,15 +18,20 @@ import android.widget.TextView; import com.acmetensortoys.ctfwstimer.BuildConfig; import com.acmetensortoys.ctfwstimer.R; +import com.acmetensortoys.ctfwstimer.activity.AboutActivity; +import com.acmetensortoys.ctfwstimer.activity.CtFwSActivityBase; +import com.acmetensortoys.ctfwstimer.activity.HandbookActivity; +import com.acmetensortoys.ctfwstimer.activity.main.BuildHooksImpl; +import com.acmetensortoys.ctfwstimer.activity.SettingsActivity; import com.acmetensortoys.ctfwstimer.service.MainService; import com.acmetensortoys.ctfwstimer.utils.AndroidResourceUtils; import com.acmetensortoys.ctfwstimer.utils.CheckedAsyncDownloader; -public class MainActivity extends CtFwSActivityBase { +public class Activity extends CtFwSActivityBase { private static final String TAG = "CtFwS"; - private final MainActivityBuildHooks mabh = new MainActivityBuildHooksImpl(); + private final BuildHooks mabh = new BuildHooksImpl(); private MainService.MqttServerEvent mLastMSE; private final MainService.Observer mSrvObs = new MainService.Observer() { @@ -76,7 +81,7 @@ public class MainActivity extends CtFwSActivityBase { private MenuItem mMenuReconn; - private MainActivityCtFwSDisplay mCdl; // set in onStart + private CtFwSDisplay mCdl; // set in onStart private TextView mTvSU; // set in onStart private TextView mTvSS; // set in onStart private void setServerStateText(@StringRes final int resid, Object... args) { @@ -119,13 +124,13 @@ public class MainActivity extends CtFwSActivityBase { mTvSU = findViewById(R.id.tv_mqtt_server_uri); mTvSS = findViewById(R.id.tv_mqtt_state); - mCdl = new MainActivityCtFwSDisplay(this); + mCdl = new CtFwSDisplay(this); } protected void doRegisterObservers(){ mSrvBinder.getGameState().registerObserver(mCdl); mSrvBinder.registerObserver(mSrvObs); - mabh.onRegisterObservers(MainActivity.this, mSrvBinder); + mabh.onRegisterObservers(Activity.this, mSrvBinder); } @Override @@ -217,7 +222,7 @@ public class MainActivity extends CtFwSActivityBase { startActivity(new Intent(this, HandbookActivity.class)); return true; case R.id.mainmenu_judge: - startActivity(new Intent(this, JudgeActivity.class)); + startActivity(new Intent(this, Activity.class)); return true; case R.id.mainmenu_screenwake: boolean checked = mi.isChecked(); diff --git a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivityBuildHooks.java b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/BuildHooks.java similarity index 66% rename from mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivityBuildHooks.java rename to mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/BuildHooks.java index 62372ce..4642c4a 100644 --- a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivityBuildHooks.java +++ b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/BuildHooks.java @@ -1,10 +1,10 @@ -package com.acmetensortoys.ctfwstimer.activity; +package com.acmetensortoys.ctfwstimer.activity.main; import com.acmetensortoys.ctfwstimer.service.MainService; // The MainActivity expects a "MainActivityBuildHooksImpl" class that ascribes to this interface // per build flavor. This will be used when, for example, we kick on Google Play for Wear // interaction and want to push messages out to the wearable data network. -public interface MainActivityBuildHooks { - void onRegisterObservers(MainActivity ma, MainService.LocalBinder b); +public interface BuildHooks { + void onRegisterObservers(Activity ma, MainService.LocalBinder b); } diff --git a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivityCtFwSDisplay.java b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/CtFwSDisplay.java similarity index 97% rename from mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivityCtFwSDisplay.java rename to mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/CtFwSDisplay.java index 90f5fef..1571b32 100644 --- a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/MainActivityCtFwSDisplay.java +++ b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/activity/main/CtFwSDisplay.java @@ -1,4 +1,4 @@ -package com.acmetensortoys.ctfwstimer.activity; +package com.acmetensortoys.ctfwstimer.activity.main; import android.app.Activity; import android.content.res.Resources; @@ -21,16 +21,14 @@ import com.acmetensortoys.ctfwstimer.utils.AndroidResourceUtils; import java.text.NumberFormat; import java.util.SortedSet; -import static android.view.View.INVISIBLE; - // TODO nwf is bad at UI design; someone who isn't him should improve this -class MainActivityCtFwSDisplay implements CtFwSGameStateManager.Observer { +public class CtFwSDisplay implements CtFwSGameStateManager.Observer { final private Activity mAct; String gameStateLabelText; private final StunTimer stun_short, stun_long; - MainActivityCtFwSDisplay(Activity a) { + CtFwSDisplay(Activity a) { mAct = a; gameStateLabelText = mAct.getResources().getString(R.string.header_gamestate0); @@ -226,6 +224,7 @@ class MainActivityCtFwSDisplay implements CtFwSGameStateManager.Observer { pb_jb.post(new Runnable() { @Override public void run() { + pb_jb.setVisibility(View.VISIBLE); pb_jb.setIndeterminate(false); pb_jb.setMax((int) (now.roundEnd - now.roundStart)); pb_jb.setProgress(0); @@ -262,6 +261,7 @@ class MainActivityCtFwSDisplay implements CtFwSGameStateManager.Observer { pb_gp.post(new Runnable() { @Override public void run() { + pb_gp.setVisibility(View.VISIBLE); pb_gp.setIndeterminate(false); pb_gp.setMax(gs.getComputedGameDuration()); pb_gp.setProgress(0); @@ -289,6 +289,7 @@ class MainActivityCtFwSDisplay implements CtFwSGameStateManager.Observer { pb_gp.post(new Runnable() { @Override public void run() { + pb_gp.setVisibility(View.INVISIBLE); pb_gp.setIndeterminate(true); } }); @@ -299,7 +300,7 @@ class MainActivityCtFwSDisplay implements CtFwSGameStateManager.Observer { public void run() { ch_gp.setOnChronometerTickListener(null); ch_gp.stop(); - ch_gp.setVisibility(INVISIBLE); + ch_gp.setVisibility(View.INVISIBLE); } }); } @@ -336,6 +337,7 @@ class MainActivityCtFwSDisplay implements CtFwSGameStateManager.Observer { pb.post(new Runnable() { @Override public void run() { + pb.setVisibility(View.INVISIBLE); pb.setIndeterminate(true); } }); @@ -345,6 +347,7 @@ class MainActivityCtFwSDisplay implements CtFwSGameStateManager.Observer { pb.post(new Runnable() { @Override public void run() { + pb.setVisibility(View.INVISIBLE); pb.setIndeterminate(true); } }); diff --git a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/service/MainServiceNotification.java b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/service/MainServiceNotification.java index 2c7c3ce..6be0b34 100644 --- a/mobile/src/main/java/com/acmetensortoys/ctfwstimer/service/MainServiceNotification.java +++ b/mobile/src/main/java/com/acmetensortoys/ctfwstimer/service/MainServiceNotification.java @@ -17,7 +17,7 @@ import android.preference.PreferenceManager; import androidx.core.app.NotificationCompat; import android.util.Log; -import com.acmetensortoys.ctfwstimer.activity.MainActivity; +import com.acmetensortoys.ctfwstimer.activity.main.Activity; import com.acmetensortoys.ctfwstimer.R; import com.acmetensortoys.ctfwstimer.lib.CtFwSGameStateManager; @@ -39,7 +39,7 @@ class MainServiceNotification { MainServiceNotification(MainService ms, CtFwSGameStateManager game){ mService = ms; - Intent ni = new Intent(ms, MainActivity.class); + Intent ni = new Intent(ms, Activity.class); ni.setAction(Intent.ACTION_MAIN); ni.addCategory(Intent.CATEGORY_LAUNCHER); ni.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); diff --git a/mobile/src/main/res/layout-land/activity_main.xml b/mobile/src/main/res/layout-land/activity_main.xml index cdb3f32..b76f39f 100644 --- a/mobile/src/main/res/layout-land/activity_main.xml +++ b/mobile/src/main/res/layout-land/activity_main.xml @@ -8,7 +8,7 @@ android:paddingTop="@dimen/activity_vertical_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingBottom="@dimen/activity_vertical_margin" - tools:context="com.acmetensortoys.ctfwstimer.activity.MainActivity"> + tools:context="com.acmetensortoys.ctfwstimer.activity.main.Activity"> + tools:context="com.acmetensortoys.ctfwstimer.activity.main.Activity">