diff --git a/app/src/main/java/fr/free/nrw/commons/AboutActivity.java b/app/src/main/java/fr/free/nrw/commons/AboutActivity.java
index 91c634a2d1..b0ec53178f 100644
--- a/app/src/main/java/fr/free/nrw/commons/AboutActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/AboutActivity.java
@@ -33,7 +33,10 @@ public class AboutActivity extends NavigationBaseActivity {
@BindView(R.id.about_license) HtmlTextView aboutLicenseText;
@BindView(R.id.about_faq) TextView faqText;
@BindView(R.id.about_improve) HtmlTextView improve;
-
+ @BindView(R.id.about_rate_us) TextView rateUsText;
+ @BindView(R.id.about_privacy_policy) TextView privacyPolicyText;
+ @BindView(R.id.about_translate) TextView translateText;
+ @BindView(R.id.about_credits) TextView creditsText;
/**
* This method helps in the creation About screen
*
@@ -54,22 +57,13 @@ public void onCreate(Bundle savedInstanceState) {
String improveText = String.format(getString(R.string.about_improve), Urls.NEW_ISSUE_URL);
improve.setHtmlText(improveText);
- SpannableString content = new SpannableString(getString(R.string.about_faq));
- content.setSpan(new UnderlineSpan(), 0, content.length(), 0);
- faqText.setText(content);
-
versionText.setText(ConfigUtils.getVersionNameWithSha(getApplicationContext()));
- TextView rate_us = findViewById(R.id.about_rate_us);
- TextView privacy_policy = findViewById(R.id.about_privacy_policy);
- TextView translate = findViewById(R.id.about_translate);
- TextView credits = findViewById(R.id.about_credits);
- TextView faq = findViewById(R.id.about_faq);
- rate_us.setText(StringUtil.fromHtml(getString(R.string.about_rate_us)));
- privacy_policy.setText(StringUtil.fromHtml(getString(R.string.about_privacy_policy)));
- translate.setText(StringUtil.fromHtml(getString(R.string.about_translate)));
- credits.setText(StringUtil.fromHtml(getString(R.string.about_credits)));
- faq.setText(StringUtil.fromHtml(getString(R.string.about_faq)));
+ Utils.setUnderlinedText(faqText, R.string.about_faq, getApplicationContext());
+ Utils.setUnderlinedText(rateUsText, R.string.about_rate_us, getApplicationContext());
+ Utils.setUnderlinedText(privacyPolicyText, R.string.about_privacy_policy, getApplicationContext());
+ Utils.setUnderlinedText(translateText, R.string.about_translate, getApplicationContext());
+ Utils.setUnderlinedText(creditsText, R.string.about_credits, getApplicationContext());
initDrawer();
}
diff --git a/app/src/main/java/fr/free/nrw/commons/Utils.java b/app/src/main/java/fr/free/nrw/commons/Utils.java
index d47075932f..40d880cd3a 100644
--- a/app/src/main/java/fr/free/nrw/commons/Utils.java
+++ b/app/src/main/java/fr/free/nrw/commons/Utils.java
@@ -6,7 +6,10 @@
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
+import android.text.SpannableString;
+import android.text.style.UnderlineSpan;
import android.view.View;
+import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
@@ -185,4 +188,17 @@ public static void copy(String label,String text, Context context){
clipboard.setPrimaryClip(clip);
}
+ /**
+ * This method sets underlined string text to a TextView
+ *
+ * @param textView TextView associated with string resource
+ * @param stringResourceName string resource name
+ * @param context
+ */
+ public static void setUnderlinedText(TextView textView, int stringResourceName, Context context) {
+ SpannableString content = new SpannableString(context.getString(stringResourceName));
+ content.setSpan(new UnderlineSpan(), 0, content.length(), 0);
+ textView.setText(content);
+ }
+
}
diff --git a/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java b/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java
index e1b266b375..7017c028b8 100644
--- a/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java
+++ b/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java
@@ -47,7 +47,7 @@ public Object instantiateItem(ViewGroup container, int position) {
if (position == PAGE_LAYOUTS.length - 1) {
// Add link to more information
TextView moreInfo = layout.findViewById(R.id.welcomeInfo);
- moreInfo.setText(Html.fromHtml(container.getContext().getString(R.string.welcome_help_button_text)));
+ Utils.setUnderlinedText(moreInfo, R.string.welcome_help_button_text, container.getContext());
moreInfo.setOnClickListener(view -> Utils.handleWebUrl(
container.getContext(),
Uri.parse("https://commons.wikimedia.org/wiki/Help:Contents")
diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java
index 5ccf4c2aa8..d25d5f7a0d 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java
@@ -186,7 +186,7 @@ && getParentFragment() instanceof MediaDetailPagerFragment) {
final View view = inflater.inflate(R.layout.fragment_media_detail, container, false);
ButterKnife.bind(this,view);
- seeMore.setText(StringUtil.fromHtml(getString(R.string.nominated_see_more)));
+ Utils.setUnderlinedText(seeMore, R.string.nominated_see_more, container.getContext());
if (isCategoryImage){
authorLayout.setVisibility(VISIBLE);
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 91da58346b..00364eaaf1 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -93,8 +93,8 @@
The Wikimedia Commons app is an open-source app created and maintained by grantees and volunteers of the Wikimedia community. The Wikimedia Foundation is not involved in the creation, development, or maintenance of the app.
Wikimedia Commons
Create a new <a href=\"%1$s\">GitHub issue</a> for bug reports and suggestions.
- Privacy policy]]>
- Credits]]>
+ Privacy policy
+ Credits
About
Send Feedback (via Email)
No email client installed
@@ -155,7 +155,7 @@
Avoid copyrighted materials you found from the Internet as well as images of posters, book covers, etc.
You think you got it?
Yes!
- More Information]]>
+ More Information
Categories
Loading…
None selected
@@ -264,7 +264,7 @@
Error! URL not found
Nominate for Deletion
This image has been nominated for deletion.
- See webpage for details]]>
+ See webpage for details
Nominating %1$s for deletion.
Nominating file for deletion: %1$s
View in Browser
@@ -291,8 +291,8 @@
Wikidata
Wikipedia
Commons
- Rate us]]>
- FAQ]]>
+ Rate us
+ FAQ
Skip Tutorial
Internet unavailable
Internet available
@@ -300,7 +300,7 @@
Error fetching image for review. Press refresh to try again.
Error fetching image categories for review. Press refresh to try again.
No notifications found
- Translate]]>
+ Translate
Languages
Select the language that you would like to submit translations for
Proceed