diff options
author | Docile-Alligator <chineseperson5@gmail.com> | 2022-04-10 14:50:35 +0000 |
---|---|---|
committer | Docile-Alligator <chineseperson5@gmail.com> | 2022-04-10 14:50:35 +0000 |
commit | 3283541c9a254177bb712a125ed8c631ced4b7bc (patch) | |
tree | b3b76f9857dfbf4e2ebcbaaf3355a1342afa4ec2 /app | |
parent | ee9249cb64ecec968511f9050b30586be13bcf4c (diff) | |
download | infinity-for-reddit-3283541c9a254177bb712a125ed8c631ced4b7bc.tar infinity-for-reddit-3283541c9a254177bb712a125ed8c631ced4b7bc.tar.gz infinity-for-reddit-3283541c9a254177bb712a125ed8c631ced4b7bc.tar.bz2 infinity-for-reddit-3283541c9a254177bb712a125ed8c631ced4b7bc.tar.lz infinity-for-reddit-3283541c9a254177bb712a125ed8c631ced4b7bc.tar.xz infinity-for-reddit-3283541c9a254177bb712a125ed8c631ced4b7bc.tar.zst infinity-for-reddit-3283541c9a254177bb712a125ed8c631ced4b7bc.zip |
Show post karma, comment karma, awarder karma and awardee karma in ViewUserDetailActivity by clicking the karma info text.
Diffstat (limited to '')
5 files changed, 186 insertions, 2 deletions
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewUserDetailActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewUserDetailActivity.java index 977bf742..d2b636c2 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewUserDetailActivity.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewUserDetailActivity.java @@ -99,6 +99,7 @@ import ml.docilealligator.infinityforreddit.asynctasks.CheckIsFollowingUser; import ml.docilealligator.infinityforreddit.asynctasks.SwitchAccount; import ml.docilealligator.infinityforreddit.bottomsheetfragments.CopyTextBottomSheetFragment; import ml.docilealligator.infinityforreddit.bottomsheetfragments.FABMoreOptionsBottomSheetFragment; +import ml.docilealligator.infinityforreddit.bottomsheetfragments.KarmaInfoBottomSheetFragment; import ml.docilealligator.infinityforreddit.bottomsheetfragments.PostLayoutBottomSheetFragment; import ml.docilealligator.infinityforreddit.bottomsheetfragments.PostTypeBottomSheetFragment; import ml.docilealligator.infinityforreddit.bottomsheetfragments.RandomBottomSheetFragment; @@ -599,6 +600,16 @@ public class ViewUserDetailActivity extends BaseActivity implements SortTypeSele userThingSortTypeBottomSheetFragment = new UserThingSortTypeBottomSheetFragment(); sortTimeBottomSheetFragment = new SortTimeBottomSheetFragment(); postLayoutBottomSheetFragment = new PostLayoutBottomSheetFragment(); + + karmaTextView.setOnClickListener(view -> { + UserData userData = userViewModel.getUserLiveData().getValue(); + if (userData != null) { + KarmaInfoBottomSheetFragment karmaInfoBottomSheetFragment = KarmaInfoBottomSheetFragment.newInstance( + userData.getLinkKarma(), userData.getCommentKarma(), userData.getAwarderKarma(), userData.getAwardeeKarma() + ); + karmaInfoBottomSheetFragment.show(getSupportFragmentManager(), karmaInfoBottomSheetFragment.getTag()); + } + }); } @Override diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/KarmaInfoBottomSheetFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/KarmaInfoBottomSheetFragment.java new file mode 100644 index 00000000..c0dbbb10 --- /dev/null +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/KarmaInfoBottomSheetFragment.java @@ -0,0 +1,63 @@ +package ml.docilealligator.infinityforreddit.bottomsheetfragments; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +import com.deishelon.roundedbottomsheet.RoundedBottomSheetDialogFragment; + +import ml.docilealligator.infinityforreddit.R; + +public class KarmaInfoBottomSheetFragment extends RoundedBottomSheetDialogFragment { + public static final String EXTRA_POST_KARMA = "EPK"; + public static final String EXTRA_COMMENT_KARMA = "ECK"; + public static final String EXTRA_AWARDER_KARMA = "EARK"; + public static final String EXTRA_AWARDEE_KARMA = "EAEK"; + + private int postKarma; + private int commentKarma; + private int awarderKarma; + private int awardeeKarma; + + public KarmaInfoBottomSheetFragment() { + // Required empty public constructor + } + + + public static KarmaInfoBottomSheetFragment newInstance(int postKarma, int commentKarma, int awarderKarma, int awardeeKarma) { + KarmaInfoBottomSheetFragment fragment = new KarmaInfoBottomSheetFragment(); + Bundle args = new Bundle(); + args.putInt(EXTRA_POST_KARMA, postKarma); + args.putInt(EXTRA_COMMENT_KARMA, commentKarma); + args.putInt(EXTRA_AWARDER_KARMA, awarderKarma); + args.putInt(EXTRA_AWARDEE_KARMA, awardeeKarma); + fragment.setArguments(args); + return fragment; + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + // Inflate the layout for this fragment + View rootView = inflater.inflate(R.layout.fragment_karma_info_bottom_sheet, container, false); + + postKarma = getArguments().getInt(EXTRA_POST_KARMA, 0); + commentKarma = getArguments().getInt(EXTRA_COMMENT_KARMA, 0); + awarderKarma = getArguments().getInt(EXTRA_AWARDER_KARMA, 0); + awardeeKarma = getArguments().getInt(EXTRA_AWARDEE_KARMA, 0); + + TextView postKarmaTextView = rootView.findViewById(R.id.post_karma_karma_info_bottom_sheet_fragment); + TextView commentKarmaTextView = rootView.findViewById(R.id.comment_karma_karma_info_bottom_sheet_fragment); + TextView awarderKarmaTextView = rootView.findViewById(R.id.awarder_karma_karma_info_bottom_sheet_fragment); + TextView awardeeKarmaTextView = rootView.findViewById(R.id.awardee_karma_karma_info_bottom_sheet_fragment); + + postKarmaTextView.setText(Integer.toString(postKarma)); + commentKarmaTextView.setText(Integer.toString(commentKarma)); + awarderKarmaTextView.setText(Integer.toString(awarderKarma)); + awardeeKarmaTextView.setText(Integer.toString(awardeeKarma)); + + return rootView; + } +}
\ No newline at end of file diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/user/UserData.java b/app/src/main/java/ml/docilealligator/infinityforreddit/user/UserData.java index 4512ca86..9f0d0075 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/user/UserData.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/user/UserData.java @@ -52,7 +52,7 @@ public class UserData { this.commentKarma = commentKarma; this.linkKarma = linkKarma; this.awarderKarma = awarderKarma; - this.awarderKarma = awardeeKarma; + this.awardeeKarma = awardeeKarma; this.totalKarma = totalKarma; this.cakeday = cakeday; this.isGold = isGold; diff --git a/app/src/main/res/layout/fragment_karma_info_bottom_sheet.xml b/app/src/main/res/layout/fragment_karma_info_bottom_sheet.xml new file mode 100644 index 00000000..2e3f5871 --- /dev/null +++ b/app/src/main/res/layout/fragment_karma_info_bottom_sheet.xml @@ -0,0 +1,105 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical" + tools:context=".bottomsheetfragments.KarmaInfoBottomSheetFragment"> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingTop="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:text="@string/post_karma" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" /> + + <TextView + android:id="@+id/post_karma_karma_info_bottom_sheet_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingBottom="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_20" + android:fontFamily="?attr/font_family" /> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingTop="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:text="@string/comment_karma" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" /> + + <TextView + android:id="@+id/comment_karma_karma_info_bottom_sheet_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingBottom="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_20" + android:fontFamily="?attr/font_family" /> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingTop="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:text="@string/awarder_karma" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" /> + + <TextView + android:id="@+id/awarder_karma_karma_info_bottom_sheet_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingBottom="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_20" + android:fontFamily="?attr/font_family" /> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingTop="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:text="@string/awardee_karma" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" /> + + <TextView + android:id="@+id/awardee_karma_karma_info_bottom_sheet_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:paddingBottom="16dp" + android:paddingStart="32dp" + android:paddingEnd="32dp" + android:textColor="?attr/primaryTextColor" + android:textSize="?attr/font_20" + android:fontFamily="?attr/font_family" /> + +</LinearLayout>
\ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ef3a4ede..9bbe06c9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1277,7 +1277,7 @@ <string name="user_agreement_message">You need to agree to Reddit User Agreement (%1$s) and Infinity for Reddit\'s Privacy Policy (%2$s) before logging in.</string> <string name="agree">Agree</string> <string name="do_not_agree">Don\'t Agree</string> - + <string name="option_1_hint">Option 1 (Required)</string> <string name="option_2_hint">Option 2 (Required)</string> <string name="option_3_hint">Option 3</string> @@ -1287,4 +1287,9 @@ <string name="not_a_valid_number">Not a valid number</string> + <string name="post_karma">Post Karma:</string> + <string name="comment_karma">Comment Karma:</string> + <string name="awarder_karma">Awarder Karma:</string> + <string name="awardee_karma">Awardee Karma:</string> + </resources> |