This commit is contained in:
rebelonion 2024-05-03 09:31:15 -05:00
commit 126fe75c46
8 changed files with 105 additions and 35 deletions

View file

@ -232,9 +232,9 @@ class HomeFragment : Fragment() {
LinearLayoutManager.HORIZONTAL, LinearLayoutManager.HORIZONTAL,
false false
) )
more.setOnClickListener { _ -> more.setOnClickListener { i ->
ContextCompat.startActivity( ContextCompat.startActivity(
requireActivity(), Intent(requireActivity(), MediaListViewActivity::class.java) i.context, Intent(i.context, MediaListViewActivity::class.java)
.putExtra("title", string) .putExtra("title", string)
.putExtra("media", it), .putExtra("media", it),
null null

View file

@ -221,7 +221,6 @@ class MangaPageAdapter : RecyclerView.Adapter<MangaPageAdapter.MangaPageViewHold
media media
) )
} }
} }
fun updateTopRated(adaptor: MediaAdaptor, media: MutableList<Media>) { fun updateTopRated(adaptor: MediaAdaptor, media: MutableList<Media>) {
@ -254,7 +253,15 @@ class MangaPageAdapter : RecyclerView.Adapter<MangaPageAdapter.MangaPageViewHold
} }
} }
fun init(adaptor: MediaAdaptor, recyclerView: RecyclerView, progress: View, title: View , more: View , string: String, media : MutableList<Media>) { fun init(
adaptor: MediaAdaptor,
recyclerView: RecyclerView,
progress: View,
title: View ,
more: View ,
string: String,
media : MutableList<Media>
) {
progress.visibility = View.GONE progress.visibility = View.GONE
recyclerView.adapter = adaptor recyclerView.adapter = adaptor
recyclerView.layoutManager = recyclerView.layoutManager =

View file

@ -1,6 +1,7 @@
package ani.dantotsu.media package ani.dantotsu.media
import android.os.Bundle import android.os.Bundle
import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.view.Window import android.view.Window
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
@ -52,11 +53,36 @@ class MediaListViewActivity: AppCompatActivity() {
binding.listTitle.setTextColor(primaryTextColor) binding.listTitle.setTextColor(primaryTextColor)
val screenWidth = resources.displayMetrics.run { widthPixels / density } val screenWidth = resources.displayMetrics.run { widthPixels / density }
val mediaList = intent.getSerialized("media") as? ArrayList<Media> ?: ArrayList() val mediaList = intent.getSerialized("media") as? ArrayList<Media> ?: ArrayList()
binding.listTitle.text = intent.getStringExtra("title") val view = PrefManager.getCustomVal("mediaView", 0)
binding.mediaRecyclerView.adapter = MediaAdaptor(0, mediaList, this) var mediaView: View = when (view) {
1 -> binding.mediaList
0 -> binding.mediaGrid
else -> binding.mediaGrid
}
mediaView.alpha = 1f
fun changeView(mode: Int, current: View) {
mediaView.alpha = 0.33f
mediaView = current
current.alpha = 1f
PrefManager.setCustomVal("mediaView", mode)
binding.mediaRecyclerView.adapter = MediaAdaptor(mode, mediaList, this)
binding.mediaRecyclerView.layoutManager = GridLayoutManager( binding.mediaRecyclerView.layoutManager = GridLayoutManager(
this, this,
(screenWidth / 120f).toInt() if (mode == 1) 1 else (screenWidth / 120f).toInt()
)
}
binding.mediaList.setOnClickListener {
changeView(1, binding.mediaList)
}
binding.mediaGrid.setOnClickListener {
changeView(0, binding.mediaGrid)
}
binding.listTitle.text = intent.getStringExtra("title")
binding.mediaRecyclerView.adapter = MediaAdaptor(view, mediaList, this)
binding.mediaRecyclerView.layoutManager = GridLayoutManager(
this,
if (view == 1) 1 else (screenWidth / 120f).toInt()
) )
} }
} }

View file

@ -3,34 +3,45 @@ package ani.dantotsu.others
import android.content.Intent import android.content.Intent
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
import android.widget.Button import android.view.ViewGroup
import android.widget.EditText
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.FileProvider import androidx.core.content.FileProvider
import androidx.core.view.updateLayoutParams
import ani.dantotsu.R import ani.dantotsu.R
import ani.dantotsu.databinding.ActivityCrashBinding
import ani.dantotsu.initActivity
import ani.dantotsu.navBarHeight
import ani.dantotsu.statusBarHeight
import ani.dantotsu.themes.ThemeManager
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
import java.io.File import java.io.File
class CrashActivity : AppCompatActivity() { class CrashActivity : AppCompatActivity() {
private lateinit var binding: ActivityCrashBinding
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
setContentView(R.layout.activity_crash) ThemeManager(this).applyTheme()
initActivity(this)
binding = ActivityCrashBinding.inflate(layoutInflater)
setContentView(binding.root)
binding.root.updateLayoutParams<ViewGroup.MarginLayoutParams> {
topMargin = statusBarHeight
bottomMargin = navBarHeight
}
val stackTrace = intent.getStringExtra("stackTrace") ?: "No stack trace available" val stackTrace = intent.getStringExtra("stackTrace") ?: "No stack trace available"
val reportView = findViewById<EditText>(R.id.crashReportView)
reportView.setText(stackTrace) binding.crashReportView.setText(stackTrace)
reportView.setOnKeyListener(View.OnKeyListener { _, _, _ -> binding.crashReportView.setOnKeyListener(View.OnKeyListener { _, _, _ ->
true // Blocks input from hardware keyboards. true // Blocks input from hardware keyboards.
}) })
val copyButton = findViewById<Button>(R.id.copyButton) binding.copyButton.setOnClickListener {
copyButton.setOnClickListener {
copyToClipboard("Crash log", stackTrace) copyToClipboard("Crash log", stackTrace)
} }
val shareAsTextFileButton = findViewById<Button>(R.id.shareAsTextFileButton) binding.shareAsTextFileButton.setOnClickListener {
shareAsTextFileButton.setOnClickListener {
shareAsTextFile(stackTrace) shareAsTextFile(stackTrace)
} }
} }

View file

@ -27,17 +27,18 @@
android:textSize="64sp" /> android:textSize="64sp" />
<TextView <TextView
android:layout_width="200dp" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:text="@string/app_died" android:text="@string/app_died"
android:textAlignment="center" android:textAlignment="center"
android:textColor="?attr/colorPrimary" android:textColor="?attr/colorPrimary"
android:textSize="32sp" /> android:textSize="24sp" />
<TextView <TextView
android:layout_width="200dp" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginHorizontal="32dp"
android:fontFamily="@font/poppins" android:fontFamily="@font/poppins"
android:text="@string/an_unexpected_error_occurred" android:text="@string/an_unexpected_error_occurred"
android:textAlignment="center" android:textAlignment="center"
@ -55,7 +56,8 @@
android:padding="16dp" android:padding="16dp"
android:textColor="?attr/colorOnBackground" android:textColor="?attr/colorOnBackground"
android:textIsSelectable="true" android:textIsSelectable="true"
android:textSize="12sp" /> android:textSize="12sp"
tools:ignore="LabelFor" />
</LinearLayout> </LinearLayout>
@ -66,7 +68,7 @@
android:orientation="horizontal" android:orientation="horizontal"
android:layout_gravity="bottom|center_horizontal" android:layout_gravity="bottom|center_horizontal"
android:gravity="center_horizontal" android:gravity="center_horizontal"
android:layout_marginBottom="48dp" android:layout_marginBottom="24dp"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"> app:layout_constraintStart_toStartOf="parent">

View file

@ -2,7 +2,8 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" <androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">
<androidx.core.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
@ -18,13 +19,14 @@
android:id="@+id/settingsContainer" android:id="@+id/settingsContainer"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical"> android:orientation="horizontal">
<TextView <TextView
android:id="@+id/listTitle" android:id="@+id/listTitle"
android:layout_width="wrap_content" android:layout_width="0dp"
android:layout_height="48dp" android:layout_height="48dp"
android:layout_marginStart="32dp" android:layout_marginStart="24dp"
android:layout_weight="1"
android:ellipsize="end" android:ellipsize="end"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:gravity="center|start" android:gravity="center|start"
@ -34,6 +36,28 @@
android:textSize="16sp" android:textSize="16sp"
tools:text="@string/app_name" /> tools:text="@string/app_name" />
<ImageView
android:id="@+id/mediaList"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:alpha="0.33"
android:padding="8dp"
app:srcCompat="@drawable/ic_round_view_list_24"
app:tint="?attr/colorOnBackground"
tools:ignore="ContentDescription,ImageContrastCheck" />
<ImageView
android:id="@+id/mediaGrid"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="end"
android:alpha="0.33"
android:padding="8dp"
android:layout_marginEnd="24dp"
app:srcCompat="@drawable/ic_round_grid_view_24"
app:tint="?attr/colorOnBackground"
tools:ignore="ContentDescription,ImageContrastCheck" />
</LinearLayout> </LinearLayout>

View file

@ -207,12 +207,12 @@
android:id="@+id/animeRecentlyMore" android:id="@+id/animeRecentlyMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"
android:textSize="16sp" android:textSize="16sp"
android:visibility="invisible" android:visibility="gone"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
</LinearLayout> </LinearLayout>
@ -270,7 +270,7 @@
android:id="@+id/animeMoviesMore" android:id="@+id/animeMoviesMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"
@ -331,7 +331,7 @@
android:id="@+id/animeTopRatedMore" android:id="@+id/animeTopRatedMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"
@ -391,7 +391,7 @@
android:id="@+id/animeMostFavMore" android:id="@+id/animeMostFavMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"

View file

@ -148,7 +148,7 @@
android:id="@+id/mangaTrendingMangaMore" android:id="@+id/mangaTrendingMangaMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"
@ -208,7 +208,7 @@
android:id="@+id/mangaTrendingManhwaMore" android:id="@+id/mangaTrendingManhwaMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"
@ -267,7 +267,7 @@
android:id="@+id/mangaNovelMore" android:id="@+id/mangaNovelMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"
@ -326,7 +326,7 @@
android:id="@+id/mangaTopRatedMore" android:id="@+id/mangaTopRatedMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"
@ -383,7 +383,7 @@
android:id="@+id/mangaMostFavMore" android:id="@+id/mangaMostFavMore"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginEnd="24dp" android:layout_marginEnd="12dp"
android:fontFamily="@font/poppins_bold" android:fontFamily="@font/poppins_bold"
android:padding="8dp" android:padding="8dp"
android:src="@drawable/arrow_mark" android:src="@drawable/arrow_mark"