diff --git a/app/src/main/java/com/kdt/mcgui/MineButton.java b/app/src/main/java/com/kdt/mcgui/MineButton.java
index cba7f6df7..9070f3254 100644
--- a/app/src/main/java/com/kdt/mcgui/MineButton.java
+++ b/app/src/main/java/com/kdt/mcgui/MineButton.java
@@ -11,8 +11,6 @@ import net.kdt.pojavlaunch.*;
public class MineButton extends Button
{
- private static FontChanger fontChangerMinecraftTen;
-
private ColorDrawable left = new ColorDrawable(Color.parseColor("#80000000"));
private ColorDrawable top = new ColorDrawable(Color.parseColor("#64FC20"));
private ColorDrawable right = new ColorDrawable(Color.parseColor("#40000000"));
@@ -54,10 +52,7 @@ public class MineButton extends Button
init();
}
- public void init()
- {
- if (fontChangerMinecraftTen == null) fontChangerMinecraftTen = new FontChanger(getContext().getAssets(), "font/minecraft-ten.ttf");
- fontChangerMinecraftTen.replaceFont(this);
+ public void init() {
getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
diff --git a/app/src/main/java/com/kdt/mcgui/app/MineActivity.java b/app/src/main/java/com/kdt/mcgui/app/MineActivity.java
index 2e7beccf2..7778b64dc 100644
--- a/app/src/main/java/com/kdt/mcgui/app/MineActivity.java
+++ b/app/src/main/java/com/kdt/mcgui/app/MineActivity.java
@@ -8,37 +8,18 @@ import android.widget.*;
import net.kdt.pojavlaunch.*;
import java.util.*;
import android.content.*;
+import com.kdt.mcgui.*;
public class MineActivity extends AppCompatActivity implements View.OnClickListener
{
private int topId = 150001;
private boolean showBeforeView = true;
- private static FontChanger fontChanger;
-
private ImageButton menu;
private LinearLayout content, undertop;
private LayoutInflater li;
- public static ViewGroup replaceFonts(Context ctx, ViewGroup viewTree) {
- if (fontChanger == null) fontChanger = new FontChanger(ctx.getAssets(), "font/NotoSans-Bold.ttf");
- return fontChanger.replaceFonts(viewTree);
- }
-
- public static View replaceFont(Context ctx, TextView view) {
- if (fontChanger == null) fontChanger = new FontChanger(ctx.getAssets(), "font/NotoSans-Bold.ttf");
- return fontChanger.replaceFont(view);
- }
-
- public ViewGroup replaceFonts(ViewGroup viewTree) {
- return replaceFonts(this, viewTree);
- }
-
- public View replaceFont(TextView view) {
- return replaceFont(this, view);
- }
-
@Override
protected void onCreate(Bundle savedInstanceState) {
this.onCreate(savedInstanceState, true);
@@ -65,7 +46,7 @@ public class MineActivity extends AppCompatActivity implements View.OnClickListe
li.inflate(R.layout.top_bar, top, true);
li.inflate(R.layout.bottom_bar, btm, true);
- replaceFonts(btm);
+ FontChanger.changeFonts(btm);
// replaceFont((TextView) top.findViewById(R.id.topbar_navmenu_changelang));
Spinner changeLangSpinner = ((Spinner) top.findViewById(R.id.topbar_navmenu_changelang));
@@ -107,7 +88,7 @@ public class MineActivity extends AppCompatActivity implements View.OnClickListe
}
li.inflate(resource, content, true);
- replaceFonts(content);
+ FontChanger.changeFonts(content);
}
@Override
@@ -119,7 +100,7 @@ public class MineActivity extends AppCompatActivity implements View.OnClickListe
content.addView(view);
if (view instanceof ViewGroup) {
- replaceFonts((ViewGroup) view);
+ FontChanger.changeFonts((ViewGroup) view);
}
}
diff --git a/app/src/main/java/net/kdt/pojavlaunch/FontChanger.java b/app/src/main/java/net/kdt/pojavlaunch/FontChanger.java
index 3d327c481..8b3f6815f 100644
--- a/app/src/main/java/net/kdt/pojavlaunch/FontChanger.java
+++ b/app/src/main/java/net/kdt/pojavlaunch/FontChanger.java
@@ -4,35 +4,31 @@ import android.content.res.*;
import android.graphics.*;
import android.view.*;
import android.widget.*;
+import android.content.*;
+import com.kdt.mcgui.*;
public class FontChanger
{
- private Typeface typeface;
-
- public FontChanger(Typeface typeface) {
- this.typeface = typeface;
- }
-
- public FontChanger(AssetManager assets, String assetsFontFileName) {
- typeface = Typeface.createFromAsset(assets, assetsFontFileName);
- }
-
- public ViewGroup replaceFonts(ViewGroup viewTree)
- {
- View child;
+ private static Typeface fNotoSans, fMinecraftTen;
+
+ public static void initFonts(Context ctx) {
+ fNotoSans = Typeface.createFromAsset(ctx.getAssets(), "font/NotoSans-Bold.ttf");
+ fMinecraftTen = Typeface.createFromAsset(ctx.getAssets(), "font/minecraft-ten.ttf");
+ }
+
+ public static void changeFonts(ViewGroup viewTree) {
+ View child;
for(int i = 0; i < viewTree.getChildCount(); ++i) {
child = viewTree.getChildAt(i);
if (child instanceof ViewGroup) {
- replaceFonts((ViewGroup) child);
+ changeFonts((ViewGroup) child);
} else if (child instanceof TextView) {
- replaceFont((TextView) child);
+ changeFont((TextView) child);
}
}
- return viewTree;
- }
+ }
- public View replaceFont(TextView view) {
- view.setTypeface(typeface);
- return view;
+ public static void changeFont(TextView view) {
+ view.setTypeface(view instanceof MineButton ? fMinecraftTen : fNotoSans);
}
}
diff --git a/app/src/main/java/net/kdt/pojavlaunch/PojavApplication.java b/app/src/main/java/net/kdt/pojavlaunch/PojavApplication.java
index 4c917590d..54484ae82 100644
--- a/app/src/main/java/net/kdt/pojavlaunch/PojavApplication.java
+++ b/app/src/main/java/net/kdt/pojavlaunch/PojavApplication.java
@@ -37,6 +37,8 @@ public class PojavApplication extends Application
specialButtons[2].name = getString(R.string.control_primary);
specialButtons[3].name = getString(R.string.control_secondary);
specialButtons[4].name = getString(R.string.control_mouse);
+
+ FontChanger.initFonts(this);
} catch (Throwable th) {
Intent ferrorIntent = new Intent(this, FatalErrorActivity.class);
ferrorIntent.putExtra("throwable", th);
diff --git a/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java b/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java
index 18f12b7b2..03c9ca1c2 100644
--- a/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java
+++ b/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java
@@ -133,7 +133,7 @@ public class PojavLoginActivity extends AppCompatActivity
LinearLayout startScr = new LinearLayout(PojavLoginActivity.this);
LayoutInflater.from(PojavLoginActivity.this).inflate(R.layout.start_screen, startScr);
- MineActivity.replaceFonts(PojavLoginActivity.this, startScr);
+ FontChanger.changeFonts(startScr);
progress = (ProgressBar) startScr.findViewById(R.id.startscreenProgress);
//startScr.addView(progress);
diff --git a/app/src/main/res/layout/launcher_login_v2.xml b/app/src/main/res/layout/launcher_login_v2.xml
index cd5ee75a2..f92bd3b09 100644
--- a/app/src/main/res/layout/launcher_login_v2.xml
+++ b/app/src/main/res/layout/launcher_login_v2.xml
@@ -49,20 +49,20 @@
android:inputType="textPassword"
android:layout_marginBottom="5dp"/>
-
-
-
+
Password
Forgot password?
Remember me?
+ Keep me logged in
Login
(Create new account?)
Offline account?
+ Login as offline account
Skip
Username must be at least 3 characters