made the logs not store if incognito is on and stopped log getting recreated if deleted
This commit is contained in:
parent
7eabba9c02
commit
8eb0370c69
5 changed files with 62 additions and 7 deletions
|
|
@ -4,16 +4,27 @@ import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.FileObserver
|
import android.os.FileObserver
|
||||||
|
import android.os.Handler
|
||||||
|
import android.os.Looper
|
||||||
|
import android.text.InputType
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
|
import android.view.LayoutInflater
|
||||||
|
import android.view.MenuItem
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.RelativeLayout
|
import android.widget.RelativeLayout
|
||||||
|
import android.widget.TextView
|
||||||
|
import android.widget.Toast
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
|
import androidx.appcompat.widget.SearchView
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import com.deniscerri.ytdlnis.R
|
import com.deniscerri.ytdlnis.R
|
||||||
import com.deniscerri.ytdlnis.adapter.DownloadLogsAdapter
|
import com.deniscerri.ytdlnis.adapter.DownloadLogsAdapter
|
||||||
|
import com.deniscerri.ytdlnis.util.InfoUtil
|
||||||
import com.google.android.material.appbar.MaterialToolbar
|
import com.google.android.material.appbar.MaterialToolbar
|
||||||
|
import com.google.android.material.button.MaterialButton
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
import java.util.ArrayList
|
||||||
|
|
||||||
|
|
||||||
class DownloadLogListActivity : AppCompatActivity(), DownloadLogsAdapter.OnItemClickListener {
|
class DownloadLogListActivity : AppCompatActivity(), DownloadLogsAdapter.OnItemClickListener {
|
||||||
|
|
@ -54,19 +65,38 @@ class DownloadLogListActivity : AppCompatActivity(), DownloadLogsAdapter.OnItemC
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
observer.startWatching();
|
observer.startWatching();
|
||||||
|
initMenu(logFolder)
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun initMenu(logFolder: File) {
|
||||||
|
topAppBar.setOnMenuItemClickListener { m: MenuItem ->
|
||||||
|
val itemId = m.itemId
|
||||||
|
if (itemId == R.id.remove_logs) {
|
||||||
|
try{
|
||||||
|
logFolder.listFiles()!!.forEach {
|
||||||
|
it.delete()
|
||||||
|
}
|
||||||
|
}catch (e: Exception){
|
||||||
|
Toast.makeText(context, e.message, Toast.LENGTH_LONG).show()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateList(logFolder: File){
|
private fun updateList(logFolder: File){
|
||||||
fileList = mutableListOf()
|
fileList = mutableListOf()
|
||||||
fileList.addAll(logFolder.listFiles()!!)
|
try{
|
||||||
fileList.reverse()
|
fileList.addAll(logFolder.listFiles()!!)
|
||||||
|
fileList.reverse()
|
||||||
|
}catch (ignored: Exception){}
|
||||||
downloadLogAdapter.submitList(fileList.toList())
|
downloadLogAdapter.submitList(fileList.toList())
|
||||||
runOnUiThread{
|
runOnUiThread{
|
||||||
if (fileList.isNotEmpty()) {
|
if (fileList.isNotEmpty()) {
|
||||||
noResults.visibility = View.GONE
|
noResults.visibility = View.GONE
|
||||||
|
topAppBar.menu.findItem(R.id.remove_logs).isVisible = true
|
||||||
}else{
|
}else{
|
||||||
|
topAppBar.menu.findItem(R.id.remove_logs).isVisible = false
|
||||||
noResults.visibility = View.VISIBLE
|
noResults.visibility = View.VISIBLE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -197,11 +197,11 @@ class DownloadWorker(
|
||||||
}
|
}
|
||||||
|
|
||||||
runCatching {
|
runCatching {
|
||||||
val logDownloads = sharedPreferences.getBoolean("log_downloads", false)
|
val logDownloads = sharedPreferences.getBoolean("log_downloads", false) && !sharedPreferences.getBoolean("incognito", false)
|
||||||
val logFolder = File(context.filesDir.absolutePath + "/logs")
|
val logFolder = File(context.filesDir.absolutePath + "/logs")
|
||||||
val logFile = File(context.filesDir.absolutePath + """/logs/${downloadItem.id} - ${downloadItem.title}##${downloadItem.type}##${downloadItem.format.format_id}.log""")
|
val logFile = File(context.filesDir.absolutePath + """/logs/${downloadItem.id} - ${downloadItem.title}##${downloadItem.type}##${downloadItem.format.format_id}.log""")
|
||||||
if (logDownloads){
|
if (logDownloads){
|
||||||
logFolder.mkdir()
|
logFolder.mkdirs()
|
||||||
logFile.createNewFile()
|
logFile.createNewFile()
|
||||||
logFile.writeText("Downloading:\n" +
|
logFile.writeText("Downloading:\n" +
|
||||||
"URL: ${downloadItem.url}\n" +
|
"URL: ${downloadItem.url}\n" +
|
||||||
|
|
@ -219,7 +219,7 @@ class DownloadWorker(
|
||||||
line, progress.toInt(), 0, title,
|
line, progress.toInt(), 0, title,
|
||||||
NotificationUtil.DOWNLOAD_SERVICE_CHANNEL_ID
|
NotificationUtil.DOWNLOAD_SERVICE_CHANNEL_ID
|
||||||
)
|
)
|
||||||
if (logDownloads){
|
if (logDownloads && logFile.exists()){
|
||||||
logFile.appendText("${line}\n")
|
logFile.appendText("${line}\n")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -259,7 +259,9 @@ class DownloadWorker(
|
||||||
val logDownloads = sharedPreferences.getBoolean("log_downloads", false)
|
val logDownloads = sharedPreferences.getBoolean("log_downloads", false)
|
||||||
if (logDownloads){
|
if (logDownloads){
|
||||||
val logFile = File(context.filesDir.absolutePath + """/logs/${downloadItem.id} - ${downloadItem.title}##${downloadItem.type}##${downloadItem.format.format_id}.log""")
|
val logFile = File(context.filesDir.absolutePath + """/logs/${downloadItem.id} - ${downloadItem.title}##${downloadItem.type}##${downloadItem.format.format_id}.log""")
|
||||||
logFile.appendText("${it.message}\n")
|
if (logFile.exists()){
|
||||||
|
logFile.appendText("${it.message}\n")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tempFileDir.delete()
|
tempFileDir.delete()
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@
|
||||||
android:elevation="0dp"
|
android:elevation="0dp"
|
||||||
app:title="@string/logs"
|
app:title="@string/logs"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
app:menu="@menu/download_logs_menu"
|
||||||
app:navigationIcon="@drawable/ic_back"
|
app:navigationIcon="@drawable/ic_back"
|
||||||
android:layout_height="match_parent"/>
|
android:layout_height="match_parent"/>
|
||||||
|
|
||||||
|
|
|
||||||
9
app/src/main/res/menu/download_logs_menu.xml
Normal file
9
app/src/main/res/menu/download_logs_menu.xml
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<menu xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
<item
|
||||||
|
android:id="@+id/remove_logs"
|
||||||
|
android:icon="@drawable/ic_delete_all"
|
||||||
|
android:title="@string/remove_all"
|
||||||
|
app:showAsAction="never" />
|
||||||
|
</menu>
|
||||||
|
|
@ -71,6 +71,18 @@
|
||||||
<string name="remove_non_music">Hiq pjesët pa muzikë</string>
|
<string name="remove_non_music">Hiq pjesët pa muzikë</string>
|
||||||
<string name="remove_non_music_summary">Hiq segmentet që përmbajnë pjesë pa muzikë në skedarët audio me SponsorBlock</string>
|
<string name="remove_non_music_summary">Hiq segmentet që përmbajnë pjesë pa muzikë në skedarët audio me SponsorBlock</string>
|
||||||
<string name="processing">Proçesimi</string>
|
<string name="processing">Proçesimi</string>
|
||||||
|
<string name="command_templates">Shabllonët e Komandave</string>
|
||||||
|
<string name="terminal">Terminali</string>
|
||||||
|
<string name="format">Formatet</string>
|
||||||
|
<string name="select_format">Zgjidh një Format</string>
|
||||||
|
<string name="please_wait">Ju Lutem Prisni</string>
|
||||||
|
<string name="remove_search_history">Pastro Historinë e Kërkimit</string>
|
||||||
|
<string name="enable_mtime">Aktivizo mtime</string>
|
||||||
|
<string name="enable_mtime_summary">Vendos orën e modifikimit sipas linkut</string>
|
||||||
|
<string name="update_formats">Përditëso Formatet</string>
|
||||||
|
<string name="error_updating_formats">Problem në përditësimin e formateve!</string>
|
||||||
|
<string name="log_downloads">Shëno Shkarkimet</string>
|
||||||
|
<string name="log_downloads_summary">Krijo një skedar shënimesh për çdo shkarkim</string>
|
||||||
<string name="embed_subs">Titra në Video</string>
|
<string name="embed_subs">Titra në Video</string>
|
||||||
<string name="embed_subs_summary">Vendos titra brenda videos</string>
|
<string name="embed_subs_summary">Vendos titra brenda videos</string>
|
||||||
<string name="embed_thumb">Vendos Imazh</string>
|
<string name="embed_thumb">Vendos Imazh</string>
|
||||||
|
|
@ -142,6 +154,7 @@
|
||||||
<string name="sponsorblock_fillers">Pjesë Shtesë</string>
|
<string name="sponsorblock_fillers">Pjesë Shtesë</string>
|
||||||
<string name="sponsorblock_reminders">Përkujtuesit e Abonimit</string>
|
<string name="sponsorblock_reminders">Përkujtuesit e Abonimit</string>
|
||||||
<string name="select_sponsorblock_filtering">Zgjidh Filtrimin e SponsorBlock</string>
|
<string name="select_sponsorblock_filtering">Zgjidh Filtrimin e SponsorBlock</string>
|
||||||
|
<string name="file_transfer_notification_channel_description">Njoftimi qe shfaq progresin e transferimit te skedareve</string>
|
||||||
<string name="save_dir">Direktoria</string>
|
<string name="save_dir">Direktoria</string>
|
||||||
<string name="new_template">Shabllon i ri</string>
|
<string name="new_template">Shabllon i ri</string>
|
||||||
<string name="adjust_templates">Cakto Shabllonët</string>
|
<string name="adjust_templates">Cakto Shabllonët</string>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue