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
cbe944fc
Commit
cbe944fc
authored
Sep 06, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...
parent
3f2e9fa5
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
134 additions
and
22 deletions
+134
-22
ConstObject.kt
app/src/main/java/com/base/browserwhite/bean/ConstObject.kt
+10
-0
DownloadDialog.kt
.../base/browserwhite/ui/activity/download/DownloadDialog.kt
+4
-3
WebBrowserActivity.kt
...browserwhite/ui/activity/webbrowser/WebBrowserActivity.kt
+2
-2
WebViewFragment.kt
...se/browserwhite/ui/activity/webbrowser/WebViewFragment.kt
+30
-17
DialogViews.kt
...c/main/java/com/base/browserwhite/ui/views/DialogViews.kt
+24
-0
bg_eff0f5_tlf15.xml
app/src/main/res/drawable/bg_eff0f5_tlf15.xml
+8
-0
dialog_download_disclaimer.xml
app/src/main/res/layout/dialog_download_disclaimer.xml
+56
-0
No files found.
app/src/main/java/com/base/browserwhite/bean/ConstObject.kt
View file @
cbe944fc
...
@@ -93,4 +93,14 @@ object ConstObject {
...
@@ -93,4 +93,14 @@ object ConstObject {
field
=
value
field
=
value
AppPreferences
.
getInstance
().
put
(
"webPrivacy"
,
value
,
true
)
AppPreferences
.
getInstance
().
put
(
"webPrivacy"
,
value
,
true
)
}
}
var
downloadDisclaimer
=
false
get
()
{
return
AppPreferences
.
getInstance
().
getBoolean
(
"downloadDisclaimer"
,
field
)
}
set
(
value
)
{
field
=
value
AppPreferences
.
getInstance
().
put
(
"downloadDisclaimer"
,
value
,
true
)
}
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/download/DownloadDialog.kt
View file @
cbe944fc
...
@@ -127,7 +127,7 @@ object DownloadDialog {
...
@@ -127,7 +127,7 @@ object DownloadDialog {
}
}
fun
Context
.
showDownloadFinishDialog
(
bean
:
DownloadBean
)
{
fun
Context
.
showDownloadFinishDialog
(
bean
:
DownloadBean
,
downloadAction
:
()
->
Unit
)
{
val
binding
=
DialogDownloadFinishBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
val
binding
=
DialogDownloadFinishBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
val
dialog
=
AlertDialog
.
Builder
(
this
).
create
()
val
dialog
=
AlertDialog
.
Builder
(
this
).
create
()
dialog
.
setView
(
binding
.
root
)
dialog
.
setView
(
binding
.
root
)
...
@@ -139,9 +139,7 @@ object DownloadDialog {
...
@@ -139,9 +139,7 @@ object DownloadDialog {
dialog
.
window
?.
setBackgroundDrawableResource
(
android
.
R
.
color
.
transparent
)
dialog
.
window
?.
setBackgroundDrawableResource
(
android
.
R
.
color
.
transparent
)
AdmobNativeUtils
.
showNativeAd
(
null
,
binding
.
flAd
,
R
.
layout
.
layout_admob_native_download
)
AdmobNativeUtils
.
showNativeAd
(
null
,
binding
.
flAd
,
R
.
layout
.
layout_admob_native_download
)
binding
.
tvDownload
.
setOnClickListener
{
}
binding
.
tvPlay
.
setOnClickListener
{
binding
.
tvPlay
.
setOnClickListener
{
dialog
.
dismiss
()
dialog
.
dismiss
()
startActivity
(
Intent
(
this
,
MediaVideoDetailActivity
::
class
.
java
).
apply
{
startActivity
(
Intent
(
this
,
MediaVideoDetailActivity
::
class
.
java
).
apply
{
...
@@ -152,6 +150,9 @@ object DownloadDialog {
...
@@ -152,6 +150,9 @@ object DownloadDialog {
putExtra
(
"uri"
,
bean
.
path
)
putExtra
(
"uri"
,
bean
.
path
)
})
})
}
}
binding
.
tvDownload
.
setOnClickListener
{
downloadAction
.
invoke
()
}
}
}
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/webbrowser/WebBrowserActivity.kt
View file @
cbe944fc
...
@@ -78,7 +78,7 @@ class WebBrowserActivity : BaseActivity<ActivityWebBrowserBinding>() {
...
@@ -78,7 +78,7 @@ class WebBrowserActivity : BaseActivity<ActivityWebBrowserBinding>() {
from
=
intent
.
extras
?.
getString
(
"from"
)
?:
""
from
=
intent
.
extras
?.
getString
(
"from"
)
?:
""
val
url
=
intent
.
extras
?.
getString
(
"url"
)
?:
""
val
url
=
intent
.
extras
?.
getString
(
"url"
)
?:
""
binding
.
editWeb
.
setText
(
url
)
binding
.
editWeb
.
text
=
url
val
searchEngine
=
intent
.
extras
?.
getString
(
"searchEngine"
)
?:
searchEngineSp
val
searchEngine
=
intent
.
extras
?.
getString
(
"searchEngine"
)
?:
searchEngineSp
when
(
searchEngine
)
{
when
(
searchEngine
)
{
...
@@ -117,7 +117,7 @@ class WebBrowserActivity : BaseActivity<ActivityWebBrowserBinding>() {
...
@@ -117,7 +117,7 @@ class WebBrowserActivity : BaseActivity<ActivityWebBrowserBinding>() {
mChangeSearchUrl
=
RxBus
.
get
().
register
(
Constants
.
CHANGE_SEARCH_URL
,
String
::
class
.
java
)
mChangeSearchUrl
=
RxBus
.
get
().
register
(
Constants
.
CHANGE_SEARCH_URL
,
String
::
class
.
java
)
mChangeSearchUrl
?.
observeOn
(
AndroidSchedulers
.
mainThread
())
?.
subscribe
{
t
->
mChangeSearchUrl
?.
observeOn
(
AndroidSchedulers
.
mainThread
())
?.
subscribe
{
t
->
currentFragment
?.
loadWebView
(
t
)
currentFragment
?.
loadWebView
(
t
)
binding
.
editWeb
.
setText
(
t
)
binding
.
editWeb
.
text
=
t
}
}
addNewWebSite
(
url
)
addNewWebSite
(
url
)
...
...
app/src/main/java/com/base/browserwhite/ui/activity/webbrowser/WebViewFragment.kt
View file @
cbe944fc
...
@@ -24,6 +24,7 @@ import androidx.core.view.isVisible
...
@@ -24,6 +24,7 @@ import androidx.core.view.isVisible
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
com.base.browserwhite.MyApplication
import
com.base.browserwhite.MyApplication
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.bean.ConstObject.downloadDisclaimer
import
com.base.browserwhite.bean.ConstObject.webPrivacy
import
com.base.browserwhite.bean.ConstObject.webPrivacy
import
com.base.browserwhite.bean.DownloadBean
import
com.base.browserwhite.bean.DownloadBean
import
com.base.browserwhite.bean.HistoryBean
import
com.base.browserwhite.bean.HistoryBean
...
@@ -32,6 +33,7 @@ import com.base.browserwhite.ui.activity.download.DownloadAdapter
...
@@ -32,6 +33,7 @@ import com.base.browserwhite.ui.activity.download.DownloadAdapter
import
com.base.browserwhite.ui.activity.download.DownloadDialog.showDownloadFinishDialog
import
com.base.browserwhite.ui.activity.download.DownloadDialog.showDownloadFinishDialog
import
com.base.browserwhite.ui.activity.download.DownloadDialog.showDownloadVideoDialog
import
com.base.browserwhite.ui.activity.download.DownloadDialog.showDownloadVideoDialog
import
com.base.browserwhite.ui.fragment.BaseFragment
import
com.base.browserwhite.ui.fragment.BaseFragment
import
com.base.browserwhite.ui.views.DialogViews.showDownloadDisclaimer
import
com.base.browserwhite.ui.views.PermissionDialog.showPermissionBottomSheet
import
com.base.browserwhite.ui.views.PermissionDialog.showPermissionBottomSheet
import
com.base.browserwhite.utils.ColorUtils
import
com.base.browserwhite.utils.ColorUtils
import
com.base.browserwhite.utils.DownloadUtils
import
com.base.browserwhite.utils.DownloadUtils
...
@@ -103,10 +105,22 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
...
@@ -103,10 +105,22 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
}
}
binding
.
flDownload
.
setOnClickListener
{
binding
.
flDownload
.
setOnClickListener
{
callDownloadDialog
()
}
}
private
fun
callDownloadDialog
()
{
if
(!
downloadDisclaimer
)
{
requireContext
().
showDownloadDisclaimer
{}
downloadDisclaimer
=
true
return
}
if
(!
requireContext
().
checkStorePermission
())
{
if
(!
requireContext
().
checkStorePermission
())
{
val
launcher
=
(
requireActivity
()
as
WebBrowserActivity
).
launcher
val
launcher
=
(
requireActivity
()
as
WebBrowserActivity
).
launcher
requireContext
().
showPermissionBottomSheet
(
launcher
)
{}
requireContext
().
showPermissionBottomSheet
(
launcher
)
{}
return
@setOnClickListener
return
}
}
initDownloadAdapter
()
initDownloadAdapter
()
...
@@ -122,9 +136,6 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
...
@@ -122,9 +136,6 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
}
}
}
}
}
private
fun
initDownloadAdapter
()
{
private
fun
initDownloadAdapter
()
{
if
(
downloadAdapter
==
null
)
{
if
(
downloadAdapter
==
null
)
{
downloadAdapter
=
DownloadAdapter
()
downloadAdapter
=
DownloadAdapter
()
...
@@ -141,12 +152,14 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
...
@@ -141,12 +152,14 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
val
bean
=
DownloadUtils
.
getDownloadJsonBean
(
recordFile
).
find
{
it
.
downloadId
==
id
}
val
bean
=
DownloadUtils
.
getDownloadJsonBean
(
recordFile
).
find
{
it
.
downloadId
==
id
}
val
file
=
File
(
bean
?.
path
?:
""
)
val
file
=
File
(
bean
?.
path
?:
""
)
LogEx
.
logDebug
(
TAG
,
"downloadFinishAction id=$id ${bean?.downloadId} ${bean?.name} ${bean?.path}} exists=${file.exists()}"
)
LogEx
.
logDebug
(
TAG
,
"downloadFinishAction id=$id ${bean?.downloadId} ${bean?.name} ${bean?.path}} exists=${file.exists()}"
)
bean
?.
let
{
requireContext
().
showDownloadFinishDialog
(
it
)
}
bean
?.
let
{
requireContext
().
showDownloadFinishDialog
(
it
)
{
callDownloadDialog
()
}
}
requireContext
().
saveDownloadRecordFile
(
downloadList
)
requireContext
().
saveDownloadRecordFile
(
downloadList
)
}
}
}
}
fun
dropAndBounceButton
(
button
:
View
)
{
private
fun
dropAndBounceButton
(
button
:
View
)
{
// 初始位置
// 初始位置
button
.
isVisible
=
downloadList
.
isNotEmpty
()
button
.
isVisible
=
downloadList
.
isNotEmpty
()
...
...
app/src/main/java/com/base/browserwhite/ui/views/DialogViews.kt
View file @
cbe944fc
...
@@ -26,6 +26,7 @@ import com.base.browserwhite.databinding.DialogBookmarkAddedRootBinding
...
@@ -26,6 +26,7 @@ import com.base.browserwhite.databinding.DialogBookmarkAddedRootBinding
import
com.base.browserwhite.databinding.DialogCleanerReocordBinding
import
com.base.browserwhite.databinding.DialogCleanerReocordBinding
import
com.base.browserwhite.databinding.DialogDefaultBrowserBinding
import
com.base.browserwhite.databinding.DialogDefaultBrowserBinding
import
com.base.browserwhite.databinding.DialogDeleteTipBinding
import
com.base.browserwhite.databinding.DialogDeleteTipBinding
import
com.base.browserwhite.databinding.DialogDownloadDisclaimerBinding
import
com.base.browserwhite.databinding.DialogMediaMoreBinding
import
com.base.browserwhite.databinding.DialogMediaMoreBinding
import
com.base.browserwhite.databinding.DialogMoreWebbrowserBinding
import
com.base.browserwhite.databinding.DialogMoreWebbrowserBinding
import
com.base.browserwhite.databinding.DialogMyAccountBinding
import
com.base.browserwhite.databinding.DialogMyAccountBinding
...
@@ -34,6 +35,7 @@ import com.base.browserwhite.help.Constants
...
@@ -34,6 +35,7 @@ import com.base.browserwhite.help.Constants
import
com.base.browserwhite.help.RxBus
import
com.base.browserwhite.help.RxBus
import
com.base.browserwhite.ui.activity.about.AboutActivity
import
com.base.browserwhite.ui.activity.about.AboutActivity
import
com.base.browserwhite.ui.activity.feedback.FeedbackActivity
import
com.base.browserwhite.ui.activity.feedback.FeedbackActivity
import
com.base.browserwhite.ui.views.DialogViews.showAddRootBookmarkDialog
import
com.base.browserwhite.utils.ActivityLauncher
import
com.base.browserwhite.utils.ActivityLauncher
import
com.base.browserwhite.utils.AppPreferences
import
com.base.browserwhite.utils.AppPreferences
import
com.base.browserwhite.utils.RoleManagerUtils.isDefaultBrowser
import
com.base.browserwhite.utils.RoleManagerUtils.isDefaultBrowser
...
@@ -442,5 +444,27 @@ object DialogViews {
...
@@ -442,5 +444,27 @@ object DialogViews {
return
dialog
return
dialog
}
}
fun
Context
.
showDownloadDisclaimer
(
gotAction
:
()
->
Unit
)
{
val
dialog
=
BottomSheetDialog
(
this
,
R
.
style
.
BottomSheetDialog
)
val
binding
=
DialogDownloadDisclaimerBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
dialog
.
setContentView
(
binding
.
root
)
dialog
.
setCanceledOnTouchOutside
(
false
)
dialog
.
show
()
dialog
.
window
?.
setDimAmount
(
0f
)
val
parentView
=
binding
.
root
.
parent
as
View
val
behavior
=
BottomSheetBehavior
.
from
(
parentView
)
//展开
behavior
.
state
=
BottomSheetBehavior
.
STATE_EXPANDED
binding
.
tvGot
.
setOnClickListener
{
dialog
.
dismiss
()
gotAction
.
invoke
()
}
}
}
}
\ No newline at end of file
app/src/main/res/drawable/bg_eff0f5_tlf15.xml
0 → 100644
View file @
cbe944fc
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:topLeftRadius=
"15dp"
android:topRightRadius=
"15dp"
/>
<solid
android:color=
"#EFF0F5"
/>
</shape>
\ No newline at end of file
app/src/main/res/layout/dialog_download_disclaimer.xml
0 → 100644
View file @
cbe944fc
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@drawable/bg_eff0f5_tlf15"
android:orientation=
"vertical"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"23dp"
android:text=
"Disclaimer"
android:textColor=
"@color/black"
tools:ignore=
"HardcodedText"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginHorizontal=
"15dp"
android:layout_marginTop=
"18dp"
android:text=
"Our video download feature assists users in
downloading videos from third-party websites. Users
must comply with applicable laws and the terms of
use of the third-party website. We are not liable for
the video content downloaded through our service, and
users download videos at their own risk. We do not
guarantee the accuracy, legality, security, or
completeness of the video content on third-party
websites. Users are responsible for assessing and
assuming the risks associated with using such content.
If downloaded video content infringes upon intellectual
property or other legal rights, please contact us
promptly. We may modify and update this disclaimer
at any time, and users should read and understand it
before using our service. Contact us for any questions
"
android:textColor=
"#222327"
android:textSize=
"13sp"
tools:ignore=
"HardcodedText"
/>
<TextView
android:id=
"@+id/tv_got"
android:layout_width=
"338dp"
android:layout_height=
"50dp"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"25dp"
android:layout_marginBottom=
"25dp"
android:background=
"@drawable/bg_0571ed_25"
android:gravity=
"center"
android:text=
"Got it"
android:textColor=
"@color/white"
tools:ignore=
"HardcodedText"
/>
</LinearLayout>
\ No newline at end of file
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