diff options
5 files changed, 356 insertions, 6 deletions
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ThemePreviewActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ThemePreviewActivity.java index ed20127b..79f1a8b3 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ThemePreviewActivity.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ThemePreviewActivity.java @@ -33,6 +33,7 @@ import com.google.android.material.chip.Chip; import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.tabs.TabLayout; import com.r0adkll.slidr.Slidr; +import com.r0adkll.slidr.model.SlidrInterface; import java.util.ArrayList; @@ -115,6 +116,7 @@ public class ThemePreviewActivity extends AppCompatActivity { private int subscribedColor; private int systemVisibilityToolbarExpanded = 0; private int systemVisibilityToolbarCollapsed = 0; + private SlidrInterface mSlidrInterface; @Override protected void onCreate(Bundle savedInstanceState) { @@ -220,7 +222,7 @@ public class ThemePreviewActivity extends AppCompatActivity { applyCustomTheme(); if (mSharedPreferences.getBoolean(SharedPreferencesUtils.SWIPE_RIGHT_TO_GO_BACK_FROM_POST_DETAIL, true)) { - Slidr.attach(this); + mSlidrInterface = Slidr.attach(this); } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { @@ -307,6 +309,16 @@ public class ThemePreviewActivity extends AppCompatActivity { SectionsPagerAdapter sectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); viewPager.setAdapter(sectionsPagerAdapter); viewPager.setOffscreenPageLimit(2); + viewPager.addOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { + @Override + public void onPageSelected(int position) { + if (position == 0) { + unlockSwipeRightToGoBack(); + } else { + lockSwipeRightToGoBack(); + } + } + }); tabLayout.setupWithViewPager(viewPager); } @@ -393,6 +405,18 @@ public class ThemePreviewActivity extends AppCompatActivity { return false; } + private void lockSwipeRightToGoBack() { + if (mSlidrInterface != null) { + mSlidrInterface.lock(); + } + } + + private void unlockSwipeRightToGoBack() { + if (mSlidrInterface != null) { + mSlidrInterface.unlock(); + } + } + private class SectionsPagerAdapter extends FragmentPagerAdapter { private ThemePreviewPostsFragment themePreviewPostsFragment; private ThemePreviewCommentsFragment themePreviewCommentsFragment; diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Adapter/CommentAndPostRecyclerViewAdapter.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Adapter/CommentAndPostRecyclerViewAdapter.java index 9ffa7d11..1a02476c 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/Adapter/CommentAndPostRecyclerViewAdapter.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Adapter/CommentAndPostRecyclerViewAdapter.java @@ -3126,7 +3126,7 @@ public class CommentAndPostRecyclerViewAdapter extends RecyclerView.Adapter<Recy TextView scoreTextView; @BindView(R.id.time_text_view_item_comment_fully_collapsed) TextView commentTimeTextView; - @BindView(R.id.divider_item_load_comment_fully_collapsed) + @BindView(R.id.divider_item_comment_fully_collapsed) View commentDivider; public CommentFullyCollapsedViewHolder(@NonNull View itemView) { diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/ThemePreviewCommentsFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/ThemePreviewCommentsFragment.java index 4a194579..bab3db01 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/ThemePreviewCommentsFragment.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/ThemePreviewCommentsFragment.java @@ -10,7 +10,6 @@ import android.widget.LinearLayout; import android.widget.TextView; import androidx.annotation.NonNull; -import androidx.core.widget.NestedScrollView; import androidx.fragment.app.Fragment; import butterknife.BindView; @@ -54,6 +53,48 @@ public class ThemePreviewCommentsFragment extends Fragment { ImageView replyButton; @BindView(R.id.divider_theme_preview_comments_fragment) View divider; + + @BindView(R.id.linear_layout_award_background_theme_preview_comments_fragment) + LinearLayout linearLayoutAwardBackground; + @BindView(R.id.vertical_block_award_background_theme_preview_comments_fragment) + View verticalBlockAwardBackground; + @BindView(R.id.author_type_image_view_award_background_theme_preview_comments_fragment) + ImageView authorTypeImageViewAwardBackground; + @BindView(R.id.author_text_view_award_background_theme_preview_comments_fragment) + TextView authorTextViewAwardBackground; + @BindView(R.id.author_flair_text_view_award_background_theme_preview_comments_fragment) + TextView flairTextViewAwardBackground; + @BindView(R.id.comment_time_text_view_award_background_theme_preview_comments_fragment) + TextView commentTimeTextViewAwardBackground; + @BindView(R.id.comment_markdown_view_award_background_theme_preview_comments_fragment) + TextView contentTextViewAwardBackground; + @BindView(R.id.up_vote_button_award_background_theme_preview_comments_fragment) + ImageView upvoteButtonAwardBackground; + @BindView(R.id.score_text_view_award_background_theme_preview_comments_fragment) + TextView scoreTextViewAwardBackground; + @BindView(R.id.down_vote_button_award_background_theme_preview_comments_fragment) + ImageView downvoteButtonAwardBackground; + @BindView(R.id.more_button_award_background_theme_preview_comments_fragment) + ImageView moreButtonAwardBackground; + @BindView(R.id.expand_button_award_background_theme_preview_comments_fragment) + ImageView expandButtonAwardBackground; + @BindView(R.id.save_button_award_background_theme_preview_comments_fragment) + ImageView saveButtonAwardBackground; + @BindView(R.id.reply_button_award_background_theme_preview_comments_fragment) + ImageView replyButtonAwardBackground; + @BindView(R.id.divider_award_background_theme_preview_comments_fragment) + View dividerAwardBackground; + + @BindView(R.id.linear_layout_fully_collapsed_theme_preview_comments_fragment) + LinearLayout linearLayoutFullyCollapsed; + @BindView(R.id.vertical_block_fully_collapsed_theme_preview_comments_fragment) + View verticalBlockFullyCollapsed; + @BindView(R.id.user_name_text_view_fully_collapsed_theme_preview_comments_fragment) + TextView usernameTextView; + @BindView(R.id.score_text_view_fully_collapsed_theme_preview_comments_fragment) + TextView scoreTextViewFullyCollapsed; + @BindView(R.id.time_text_view_fully_collapsed_theme_preview_comments_fragment) + TextView timeTextViewFullyCollapsed; private ThemePreviewActivity activity; public ThemePreviewCommentsFragment() { @@ -82,6 +123,26 @@ public class ThemePreviewCommentsFragment extends Fragment { expandButton.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); saveButton.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); replyButton.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); + + linearLayoutAwardBackground.setBackgroundColor(customTheme.awardedCommentBackgroundColor); + authorTypeImageViewAwardBackground.setColorFilter(customTheme.moderator, android.graphics.PorterDuff.Mode.SRC_IN); + authorTextViewAwardBackground.setTextColor(customTheme.moderator); + commentTimeTextViewAwardBackground.setTextColor(customTheme.secondaryTextColor); + contentTextViewAwardBackground.setTextColor(customTheme.commentColor); + flairTextViewAwardBackground.setTextColor(customTheme.authorFlairTextColor); + dividerAwardBackground.setBackgroundColor(customTheme.dividerColor); + upvoteButtonAwardBackground.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); + scoreTextViewAwardBackground.setTextColor(customTheme.commentIconAndInfoColor); + downvoteButtonAwardBackground.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); + moreButtonAwardBackground.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); + expandButtonAwardBackground.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); + saveButtonAwardBackground.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); + replyButtonAwardBackground.setColorFilter(customTheme.commentIconAndInfoColor, android.graphics.PorterDuff.Mode.SRC_IN); + + linearLayoutFullyCollapsed.setBackgroundColor(customTheme.fullyCollapsedCommentBackgroundColor); + usernameTextView.setTextColor(customTheme.username); + scoreTextView.setTextColor(customTheme.secondaryTextColor); + timeTextViewFullyCollapsed.setTextColor(customTheme.secondaryTextColor); return rootView; } diff --git a/app/src/main/res/layout/fragment_theme_preview_comments.xml b/app/src/main/res/layout/fragment_theme_preview_comments.xml index 5fd566e7..a772b8ff 100644 --- a/app/src/main/res/layout/fragment_theme_preview_comments.xml +++ b/app/src/main/res/layout/fragment_theme_preview_comments.xml @@ -7,18 +7,18 @@ tools:context=".Fragment.ThemePreviewCommentsFragment"> <LinearLayout - android:id="@+id/linear_layout_theme_preview_comments_fragment" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout + android:id="@+id/linear_layout_theme_preview_comments_fragment" android:layout_width="match_parent" android:layout_height="wrap_content"> <View android:id="@+id/vertical_block_theme_preview_comments_fragment" - android:layout_width="4dp" + android:layout_width="0dp" android:layout_height="match_parent" /> <LinearLayout @@ -220,6 +220,271 @@ android:layout_width="match_parent" android:layout_height="1dp" /> + <LinearLayout + android:id="@+id/linear_layout_award_background_theme_preview_comments_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + + <View + android:id="@+id/vertical_block_award_background_theme_preview_comments_fragment" + android:layout_width="0dp" + android:layout_height="match_parent" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="12dp" + android:orientation="vertical"> + + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:paddingStart="16dp" + android:paddingEnd="16dp"> + + <ImageView + android:id="@+id/author_type_image_view_award_background_theme_preview_comments_fragment" + android:layout_width="?attr/font_default" + android:layout_height="?attr/font_default" + android:layout_marginEnd="4dp" + android:src="@drawable/ic_mic_14dp" + app:layout_constraintBottom_toTopOf="@id/author_flair_text_view_award_background_theme_preview_comments_fragment" + app:layout_constraintEnd_toStartOf="@id/author_text_view_award_background_theme_preview_comments_fragment" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + <TextView + android:id="@+id/author_text_view_award_background_theme_preview_comments_fragment" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_marginEnd="8dp" + android:ellipsize="end" + android:maxLines="2" + android:text="@string/username_preview" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" + app:layout_constraintBottom_toTopOf="@id/author_flair_text_view_award_background_theme_preview_comments_fragment" + app:layout_constraintEnd_toStartOf="@+id/comment_time_text_view_award_background_theme_preview_comments_fragment" + app:layout_constraintStart_toEndOf="@id/author_type_image_view_award_background_theme_preview_comments_fragment" + app:layout_constraintTop_toTopOf="parent" /> + + <TextView + android:id="@+id/author_flair_text_view_award_background_theme_preview_comments_fragment" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_marginEnd="8dp" + android:ellipsize="end" + android:maxLines="2" + android:text="@string/author_flair_preview" + android:textSize="?attr/font_12" + android:fontFamily="?attr/font_family" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toStartOf="@+id/comment_time_text_view_award_background_theme_preview_comments_fragment" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@id/author_text_view_award_background_theme_preview_comments_fragment" /> + + <TextView + android:id="@+id/comment_time_text_view_award_background_theme_preview_comments_fragment" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:gravity="end" + android:text="2 Hours" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + </androidx.constraintlayout.widget.ConstraintLayout> + + <TextView + android:id="@+id/comment_markdown_view_award_background_theme_preview_comments_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:layout_marginStart="16dp" + android:layout_marginEnd="16dp" + android:layout_marginBottom="8dp" + android:text="@string/comment_content_preview" + android:textSize="?attr/content_font_default" + android:fontFamily="?attr/content_font_family" /> + + <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/bottom_constraint_layout_award_background_theme_preview_comments_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:paddingBottom="12dp" + android:paddingStart="4dp" + android:paddingEnd="4dp"> + + <ImageView + android:id="@+id/up_vote_button_award_background_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:background="?actionBarItemBackground" + android:clickable="true" + android:focusable="true" + android:src="@drawable/ic_arrow_upward_grey_24dp" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" /> + + <TextView + android:id="@+id/score_text_view_award_background_theme_preview_comments_fragment" + android:layout_width="64dp" + android:layout_height="wrap_content" + android:gravity="center" + android:text="1234" + android:textSize="?attr/font_12" + android:textStyle="bold" + android:fontFamily="?attr/font_family" + app:layout_constraintStart_toEndOf="@+id/up_vote_button_award_background_theme_preview_comments_fragment" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent"/> + + <ImageView + android:id="@+id/down_vote_button_award_background_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:background="?actionBarItemBackground" + android:clickable="true" + android:focusable="true" + android:src="@drawable/ic_arrow_downward_grey_24dp" + android:tint="@android:color/tab_indicator_text" + app:layout_constraintStart_toEndOf="@+id/score_text_view_award_background_theme_preview_comments_fragment" + app:layout_constraintEnd_toStartOf="@id/more_button_award_background_theme_preview_comments_fragment" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintHorizontal_bias="0" /> + + <ImageView + android:id="@+id/more_button_award_background_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:background="?actionBarItemBackground" + android:clickable="true" + android:focusable="true" + android:src="@drawable/ic_more_vert_grey_24dp" + app:layout_constraintEnd_toStartOf="@+id/expand_button_award_background_theme_preview_comments_fragment" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent"/> + + <ImageView + android:id="@+id/expand_button_award_background_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:background="?actionBarItemBackground" + android:clickable="true" + android:focusable="true" + android:src="@drawable/ic_expand_less_grey_24dp" + android:tint="@android:color/tab_indicator_text" + app:layout_constraintEnd_toStartOf="@+id/save_button_award_background_theme_preview_comments_fragment" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent"/> + + <ImageView + android:id="@+id/save_button_award_background_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:background="?actionBarItemBackground" + android:clickable="true" + android:focusable="true" + android:src="@drawable/ic_bookmark_border_grey_24dp" + app:layout_constraintEnd_toStartOf="@+id/reply_button_award_background_theme_preview_comments_fragment" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent"/> + + <ImageView + android:id="@+id/reply_button_award_background_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:background="?actionBarItemBackground" + android:clickable="true" + android:focusable="true" + android:src="@drawable/ic_reply_grey_24dp" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent"/> + + </androidx.constraintlayout.widget.ConstraintLayout> + + </LinearLayout> + + </LinearLayout> + + <View + android:id="@+id/divider_award_background_theme_preview_comments_fragment" + android:layout_width="match_parent" + android:layout_height="1dp" /> + + <LinearLayout + android:id="@+id/linear_layout_fully_collapsed_theme_preview_comments_fragment" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + + <View + android:id="@+id/vertical_block_fully_collapsed_theme_preview_comments_fragment" + android:layout_width="0dp" + android:layout_height="match_parent" /> + + <TextView + android:id="@+id/user_name_text_view_fully_collapsed_theme_preview_comments_fragment" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:paddingTop="12dp" + android:paddingBottom="12dp" + android:paddingStart="16dp" + android:paddingEnd="8dp" + android:text="u/Hostilenemy" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" /> + + <TextView + android:id="@+id/score_text_view_fully_collapsed_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingTop="12dp" + android:paddingBottom="12dp" + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:text="1234 pts" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" /> + + <TextView + android:id="@+id/time_text_view_fully_collapsed_theme_preview_comments_fragment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="end" + android:paddingTop="12dp" + android:paddingBottom="12dp" + android:paddingStart="8dp" + android:paddingEnd="16dp" + android:text="2 Hours" + android:textSize="?attr/font_default" + android:fontFamily="?attr/font_family" /> + + </LinearLayout> + + <View + android:id="@+id/divider_fully_collapsed_theme_preview_comments_fragment" + android:layout_width="match_parent" + android:layout_height="1dp" + android:visibility="gone" /> + </LinearLayout> </androidx.core.widget.NestedScrollView>
\ No newline at end of file diff --git a/app/src/main/res/layout/item_comment_fully_collapsed.xml b/app/src/main/res/layout/item_comment_fully_collapsed.xml index d6e5110c..f572c49f 100644 --- a/app/src/main/res/layout/item_comment_fully_collapsed.xml +++ b/app/src/main/res/layout/item_comment_fully_collapsed.xml @@ -51,7 +51,7 @@ </LinearLayout> <View - android:id="@+id/divider_item_load_comment_fully_collapsed" + android:id="@+id/divider_item_comment_fully_collapsed" android:layout_width="match_parent" android:layout_height="1dp" android:visibility="gone" /> |