diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/AndorsTrailApplication.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/AndorsTrailApplication.java index 9682ed2f4..f655b0602 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/AndorsTrailApplication.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/AndorsTrailApplication.java @@ -62,11 +62,6 @@ public final class AndorsTrailApplication extends Application { public boolean isInitialized() { return world.model != null; } - public void setView(Activity activity, @LayoutRes int about) { - setWindowParameters(activity); - activity.setContentView(about); - setFullscreenMode(activity); - } public void setWindowParameters(Activity activity) { activity.requestWindowFeature(Window.FEATURE_NO_TITLE); } diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AboutActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AboutActivity.java index 47d741cb4..fa8b38647 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AboutActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AboutActivity.java @@ -24,7 +24,7 @@ public final class AboutActivity extends AndorsTrailBaseActivity implements Imag super.onCreate(savedInstanceState); AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); - app.setView(this, R.layout.about); + initializeView(this, R.layout.about, R.id.about_root); final Resources res = getResources(); final TextView tv = (TextView) findViewById(R.id.about_contents); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ActorConditionInfoActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ActorConditionInfoActivity.java index 6354edf6c..d2a9e0dfb 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ActorConditionInfoActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ActorConditionInfoActivity.java @@ -30,9 +30,7 @@ public final class ActorConditionInfoActivity extends AndorsTrailBaseActivity { String conditionTypeID = getIntent().getData().getLastPathSegment(); ActorConditionType conditionType = world.actorConditionsTypes.getActorConditionType(conditionTypeID); - - setContentView(R.layout.actorconditioninfo); - + initializeView(this, R.layout.actorconditioninfo, R.id.actorconditioninfo_root); TextView tv = (TextView) findViewById(R.id.actorconditioninfo_title); tv.setText(conditionType.name); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseActivity.java index 83f8a4d07..598ff027a 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseActivity.java @@ -2,6 +2,10 @@ package com.gpl.rpg.AndorsTrail.activity; import android.app.Activity; import android.os.Bundle; +import android.view.View; + +import androidx.annotation.IdRes; +import androidx.annotation.LayoutRes; import com.gpl.rpg.AndorsTrail.AndorsTrailApplication; @@ -19,5 +23,13 @@ public abstract class AndorsTrailBaseActivity extends Activity { AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); app.setLocale(this); } + protected void initializeView(Activity activity, @LayoutRes int layoutId, @IdRes int rootViewId) { + AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(activity); + app.setWindowParameters(activity); + activity.setContentView(layoutId); + View root = activity.findViewById(rootViewId); + app.setUsablePadding(root); + app.setFullscreenMode(activity); + } } diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseFragmentActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseFragmentActivity.java index fc6f573f4..591192c68 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseFragmentActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/AndorsTrailBaseFragmentActivity.java @@ -1,6 +1,11 @@ package com.gpl.rpg.AndorsTrail.activity; +import android.app.Activity; import android.os.Bundle; +import android.view.View; + +import androidx.annotation.IdRes; +import androidx.annotation.LayoutRes; import androidx.fragment.app.FragmentActivity; import com.gpl.rpg.AndorsTrail.AndorsTrailApplication; @@ -19,4 +24,13 @@ public abstract class AndorsTrailBaseFragmentActivity extends FragmentActivity { AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); app.setLocale(this); } + + protected void initializeView(Activity activity, @LayoutRes int layoutId, @IdRes int rootViewId) { + AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(activity); + app.setWindowParameters(activity); + activity.setContentView(layoutId); + View root = activity.findViewById(rootViewId); + app.setUsablePadding(root); + app.setFullscreenMode(activity); + } } diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/BulkSelectionInterface.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/BulkSelectionInterface.java index 1137426cb..874591929 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/BulkSelectionInterface.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/BulkSelectionInterface.java @@ -89,9 +89,7 @@ public final class BulkSelectionInterface extends AndorsTrailBaseActivity implem interfaceType = BulkInterfaceType.valueOf(params.getString("interfaceType")); int intialSelection = 1; - - setContentView(R.layout.bulkselection); - app.setFullscreenMode(this); + initializeView(this, R.layout.bulkselection, R.id.bulkselection_root); // initialize UI variables TextView bulkselection_action_type = (TextView)findViewById(R.id.bulkselection_action_type); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ConversationActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ConversationActivity.java index 95421cc48..5a98e9c68 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ConversationActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ConversationActivity.java @@ -75,7 +75,7 @@ public final class ConversationActivity requestWindowFeature(Window.FEATURE_NO_TITLE); - setContentView(R.layout.conversation); + initializeView(this, R.layout.conversation, R.id.conversation_root); setFinishOnTouchOutside(false); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/DisplayWorldMapActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/DisplayWorldMapActivity.java index 781f809c2..f7c5ce397 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/DisplayWorldMapActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/DisplayWorldMapActivity.java @@ -38,7 +38,7 @@ public final class DisplayWorldMapActivity extends AndorsTrailBaseActivity { AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); if (!app.isInitialized()) { finish(); return; } this.world = app.getWorld(); - app.setView(this, R.layout.displayworldmap); + initializeView(this, R.layout.displayworldmap, R.id.worldmap_root); displayworldmap_webview = (WebView) findViewById(R.id.displayworldmap_webview); displayworldmap_webview.setBackgroundColor(ThemeHelper.getThemeColor(this, R.attr.ui_theme_displayworldmap_bg_color)); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/HeroinfoActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/HeroinfoActivity.java index d127cfaa5..6106cda38 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/HeroinfoActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/HeroinfoActivity.java @@ -29,7 +29,7 @@ public final class HeroinfoActivity extends AndorsTrailBaseFragmentActivity { AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); if (!app.isInitialized()) { finish(); return; } this.world = app.getWorld(); - app.setView(this, R.layout.tabbedlayout); + initializeView(this, R.layout.tabbedlayout, android.R.id.tabhost); Resources res = getResources(); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ItemInfoActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ItemInfoActivity.java index d8515e674..4fcc1719a 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ItemInfoActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ItemInfoActivity.java @@ -46,7 +46,7 @@ public final class ItemInfoActivity extends AndorsTrailBaseActivity { boolean buttonEnabled = params.getBoolean("buttonEnabled"); boolean moreButtonEnabled = params.getBoolean("moreActions"); - app.setView(this, R.layout.iteminfo); + initializeView(this, R.layout.iteminfo, R.id.iteminfo_root); TextView tv = (TextView) findViewById(R.id.iteminfo_title); tv.setText(itemType.getName(world.model.player)); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LevelUpActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LevelUpActivity.java index 3f9831aa5..5a891754f 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LevelUpActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LevelUpActivity.java @@ -37,7 +37,7 @@ public final class LevelUpActivity extends AndorsTrailBaseActivity { requestWindowFeature(Window.FEATURE_NO_TITLE); - setContentView(R.layout.levelup); + initializeView(this, R.layout.levelup, R.id.levelup_root); levelup_title = (TextView) findViewById(R.id.levelup_title); levelup_description = (TextView) findViewById(R.id.levelup_description); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadSaveActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadSaveActivity.java index a224380f3..183ed5afc 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadSaveActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadSaveActivity.java @@ -70,8 +70,7 @@ public final class LoadSaveActivity extends AndorsTrailBaseActivity implements O String loadsave = getIntent().getData().getLastPathSegment(); isLoading = (loadsave.equalsIgnoreCase("load")); - setContentView(R.layout.loadsave); - app.setFullscreenMode(this); + initializeView(this, R.layout.loadsave, R.id.loadsave_root); TextView tv = (TextView) findViewById(R.id.loadsave_title); if (isLoading) { diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadingActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadingActivity.java index 96979c2f1..6def27a7e 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadingActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/LoadingActivity.java @@ -36,7 +36,7 @@ public final class LoadingActivity extends AndorsTrailBaseActivity implements On setTheme(ThemeHelper.getBaseTheme()); super.onCreate(savedInstanceState); AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); - app.setView(this, R.layout.startscreen); + initializeView(this, R.layout.startscreen, R.id.startscreen_fragment_container); TextView tv = (TextView) findViewById(R.id.startscreen_version); tv.setVisibility(View.GONE); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MainActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MainActivity.java index e2e6472d2..e2cf01ac2 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MainActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MainActivity.java @@ -92,7 +92,7 @@ public final class MainActivity this.world = app.getWorld(); this.controllers = app.getControllerContext(); - app.setView(this, R.layout.main); + initializeView(this, R.layout.main, R.id.main_container); mainview = (MainView) findViewById(R.id.main_mainview); statusview = (StatusView) findViewById(R.id.main_statusview); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterEncounterActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterEncounterActivity.java index 5d11ea8a5..e50f2d28e 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterEncounterActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterEncounterActivity.java @@ -34,7 +34,7 @@ public final class MonsterEncounterActivity extends AndorsTrailBaseActivity { return; } - setContentView(R.layout.monsterencounter); + initializeView(this, R.layout.monsterencounter, R.id.monsterencounter_root); CharSequence difficulty = getText(MonsterInfoActivity.getMonsterDifficultyResource(controllers, monster)); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterInfoActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterInfoActivity.java index 219e60c15..e7f6ec22a 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterInfoActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/MonsterInfoActivity.java @@ -43,7 +43,7 @@ public final class MonsterInfoActivity extends AndorsTrailBaseActivity { this.controllers = app.getControllerContext(); requestWindowFeature(Window.FEATURE_NO_TITLE); - setContentView(R.layout.monsterinfo); + initializeView(this, R.layout.monsterinfo, R.id.monsterinfo_root); monsterinfo_title = (TextView) findViewById(R.id.monsterinfo_title); monsterinfo_difficulty = (TextView) findViewById(R.id.monsterinfo_difficulty); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/Preferences.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/Preferences.java index 275148baf..d46e704e0 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/Preferences.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/Preferences.java @@ -13,14 +13,16 @@ public final class Preferences extends PreferenceActivity { @Override protected void onCreate(Bundle savedInstanceState) { setTheme(ThemeHelper.getBaseTheme()); - requestWindowFeature(Window.FEATURE_NO_TITLE); - super.onCreate(savedInstanceState); AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); + app.setWindowParameters(this); + super.onCreate(savedInstanceState); app.setFullscreenMode(this); app.setLocale(this); addPreferencesFromResource(R.xml.preferences); + + } @Override diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ShopActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ShopActivity.java index b8b427158..235348917 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ShopActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/ShopActivity.java @@ -24,7 +24,7 @@ public final class ShopActivity extends AndorsTrailBaseFragmentActivity { AndorsTrailApplication app = AndorsTrailApplication.getApplicationFromActivity(this); if (!app.isInitialized()) { finish(); return; } - app.setView(this, R.layout.tabbedlayout); + initializeView(this, R.layout.tabbedlayout, android.R.id.tabhost); final Resources res = getResources(); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/SkillInfoActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/SkillInfoActivity.java index cbe9da732..acd1bcecc 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/SkillInfoActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/SkillInfoActivity.java @@ -31,7 +31,7 @@ public final class SkillInfoActivity extends AndorsTrailBaseActivity { final WorldContext world = app.getWorld(); final Player player = world.model.player; - app.setView(this, R.layout.skill_info_view); + initializeView(this, R.layout.skill_info_view, R.id.skillinfo_root); final Resources res = getResources(); final Intent intent = getIntent(); diff --git a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/StartScreenActivity.java b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/StartScreenActivity.java index a379298f9..27a93601e 100644 --- a/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/StartScreenActivity.java +++ b/AndorsTrail/app/src/main/java/com/gpl/rpg/AndorsTrail/activity/StartScreenActivity.java @@ -52,11 +52,10 @@ public final class StartScreenActivity extends AndorsTrailBaseFragmentActivity i TileManager tileManager = app.getWorld().tileManager; tileManager.setDensity(res); - app.setView(this, R.layout.startscreen); + initializeView(this, R.layout.startscreen, R.id.startscreen_fragment_container); + app.setFullscreenMode(this); - View startscreen_fragment_container = findViewById(R.id.startscreen_fragment_container); - if (startscreen_fragment_container != null) { - app.setUsablePadding(startscreen_fragment_container); + if (findViewById(R.id.startscreen_fragment_container) != null) { StartScreenActivity_MainMenu mainMenu = new StartScreenActivity_MainMenu(); getSupportFragmentManager().beginTransaction() diff --git a/AndorsTrail/res/layout/about.xml b/AndorsTrail/res/layout/about.xml index 3eebd04fa..2ccfefb46 100644 --- a/AndorsTrail/res/layout/about.xml +++ b/AndorsTrail/res/layout/about.xml @@ -5,6 +5,7 @@ android:layout_height="match_parent" android:padding="@dimen/dialog_margin" android:orientation="vertical" + android:id="@+id/about_root" > + android:orientation="vertical" + android:id="@+id/actorconditioninfo_root"> + android:orientation="vertical" android:id="@+id/bulkselection_root"> + android:orientation="vertical" + android:id="@+id/worldmap_root"> + android:orientation="vertical" + android:id="@+id/iteminfo_root"> + android:padding="@dimen/dialog_margin" + android:id="@+id/levelup_root"> + android:orientation="vertical" + android:id="@+id/monsterencounter_root"> + android:orientation="vertical" + android:id="@+id/monsterinfo_root"> + android:orientation="vertical" + android:id="@+id/skillinfo_root">