Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
B
Browser White
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
Browser White
Commits
8b166a72
Commit
8b166a72
authored
Aug 26, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...
parent
cc1d3bee
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
76 additions
and
30 deletions
+76
-30
DownloadAdapter.kt
...base/browserwhite/ui/activity/download/DownloadAdapter.kt
+23
-1
WebDownloadManagerActivity.kt
...rwhite/ui/activity/download/WebDownloadManagerActivity.kt
+0
-1
WebViewFragment.kt
...se/browserwhite/ui/activity/webbrowser/WebViewFragment.kt
+20
-9
DialogViews.kt
...c/main/java/com/base/browserwhite/ui/views/DialogViews.kt
+0
-17
DownloadDialog.kt
...ain/java/com/base/browserwhite/ui/views/DownloadDialog.kt
+1
-1
DownloadHelper.kt
...c/main/java/com/base/browserwhite/utils/DownloadHelper.kt
+1
-1
item_download.xml
app/src/main/res/layout/item_download.xml
+31
-0
No files found.
app/src/main/java/com/base/browserwhite/ui/a
dapter
/DownloadAdapter.kt
→
app/src/main/java/com/base/browserwhite/ui/a
ctivity/download
/DownloadAdapter.kt
View file @
8b166a72
package
com.base.browserwhite.ui.a
dapter
package
com.base.browserwhite.ui.a
ctivity.download
import
android.annotation.SuppressLint
import
android.content.Context
...
...
@@ -51,6 +51,28 @@ class DownloadAdapter : BaseQuickAdapter<DownloadBean, DownloadAdapter.DownloadV
binding
.
flMore
.
setOnClickListener
{
moreAction
?.
invoke
(
it
,
item
)
}
when
(
item
.
status
)
{
FileDownloadStatus
.
completed
->
{
binding
.
flMore
.
visibility
=
View
.
VISIBLE
binding
.
flDownload
.
visibility
=
View
.
GONE
}
FileDownloadStatus
.
paused
->
{
binding
.
flMore
.
visibility
=
View
.
GONE
binding
.
flDownload
.
visibility
=
View
.
VISIBLE
binding
.
circularProgressBar
.
progress
=
item
.
progress
.
toFloat
()
}
FileDownloadStatus
.
progress
->
{
binding
.
flMore
.
visibility
=
View
.
GONE
binding
.
flDownload
.
visibility
=
View
.
VISIBLE
binding
.
circularProgressBar
.
progress
=
item
.
progress
.
toFloat
()
replaceListener
(
item
)
}
}
binding
.
flDownload
.
setOnClickListener
{
pauseResumeDownload
(
item
)
}
}
else
if
(
item
.
uiType
==
2
)
{
val
binding
=
ItemDownloadCardBinding
.
bind
(
holder
.
itemView
)
...
...
app/src/main/java/com/base/browserwhite/ui/activity/download/WebDownloadManagerActivity.kt
View file @
8b166a72
...
...
@@ -9,7 +9,6 @@ import androidx.core.view.updatePadding
import
com.base.browserwhite.bean.DownloadBean
import
com.base.browserwhite.databinding.ActivityWebDownloadManagerBinding
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.ui.adapter.DownloadAdapter
import
com.base.browserwhite.ui.views.DialogViews.showDeleteTipDialog
import
com.base.browserwhite.ui.views.DialogViews.showGerPermission
import
com.base.browserwhite.ui.views.DialogViews.showMediaMoreDialog
...
...
app/src/main/java/com/base/browserwhite/ui/activity/webbrowser/WebViewFragment.kt
View file @
8b166a72
...
...
@@ -19,7 +19,7 @@ import androidx.lifecycle.lifecycleScope
import
com.base.browserwhite.bean.DownloadBean
import
com.base.browserwhite.bean.downloadBeanGson
import
com.base.browserwhite.databinding.FragmentWebViewBinding
import
com.base.browserwhite.ui.a
dapter
.DownloadAdapter
import
com.base.browserwhite.ui.a
ctivity.download
.DownloadAdapter
import
com.base.browserwhite.ui.fragment.BaseFragment
import
com.base.browserwhite.ui.views.DownloadDialog.showDownloadVideoDialog
import
com.base.browserwhite.utils.DownloadHelper.getDownloadJson
...
...
@@ -102,20 +102,31 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
val
recordFile
=
requireContext
().
getDownloadJson
()
val
list
=
downloadList
list
.
filter
{
it
.
status
==
FileDownloadStatus
.
completed
||
it
.
status
==
FileDownloadStatus
.
progress
||
//已开始的任务
val
startedList
=
downloadList
.
filter
{
it
.
status
==
FileDownloadStatus
.
progress
||
it
.
status
==
FileDownloadStatus
.
paused
}.
forEach
{
it
.
time
=
System
.
currentTimeMillis
()
}
}
startedList
.
forEach
{
it
.
time
=
System
.
currentTimeMillis
()
}
//完成的任务
val
finishList
=
downloadList
.
filter
{
it
.
status
==
FileDownloadStatus
.
completed
}
val
olderList
=
getDownloadJsonBean
(
recordFile
,
downloadBeanGson
).
filter
{
!
list
.
contains
(
it
)
}
//以前的去除重叠的
val
olderList
=
getDownloadJsonBean
(
recordFile
,
downloadBeanGson
).
filter
{
!
startedList
.
contains
(
it
)
||
!
startedList
.
contains
(
it
)
}
val
arrayList
=
arrayListOf
<
DownloadBean
>()
arrayList
.
addAll
(
olderList
)
arrayList
.
addAll
(
list
)
arrayList
.
addAll
(
startedList
)
arrayList
.
addAll
(
finishList
)
arrayList
.
forEach
{
LogEx
.
logDebug
(
TAG
,
"saveDownloadRecordFile ${it.name} ${it.downloadId} ${it.status} "
)
}
val
json
=
downloadBeanGson
.
toJson
(
l
ist
)
val
json
=
downloadBeanGson
.
toJson
(
arrayL
ist
)
recordFile
.
writeText
(
json
)
}
...
...
app/src/main/java/com/base/browserwhite/ui/views/DialogViews.kt
View file @
8b166a72
...
...
@@ -3,21 +3,13 @@ package com.base.browserwhite.ui.views
import
android.annotation.SuppressLint
import
android.app.AlertDialog
import
android.app.Dialog
import
android.app.DownloadManager
import
android.content.Context
import
android.content.Intent
import
android.graphics.Color
import
android.graphics.drawable.ColorDrawable
import
android.view.Gravity
import
android.view.KeyEvent
import
android.view.LayoutInflater
import
android.view.View
import
android.view.inputmethod.EditorInfo
import
android.view.inputmethod.InputMethodManager
import
android.widget.FrameLayout
import
android.widget.TextView
import
android.widget.TextView.OnEditorActionListener
import
android.widget.Toast
import
com.base.browserwhite.R
import
com.base.browserwhite.bean.ConstObject.BAIDU
import
com.base.browserwhite.bean.ConstObject.BING
...
...
@@ -25,20 +17,11 @@ import com.base.browserwhite.bean.ConstObject.DUCKDUCKGO
import
com.base.browserwhite.bean.ConstObject.GOOGLE
import
com.base.browserwhite.bean.ConstObject.YAHOO
import
com.base.browserwhite.bean.ConstObject.YANDEX
import
com.base.browserwhite.bean.DownloadBean
import
com.base.browserwhite.databinding.DialogDeleteTipBinding
import
com.base.browserwhite.databinding.DialogDownloadConfirmBinding
import
com.base.browserwhite.databinding.DialogDownloadFinishBinding
import
com.base.browserwhite.databinding.DialogDownloadVideoBinding
import
com.base.browserwhite.databinding.DialogMediaMoreBinding
import
com.base.browserwhite.databinding.DialogMyAccountBinding
import
com.base.browserwhite.databinding.DialogPermissonOpenBinding
import
com.base.browserwhite.databinding.DialogSearchEngineBinding
import
com.base.browserwhite.ui.activity.download.WebDownloadManagerActivity
import
com.base.browserwhite.ui.adapter.DownloadAdapter
import
com.base.browserwhite.ui.views.DialogViews.showDeleteTipDialog
import
com.base.browserwhite.utils.LogEx
import
com.bumptech.glide.Glide
import
com.google.android.material.bottomsheet.BottomSheetBehavior
import
com.google.android.material.bottomsheet.BottomSheetDialog
...
...
app/src/main/java/com/base/browserwhite/ui/views/DownloadDialog.kt
View file @
8b166a72
...
...
@@ -17,7 +17,7 @@ import com.base.browserwhite.databinding.DialogDownloadConfirmBinding
import
com.base.browserwhite.databinding.DialogDownloadFinishBinding
import
com.base.browserwhite.databinding.DialogDownloadVideoBinding
import
com.base.browserwhite.ui.activity.download.WebDownloadManagerActivity
import
com.base.browserwhite.ui.a
dapter
.DownloadAdapter
import
com.base.browserwhite.ui.a
ctivity.download
.DownloadAdapter
import
com.base.browserwhite.utils.KotlinExt.toFormatSize
import
com.base.browserwhite.utils.LogEx
import
com.bumptech.glide.Glide
...
...
app/src/main/java/com/base/browserwhite/utils/DownloadHelper.kt
View file @
8b166a72
...
...
@@ -27,7 +27,7 @@ object DownloadHelper {
fun
getDownloadJsonBean
(
recordFile
:
File
,
gson
:
Gson
=
downloadBeanGson
):
List
<
DownloadBean
>
{
val
olderText
=
recordFile
.
readText
()
val
type
:
Type
=
object
:
TypeToken
<
List
<
DownloadBean
>>()
{}.
type
return
gson
.
fromJson
<
List
<
DownloadBean
>?>(
olderText
,
type
)
?
.
filter
{
File
(
it
.
path
).
exists
()
}
?
:
listOf
()
return
gson
.
fromJson
<
List
<
DownloadBean
>?>(
olderText
,
type
)
?:
listOf
()
}
fun
Context
.
getDownloadPath
(
...
...
app/src/main/res/layout/item_download.xml
View file @
8b166a72
...
...
@@ -87,6 +87,37 @@
tools:ignore=
"ContentDescription"
/>
</FrameLayout>
<FrameLayout
android:id=
"@+id/fl_download"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:visibility=
"gone"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
>
<com.mikhaellopez.circularprogressbar.CircularProgressBar
android:id=
"@+id/circularProgressBar"
android:layout_width=
"30dp"
android:layout_height=
"30dp"
app:cpb_background_progressbar_color=
"#E8E8F1"
app:cpb_background_progressbar_width=
"3dp"
app:cpb_progress_direction=
"to_left"
app:cpb_progress_max=
"100"
app:cpb_progressbar_color=
"#0570EC"
app:cpb_progressbar_width=
"3dp"
app:cpb_round_border=
"true"
/>
<ImageView
android:id=
"@+id/iv_xiazai_zantin"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:src=
"@mipmap/xiazhaiz_download"
tools:ignore=
"ContentDescription"
/>
</FrameLayout>
<View
android:layout_width=
"0dp"
android:layout_height=
"1px"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment