diff --git a/app/src/main/java/ani/dantotsu/media/MediaAdaptor.kt b/app/src/main/java/ani/dantotsu/media/MediaAdaptor.kt index 509b40a7..50cd88dc 100644 --- a/app/src/main/java/ani/dantotsu/media/MediaAdaptor.kt +++ b/app/src/main/java/ani/dantotsu/media/MediaAdaptor.kt @@ -300,6 +300,19 @@ class MediaAdaptor( return type } + fun randomOptionClick() { //used for user list + val media = mediaList?.random() + if (media != null) { + mediaList?.let { + clicked( + it.indexOf(media), + null + ) + } + } + + } + inner class MediaViewHolder(val binding: ItemMediaCompactBinding) : RecyclerView.ViewHolder(binding.root) { init { diff --git a/app/src/main/java/ani/dantotsu/media/user/ListActivity.kt b/app/src/main/java/ani/dantotsu/media/user/ListActivity.kt index 047efc05..ada753a4 100644 --- a/app/src/main/java/ani/dantotsu/media/user/ListActivity.kt +++ b/app/src/main/java/ani/dantotsu/media/user/ListActivity.kt @@ -162,5 +162,15 @@ class ListActivity : AppCompatActivity() { popup.inflate(R.menu.list_sort_menu) popup.show() } + + binding.random.setOnClickListener { + //get the current tab + val currentTab = + binding.listTabLayout.getTabAt(binding.listTabLayout.selectedTabPosition) + val currentViewePager = binding.listViewPager.getChildAt(0) + val currentFragment = + supportFragmentManager.findFragmentByTag("f" + currentTab?.position.toString()) as? ListFragment + currentFragment?.randomOptionClick() + } } } diff --git a/app/src/main/java/ani/dantotsu/media/user/ListFragment.kt b/app/src/main/java/ani/dantotsu/media/user/ListFragment.kt index 8053996a..3eccf001 100644 --- a/app/src/main/java/ani/dantotsu/media/user/ListFragment.kt +++ b/app/src/main/java/ani/dantotsu/media/user/ListFragment.kt @@ -76,6 +76,11 @@ class ListFragment : Fragment() { } } + fun randomOptionClick() { + val adapter = binding.listRecyclerView.adapter as MediaAdaptor + adapter.randomOptionClick() + } + companion object { fun newInstance(pos: Int, calendar: Boolean = false): ListFragment = ListFragment().apply { diff --git a/app/src/main/res/drawable/ic_shuffle_24.xml b/app/src/main/res/drawable/ic_shuffle_24.xml new file mode 100644 index 00000000..2bd11b20 --- /dev/null +++ b/app/src/main/res/drawable/ic_shuffle_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/layout/activity_list.xml b/app/src/main/res/layout/activity_list.xml index d3e59eef..d75f2f77 100644 --- a/app/src/main/res/layout/activity_list.xml +++ b/app/src/main/res/layout/activity_list.xml @@ -44,12 +44,21 @@ android:layout_height="wrap_content" android:layout_weight="1" /> + + Available Anime Installed Manga Color Picker + Random Selection