diff --git a/.idea/misc.xml b/.idea/misc.xml
index b1ebb825..474d48eb 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -133,7 +133,7 @@
diff --git a/app/build.gradle b/app/build.gradle
index 454182a7..61ed0475 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -72,9 +72,8 @@ android {
signingConfig signingConfigs.debug
}
- benchmark {
+ dev {
initWith buildTypes.release
- proguardFiles 'baseline-profiles-rules.pro'
}
debug {
@@ -169,4 +168,7 @@ dependencies {
implementation "com.squareup.okhttp3:logging-interceptor:4.7.2"
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.4.1"
+
+
+
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 8e435fba..25fb8dc4 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -32,9 +32,6 @@
-
-
@@ -47,6 +44,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
(R.id.newest)
- val oldest = sortSheet!!.findViewById(R.id.oldest)
+ val newest = sortSheet!!.findViewById(R.id.date)
+ val oldest = sortSheet!!.findViewById(R.id.title)
newest!!.setOnClickListener {
historyViewModel.setSorting(HistorySort.DESC)
sortSheet!!.cancel()
@@ -245,7 +245,7 @@ class HistoryFragment : Fragment(), HistoryAdapter.OnItemClickListener{
historyViewModel.setSorting(HistorySort.ASC)
sortSheet!!.cancel()
}
- val cancel = sortSheet!!.findViewById(R.id.cancel)
+ val cancel = sortSheet!!.findViewById(R.id.author)
cancel!!.setOnClickListener { sortSheet!!.cancel() }
sortSheet!!.show()
sortSheet!!.window!!.setLayout(
diff --git a/app/src/main/java/com/deniscerri/ytdlnis/ui/HomeFragment.kt b/app/src/main/java/com/deniscerri/ytdlnis/ui/HomeFragment.kt
index bb3c6763..e655a166 100644
--- a/app/src/main/java/com/deniscerri/ytdlnis/ui/HomeFragment.kt
+++ b/app/src/main/java/com/deniscerri/ytdlnis/ui/HomeFragment.kt
@@ -135,6 +135,8 @@ class HomeFragment : Fragment(), HomeAdapter.OnItemClickListener, View.OnClickLi
showSingleDownloadSheet(it[0], DownloadViewModel.Type.video)
}
}
+ }else{
+ downloadAllFabCoordinator!!.visibility = GONE
}
firstBoot = false
}
@@ -169,6 +171,7 @@ class HomeFragment : Fragment(), HomeAdapter.OnItemClickListener, View.OnClickLi
inputQueriesLength = inputQueries!!.size
Handler(Looper.getMainLooper()).post { scrollToTop() }
val thread = Thread {
+ resultViewModel.parseQuery(inputQueries!!.pop()!!, true)
while (!inputQueries!!.isEmpty()) {
inputQuery = inputQueries!!.pop()
resultViewModel.parseQuery(inputQuery!!, false)
diff --git a/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/BackgroundToForegroundPageTransformer.kt b/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/BackgroundToForegroundPageTransformer.kt
new file mode 100644
index 00000000..a0398426
--- /dev/null
+++ b/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/BackgroundToForegroundPageTransformer.kt
@@ -0,0 +1,24 @@
+package com.deniscerri.ytdlnis.ui.downloadcard
+
+import android.view.View
+import androidx.viewpager2.widget.ViewPager2
+import kotlin.math.abs
+
+
+class BackgroundToForegroundPageTransformer : ViewPager2.PageTransformer {
+ override fun transformPage(page: View, pos: Float) {
+ val scale = if (pos < 0) pos + 1f else abs(1f - pos)
+ page.scaleX = scale
+ page.scaleY = scale
+ page.pivotX = page.width * 0.5f
+ page.pivotY = page.height * 0.5f
+ page.alpha = if (pos < -1f || pos > 1f) 0f else 1f - (scale - 1f)
+
+ page.post {
+ val wMeasureSpec = View.MeasureSpec.makeMeasureSpec(page.width, View.MeasureSpec.EXACTLY)
+ val hMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)
+ page.measure(wMeasureSpec, hMeasureSpec)
+ page.minimumHeight = hMeasureSpec
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadAudioFragment.kt b/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadAudioFragment.kt
index f070c247..b120bac1 100644
--- a/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadAudioFragment.kt
+++ b/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadAudioFragment.kt
@@ -9,7 +9,10 @@ import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
-import android.widget.*
+import android.widget.AdapterView
+import android.widget.ArrayAdapter
+import android.widget.AutoCompleteTextView
+import android.widget.TextView
import androidx.activity.result.contract.ActivityResultContracts
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
@@ -18,16 +21,12 @@ import com.deniscerri.ytdlnis.MainActivity
import com.deniscerri.ytdlnis.R
import com.deniscerri.ytdlnis.database.models.DownloadItem
import com.deniscerri.ytdlnis.database.models.ResultItem
-import com.deniscerri.ytdlnis.database.repository.DownloadRepository
import com.deniscerri.ytdlnis.database.viewmodel.DownloadViewModel
-import com.deniscerri.ytdlnis.database.viewmodel.ResultViewModel
+import com.deniscerri.ytdlnis.database.viewmodel.DownloadViewModel.Type
import com.deniscerri.ytdlnis.databinding.FragmentHomeBinding
import com.deniscerri.ytdlnis.util.FileUtil
import com.google.android.material.textfield.TextInputLayout
-import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
-import kotlinx.coroutines.withContext
-import com.deniscerri.ytdlnis.database.viewmodel.DownloadViewModel.Type
class DownloadAudioFragment(private var resultItem: ResultItem) : Fragment() {
@@ -44,6 +43,10 @@ class DownloadAudioFragment(private var resultItem: ResultItem) : Fragment() {
lateinit var downloadItem: DownloadItem
+ override fun onResume() {
+ super.onResume()
+ }
+
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
@@ -168,12 +171,19 @@ class DownloadAudioFragment(private var resultItem: ResultItem) : Fragment() {
containers
)
)
- val selectedContainer: String = if (containers.contains(formats[formats.lastIndex].container)){
- formats[formats.lastIndex].container
- }else{
+
+ val selectedContainer: String = try {
+ if (containers.contains(formats[formats.lastIndex].container)){
+ formats[formats.lastIndex].container
+ }else{
+ containers[0]
+ }
+ }catch (e: Exception){
containers[0]
}
+
downloadItem.format.container = selectedContainer
+ Log.e("TAG", selectedContainer)
containerAutoCompleteTextView!!.setText(selectedContainer, false)
(container!!.editText as AutoCompleteTextView?)!!.onItemClickListener =
AdapterView.OnItemClickListener { _: AdapterView<*>?, _: View?, index: Int, _: Long ->
diff --git a/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadBottomSheetDialog.kt b/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadBottomSheetDialog.kt
index cee0be48..44f98bce 100644
--- a/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadBottomSheetDialog.kt
+++ b/app/src/main/java/com/deniscerri/ytdlnis/ui/downloadcard/DownloadBottomSheetDialog.kt
@@ -8,7 +8,11 @@ import android.content.DialogInterface
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
+import android.widget.Adapter
import android.widget.Button
+import androidx.coordinatorlayout.widget.CoordinatorLayout
+import androidx.core.view.get
+import androidx.core.view.size
import androidx.lifecycle.ViewModelProvider
import androidx.viewpager2.widget.ViewPager2
import com.deniscerri.ytdlnis.R
@@ -78,7 +82,7 @@ class DownloadBottomSheetDialog(private val resultItem: ResultItem, private val
tabLayout.addOnTabSelectedListener(object : TabLayout.OnTabSelectedListener {
override fun onTabSelected(tab: TabLayout.Tab?) {
- viewPager2.currentItem = tab!!.position
+ viewPager2.setCurrentItem(tab!!.position, false)
}
override fun onTabUnselected(tab: TabLayout.Tab?) {
@@ -93,16 +97,8 @@ class DownloadBottomSheetDialog(private val resultItem: ResultItem, private val
tabLayout.selectTab(tabLayout.getTabAt(position))
}
})
- viewPager2.setPageTransformer { v, _ ->
- v.post {
- val wMeasureSpec = View.MeasureSpec.makeMeasureSpec(v.width, View.MeasureSpec.EXACTLY)
- val hMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)
- v.measure(wMeasureSpec, hMeasureSpec)
-
- viewPager2.layoutParams = (viewPager2.layoutParams).also { lp -> lp.height = v.measuredHeight }
- viewPager2.invalidate()
- }
- }
+
+ viewPager2.setPageTransformer(BackgroundToForegroundPageTransformer())
val scheduleBtn = view.findViewById(R.id.bottomsheet_schedule_button)
scheduleBtn.setOnClickListener{
diff --git a/app/src/main/java/com/deniscerri/ytdlnis/util/UpdateUtil.kt b/app/src/main/java/com/deniscerri/ytdlnis/util/UpdateUtil.kt
index 6b900488..918fdda9 100644
--- a/app/src/main/java/com/deniscerri/ytdlnis/util/UpdateUtil.kt
+++ b/app/src/main/java/com/deniscerri/ytdlnis/util/UpdateUtil.kt
@@ -24,7 +24,6 @@ import java.io.InputStreamReader
import java.net.HttpURLConnection
import java.net.URL
import java.util.concurrent.atomic.AtomicReference
-import java.io.File
class UpdateUtil(var context: Context) {
private val tag = "UpdateUtil"
diff --git a/app/src/main/res/layout/download_bottom_sheet.xml b/app/src/main/res/layout/download_bottom_sheet.xml
index 93c6a187..ec6c6e33 100644
--- a/app/src/main/res/layout/download_bottom_sheet.xml
+++ b/app/src/main/res/layout/download_bottom_sheet.xml
@@ -1,112 +1,127 @@
-
-
-
-
-
-
-
-
-
-
-
+ android:orientation="vertical">
-
+
-
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
-
-
-
+ android:layout_gravity="bottom"
+ android:padding="10dp"
+ android:orientation="horizontal">
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_download_audio.xml b/app/src/main/res/layout/fragment_download_audio.xml
index 054c0284..3bdd7ea3 100644
--- a/app/src/main/res/layout/fragment_download_audio.xml
+++ b/app/src/main/res/layout/fragment_download_audio.xml
@@ -11,6 +11,56 @@
android:padding="10dp"
android:orientation="vertical">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
-
-
+
-
-
-
+
+
+
+
+
+
+
+
+ android:orientation="horizontal">
+
+
+
-
+
+
-
+ android:orientation="horizontal">
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index 6432bc9a..9dc5fa78 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -53,4 +53,9 @@
- music_offtopic
+
+
+ - 0.0
+ - 100.0
+
\ 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 95749144..7debea7c 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -165,4 +165,5 @@
Template
Logs
Commands
+ Date added
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index ebcc47e6..17307432 100644
--- a/build.gradle
+++ b/build.gradle
@@ -4,8 +4,8 @@
buildscript {
def versionMajor = 1
- def versionMinor = 4
- def versionPatch = 9
+ def versionMinor = 5
+ def versionPatch = 0
def versionBuild = 0 // bump for dogfood builds, public betas, etc.
ext {
@@ -37,8 +37,8 @@ buildscript {
}
plugins {
- id 'com.android.application' version '7.4.0' apply false
- id 'com.android.library' version '7.4.0' apply false
+ id 'com.android.application' version '7.4.1' apply false
+ id 'com.android.library' version '7.4.1' apply false
id 'org.jetbrains.kotlin.android' version '1.7.21' apply false
}