From 324f62f3ca7bf4c7fe3091ff80557ee3bae2e510 Mon Sep 17 00:00:00 2001 From: Mathias-Boulay Date: Fri, 19 May 2023 22:08:11 +0200 Subject: [PATCH] Style[progresbar]: internal text padding --- .../src/main/java/com/kdt/mcgui/ProgressLayout.java | 1 + .../src/main/java/com/kdt/mcgui/TextProgressBar.java | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app_pojavlauncher/src/main/java/com/kdt/mcgui/ProgressLayout.java b/app_pojavlauncher/src/main/java/com/kdt/mcgui/ProgressLayout.java index f19856a71..089fa17d8 100644 --- a/app_pojavlauncher/src/main/java/com/kdt/mcgui/ProgressLayout.java +++ b/app_pojavlauncher/src/main/java/com/kdt/mcgui/ProgressLayout.java @@ -132,6 +132,7 @@ public class ProgressLayout extends ConstraintLayout implements View.OnClickList public LayoutProgressListener(String progressKey) { this.progressKey = progressKey; textView = new TextProgressBar(getContext()); + textView.setTextPadding(getContext().getResources().getDimensionPixelOffset(R.dimen._6sdp)); params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, getResources().getDimensionPixelOffset(R.dimen._20sdp)); params.bottomMargin = getResources().getDimensionPixelOffset(R.dimen._6sdp); ProgressKeeper.addListener(progressKey, this); diff --git a/app_pojavlauncher/src/main/java/com/kdt/mcgui/TextProgressBar.java b/app_pojavlauncher/src/main/java/com/kdt/mcgui/TextProgressBar.java index ea769b50b..5273c6c3b 100644 --- a/app_pojavlauncher/src/main/java/com/kdt/mcgui/TextProgressBar.java +++ b/app_pojavlauncher/src/main/java/com/kdt/mcgui/TextProgressBar.java @@ -16,6 +16,8 @@ import androidx.core.content.res.ResourcesCompat; import net.kdt.pojavlaunch.R; public class TextProgressBar extends ProgressBar { + + private int mTextPadding = 0; public TextProgressBar(Context context) {super(context, null, android.R.attr.progressBarStyleHorizontal); init();} public TextProgressBar(Context context, AttributeSet attrs) {super(context, attrs, android.R.attr.progressBarStyleHorizontal); init();} @@ -44,7 +46,7 @@ public class TextProgressBar extends ProgressBar { protected synchronized void onDraw(Canvas canvas) { super.onDraw(canvas); mTextPaint.setTextSize((float) ((getHeight()- getPaddingBottom() - getPaddingTop()) * 0.55)); - int xPos = (int) Math.min(getProgress() * getWidth() / getMax(), getWidth() - mTextPaint.measureText(mText)); + int xPos = (int) Math.max(Math.min(getProgress() * getWidth() / getMax(), getWidth() - mTextPaint.measureText(mText)) - mTextPadding, mTextPadding); int yPos = (int) ((getHeight() / 2) - ((mTextPaint.descent() + mTextPaint.ascent()) / 2)) ; canvas.drawText(mText, xPos, yPos, mTextPaint); @@ -59,4 +61,8 @@ public class TextProgressBar extends ProgressBar { mText = text; invalidate(); } + + public final void setTextPadding(int padding){ + mTextPadding = padding; + } }