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
429245cd
Commit
429245cd
authored
Aug 30, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...
parent
5634f6b3
Hide whitespace changes
Inline
Side-by-side
Showing
27 changed files
with
786 additions
and
120 deletions
+786
-120
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+7
-1
BookmarkBean.kt
app/src/main/java/com/base/browserwhite/bean/BookmarkBean.kt
+8
-4
BookmarkActivity.kt
...ase/browserwhite/ui/activity/bookmark/BookmarkActivity.kt
+45
-19
BookmarkAdapter.kt
...base/browserwhite/ui/activity/bookmark/BookmarkAdapter.kt
+46
-4
BookmarkEditActivity.kt
...browserwhite/ui/activity/bookmark/BookmarkEditActivity.kt
+32
-5
BookmarkFolderActivity.kt
...owserwhite/ui/activity/bookmark/BookmarkFolderActivity.kt
+64
-0
BookmarkFolderAdapter.kt
...rowserwhite/ui/activity/bookmark/BookmarkFolderAdapter.kt
+33
-0
BookmarkFolderAddActivity.kt
...erwhite/ui/activity/bookmark/BookmarkFolderAddActivity.kt
+50
-0
WebBrowserActivity.kt
...browserwhite/ui/activity/webbrowser/WebBrowserActivity.kt
+9
-4
HomeFragment.kt
...in/java/com/base/browserwhite/ui/fragment/HomeFragment.kt
+2
-2
DialogViews.kt
...c/main/java/com/base/browserwhite/ui/views/DialogViews.kt
+16
-3
SpBeanUtils.kt
app/src/main/java/com/base/browserwhite/utils/SpBeanUtils.kt
+6
-5
ToastUtils.kt
app/src/main/java/com/base/browserwhite/utils/ToastUtils.kt
+10
-0
color_enable_999999_ffffff.xml
app/src/main/res/color/color_enable_999999_ffffff.xml
+6
-0
bg_0571ed_20.xml
app/src/main/res/drawable/bg_0571ed_20.xml
+5
-0
bg_border_selector_bookmark.xml
app/src/main/res/drawable/bg_border_selector_bookmark.xml
+7
-0
bg_border_selector_save.xml
app/src/main/res/drawable/bg_border_selector_save.xml
+6
-0
bg_f4f5f7_20.xml
app/src/main/res/drawable/bg_f4f5f7_20.xml
+6
-0
bg_selector_bookmark.xml
app/src/main/res/drawable/bg_selector_bookmark.xml
+2
-3
activity_bookmark.xml
app/src/main/res/layout/activity_bookmark.xml
+3
-3
activity_bookmark_edit.xml
app/src/main/res/layout/activity_bookmark_edit.xml
+7
-4
activity_bookmark_folder.xml
app/src/main/res/layout/activity_bookmark_folder.xml
+104
-0
activity_bookmark_folder_add.xml
app/src/main/res/layout/activity_bookmark_folder_add.xml
+118
-0
dialog_more_webbrowser.xml
app/src/main/res/layout/dialog_more_webbrowser.xml
+27
-24
item_bookmark.xml
app/src/main/res/layout/item_bookmark.xml
+13
-39
item_bookmark_folder.xml
app/src/main/res/layout/item_bookmark_folder.xml
+37
-0
item_bookmark_history.xml
app/src/main/res/layout/item_bookmark_history.xml
+117
-0
No files found.
app/src/main/AndroidManifest.xml
View file @
429245cd
...
@@ -38,11 +38,17 @@
...
@@ -38,11 +38,17 @@
android:theme=
"@style/Theme.BrowserWhite"
android:theme=
"@style/Theme.BrowserWhite"
android:usesCleartextTraffic=
"true"
android:usesCleartextTraffic=
"true"
tools:targetApi=
"34"
>
tools:targetApi=
"34"
>
<activity
android:name=
".ui.activity.bookmark.BookmarkFolderAddActivity"
android:exported=
"false"
/>
<activity
android:name=
".ui.activity.bookmark.BookmarkFolderActivity"
android:exported=
"false"
/>
<activity
<activity
android:name=
".ui.activity.bookmark.BookmarkEditActivity"
android:name=
".ui.activity.bookmark.BookmarkEditActivity"
android:exported=
"false"
/>
android:exported=
"false"
/>
<activity
<activity
android:name=
".ui.activity.bookmark.Book
M
arkActivity"
android:name=
".ui.activity.bookmark.Book
m
arkActivity"
android:exported=
"false"
/>
android:exported=
"false"
/>
<receiver
<receiver
...
...
app/src/main/java/com/base/browserwhite/bean/BookmarkBean.kt
View file @
429245cd
package
com.base.browserwhite.bean
package
com.base.browserwhite.bean
data class
BookmarkBean
(
data class
BookmarkBean
(
va
l
folder
:
String
=
""
,
va
r
folder
:
String
=
folderRoot
,
var
name
:
String
=
""
,
var
name
:
String
=
""
,
var
url
:
String
=
""
,
var
url
:
String
=
""
,
va
l
time
:
Long
=
0
,
va
r
isFolder
:
Boolean
=
false
,
)
{
)
{
var
showTime
:
Boolean
=
false
val
viewType
:
Int
=
0
val
viewType
:
Int
=
0
}
\ No newline at end of file
companion
object
{
var
folderRoot
=
"Root Directory"
}
}
app/src/main/java/com/base/browserwhite/ui/activity/bookmark/Book
M
arkActivity.kt
→
app/src/main/java/com/base/browserwhite/ui/activity/bookmark/Book
m
arkActivity.kt
View file @
429245cd
...
@@ -4,29 +4,48 @@ import android.graphics.Color
...
@@ -4,29 +4,48 @@ import android.graphics.Color
import
androidx.activity.addCallback
import
androidx.activity.addCallback
import
androidx.core.view.updatePadding
import
androidx.core.view.updatePadding
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.databinding.ActivityBook
M
arkBinding
import
com.base.browserwhite.databinding.ActivityBook
m
arkBinding
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.KotlinExt.toFormatTime
import
com.base.browserwhite.utils.SpBeanUtils
import
com.base.browserwhite.utils.SpBeanUtils
import
com.base.browserwhite.utils.SpBeanUtils.BOOKMARK_SP_KEY
import
com.base.browserwhite.utils.SpBeanUtils.BOOKMARK_SP_KEY
import
com.google.gson.Gson
import
com.google.gson.Gson
class
Book
MarkActivity
:
BaseActivity
<
ActivityBookM
arkBinding
>()
{
class
Book
markActivity
:
BaseActivity
<
ActivityBookm
arkBinding
>()
{
override
val
binding
:
ActivityBookMarkBinding
by
lazy
{
private
val
TAG
=
"BookmarkActivity"
ActivityBookMarkBinding
.
inflate
(
layoutInflater
)
private
var
currentTab
=
BOOKMARK_TAB
override
val
binding
:
ActivityBookmarkBinding
by
lazy
{
ActivityBookmarkBinding
.
inflate
(
layoutInflater
)
}
}
private
lateinit
var
adapter
:
BookmarkAdapter
private
lateinit
var
bookmarkAdapter
:
BookmarkAdapter
private
val
bookmarkList
=
arrayListOf
<
BookmarkBean
>()
override
fun
initView
()
{
override
fun
initView
()
{
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
WHITE
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
WHITE
)
binding
.
root
.
updatePadding
(
top
=
BarUtils
.
getStatusBarHeight
())
binding
.
root
.
updatePadding
(
top
=
BarUtils
.
getStatusBarHeight
())
adapter
=
BookmarkAdapter
()
bookmarkAdapter
=
BookmarkAdapter
()
bookmarkAdapter
.
changeFolderAction
=
{
folder
->
val
list
=
bookmarkList
.
filter
{
it
.
folder
==
folder
}
bookmarkAdapter
.
submitList
(
list
)
}
changeBookmark
()
}
private
fun
changeBookmark
()
{
binding
.
rv
.
adapter
=
bookmarkAdapter
bookmarkAdapter
.
submitList
(
bookmarkList
)
}
override
fun
onResume
()
{
super
.
onResume
()
initData
()
initData
()
}
}
...
@@ -35,23 +54,26 @@ class BookMarkActivity : BaseActivity<ActivityBookMarkBinding>() {
...
@@ -35,23 +54,26 @@ class BookMarkActivity : BaseActivity<ActivityBookMarkBinding>() {
}
}
private
fun
initBookmarkData
()
{
private
fun
initBookmarkData
()
{
bookmarkList
.
clear
()
val
list
=
SpBeanUtils
.
getSpBeanList
(
BOOKMARK_SP_KEY
)
val
list
=
SpBeanUtils
.
getSpBeanList
(
BOOKMARK_SP_KEY
)
val
items
=
list
.
map
{
Gson
().
fromJson
(
it
,
BookmarkBean
::
class
.
java
)
}
val
items
=
list
.
map
{
Gson
().
fromJson
(
it
,
BookmarkBean
::
class
.
java
)
}
var
time
=
""
items
.
sortedBy
{
it
.
time
}.
forEach
{
bookmarkList
.
addAll
(
items
)
if
(
time
!=
it
.
time
.
toFormatTime
())
{
bookmarkAdapter
.
submitList
(
bookmarkList
.
filter
{
it
.
folder
==
bookmarkAdapter
.
currentFolder
})
it
.
showTime
=
true
}
else
{
time
=
it
.
time
.
toFormatTime
()
}
}
adapter
.
submitList
(
items
)
}
}
override
fun
initListener
()
{
override
fun
initListener
()
{
super
.
initListener
()
super
.
initListener
()
onBackPressedDispatcher
.
addCallback
{
onBackPressedDispatcher
.
addCallback
{
finishToMain
()
if
(
currentTab
==
BOOKMARK_TAB
)
{
if
(
bookmarkAdapter
.
canBeforeFolder
())
{
bookmarkAdapter
.
beforeFolder
()
}
else
{
finishToMain
()
}
}
else
{
finishToMain
()
}
}
}
binding
.
flFanhui
.
setOnClickListener
{
binding
.
flFanhui
.
setOnClickListener
{
onBackPressedDispatcher
.
onBackPressed
()
onBackPressedDispatcher
.
onBackPressed
()
...
@@ -63,6 +85,7 @@ class BookMarkActivity : BaseActivity<ActivityBookMarkBinding>() {
...
@@ -63,6 +85,7 @@ class BookMarkActivity : BaseActivity<ActivityBookMarkBinding>() {
}
}
binding
.
tvTabBookmark
.
isSelected
=
true
binding
.
tvTabBookmark
.
isSelected
=
true
binding
.
tvTabHistory
.
isSelected
=
false
binding
.
tvTabHistory
.
isSelected
=
false
currentTab
=
BOOKMARK_TAB
}
}
binding
.
tvTabBookmark
.
callOnClick
()
binding
.
tvTabBookmark
.
callOnClick
()
...
@@ -72,10 +95,13 @@ class BookMarkActivity : BaseActivity<ActivityBookMarkBinding>() {
...
@@ -72,10 +95,13 @@ class BookMarkActivity : BaseActivity<ActivityBookMarkBinding>() {
}
}
binding
.
tvTabHistory
.
isSelected
=
true
binding
.
tvTabHistory
.
isSelected
=
true
binding
.
tvTabBookmark
.
isSelected
=
false
binding
.
tvTabBookmark
.
isSelected
=
false
currentTab
=
HISTORY_TAB
}
}
}
}
companion
object
{
private
val
BOOKMARK_TAB
=
"bookmark_tab"
private
val
HISTORY_TAB
=
"history_tab"
}
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/bookmark/BookmarkAdapter.kt
View file @
429245cd
package
com.base.browserwhite.ui.activity.bookmark
package
com.base.browserwhite.ui.activity.bookmark
import
android.content.Context
import
android.content.Context
import
android.graphics.Color
import
android.graphics.drawable.ColorDrawable
import
android.view.View
import
android.view.View
import
android.view.ViewGroup
import
android.view.ViewGroup
import
androidx.core.view.isVisible
import
androidx.recyclerview.widget.RecyclerView.ViewHolder
import
androidx.recyclerview.widget.RecyclerView.ViewHolder
import
com.base.browserwhite.R
import
com.base.browserwhite.R
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.databinding.ItemBookmarkBinding
import
com.base.browserwhite.databinding.ItemBookmarkBinding
import
com.base.browserwhite.utils.KotlinExt.toFormatTime
import
com.base.browserwhite.utils.XmlEx.inflate
import
com.base.browserwhite.utils.XmlEx.inflate
import
com.chad.library.adapter4.BaseQuickAdapter
import
com.chad.library.adapter4.BaseQuickAdapter
import
java.util.Random
class
BookmarkAdapter
:
BaseQuickAdapter
<
BookmarkBean
,
BookmarkAdapter
.
BookmarkHolder
>()
{
class
BookmarkAdapter
:
BaseQuickAdapter
<
BookmarkBean
,
BookmarkAdapter
.
BookmarkHolder
>()
{
var
currentFolder
=
BookmarkBean
.
folderRoot
var
changeFolderAction
:
((
folder
:
String
)
->
Unit
)?
=
null
inner
class
BookmarkHolder
(
view
:
View
)
:
ViewHolder
(
view
)
inner
class
BookmarkHolder
(
view
:
View
)
:
ViewHolder
(
view
)
override
fun
onBindViewHolder
(
holder
:
BookmarkHolder
,
position
:
Int
,
item
:
BookmarkBean
?)
{
override
fun
onBindViewHolder
(
holder
:
BookmarkHolder
,
position
:
Int
,
item
:
BookmarkBean
?)
{
...
@@ -21,8 +27,26 @@ class BookmarkAdapter : BaseQuickAdapter<BookmarkBean, BookmarkAdapter.BookmarkH
...
@@ -21,8 +27,26 @@ class BookmarkAdapter : BaseQuickAdapter<BookmarkBean, BookmarkAdapter.BookmarkH
}
}
val
binding
=
ItemBookmarkBinding
.
bind
(
holder
.
itemView
)
val
binding
=
ItemBookmarkBinding
.
bind
(
holder
.
itemView
)
binding
.
flTime
.
isVisible
=
item
.
showTime
val
context
=
holder
.
itemView
.
context
binding
.
tvTime
.
text
=
item
.
time
.
toFormatTime
()
binding
.
tvName
.
text
=
item
.
name
if
(!
item
.
isFolder
)
{
binding
.
card
.
radius
=
context
.
resources
.
getDimension
(
R
.
dimen
.
dp_5
)
binding
.
iv
.
visibility
=
View
.
GONE
binding
.
tvLetters
.
visibility
=
View
.
VISIBLE
binding
.
tvLetters
.
background
=
getRandomColorDrawable
()
binding
.
tvLetters
.
text
=
item
.
name
.
first
().
toString
()
}
else
{
binding
.
card
.
radius
=
0f
binding
.
tvLetters
.
visibility
=
View
.
GONE
binding
.
iv
.
visibility
=
View
.
VISIBLE
binding
.
iv
.
setImageResource
(
R
.
mipmap
.
wenjiajia_bookmark
)
}
binding
.
root
.
setOnClickListener
{
if
(!
item
.
isFolder
)
return
@setOnClickListener
currentFolder
=
item
.
name
changeFolderAction
?.
invoke
(
currentFolder
)
}
}
}
...
@@ -39,4 +63,22 @@ class BookmarkAdapter : BaseQuickAdapter<BookmarkBean, BookmarkAdapter.BookmarkH
...
@@ -39,4 +63,22 @@ class BookmarkAdapter : BaseQuickAdapter<BookmarkBean, BookmarkAdapter.BookmarkH
}
}
return
BookmarkHolder
(
layout
.
inflate
(
parent
))
return
BookmarkHolder
(
layout
.
inflate
(
parent
))
}
}
fun
getRandomColorDrawable
():
ColorDrawable
{
val
random
=
Random
()
val
red
:
Int
=
random
.
nextInt
(
256
)
val
green
:
Int
=
random
.
nextInt
(
256
)
val
blue
:
Int
=
random
.
nextInt
(
256
)
val
color
=
Color
.
rgb
(
red
,
green
,
blue
)
return
ColorDrawable
(
color
)
}
fun
canBeforeFolder
():
Boolean
{
return
currentFolder
!=
BookmarkBean
.
folderRoot
}
fun
beforeFolder
()
{
currentFolder
=
BookmarkBean
.
folderRoot
changeFolderAction
?.
invoke
(
currentFolder
)
}
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/bookmark/BookmarkEditActivity.kt
View file @
429245cd
package
com.base.browserwhite.ui.activity.bookmark
package
com.base.browserwhite.ui.activity.bookmark
import
android.annotation.SuppressLint
import
android.annotation.SuppressLint
import
android.content.Intent
import
android.graphics.Color
import
android.graphics.Color
import
androidx.activity.addCallback
import
androidx.activity.addCallback
import
androidx.core.view.updatePadding
import
androidx.core.view.updatePadding
import
androidx.core.widget.addTextChangedListener
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.bean.BookmarkBean
import
com.base.browserwhite.databinding.ActivityBookmarkEditBinding
import
com.base.browserwhite.databinding.ActivityBookmarkEditBinding
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.SpBeanUtils
import
com.base.browserwhite.utils.SpBeanUtils.BOOKMARK_SP_KEY
import
com.google.gson.Gson
class
BookmarkEditActivity
:
BaseActivity
<
ActivityBookmarkEditBinding
>()
{
class
BookmarkEditActivity
:
BaseActivity
<
ActivityBookmarkEditBinding
>()
{
...
@@ -25,11 +30,8 @@ class BookmarkEditActivity : BaseActivity<ActivityBookmarkEditBinding>() {
...
@@ -25,11 +30,8 @@ class BookmarkEditActivity : BaseActivity<ActivityBookmarkEditBinding>() {
binding
.
editName
.
setText
(
editBookmark
?.
name
)
binding
.
editName
.
setText
(
editBookmark
?.
name
)
binding
.
editUrl
.
setText
(
editBookmark
?.
url
)
binding
.
editUrl
.
setText
(
editBookmark
?.
url
)
binding
.
ivSelectorNav
.
isSelected
=
true
binding
.
ivSelectorNav
.
isSelected
=
true
if
(
editBookmark
?.
folder
.
equals
(
""
))
{
binding
.
tvFolder
.
text
=
editBookmark
?.
folder
binding
.
tvFolder
.
text
=
"Root Folder"
binding
.
tvSave
.
isEnabled
=
true
}
else
{
binding
.
tvFolder
.
text
=
editBookmark
?.
folder
}
}
}
override
fun
initListener
()
{
override
fun
initListener
()
{
...
@@ -40,6 +42,31 @@ class BookmarkEditActivity : BaseActivity<ActivityBookmarkEditBinding>() {
...
@@ -40,6 +42,31 @@ class BookmarkEditActivity : BaseActivity<ActivityBookmarkEditBinding>() {
binding
.
flFanhui
.
setOnClickListener
{
binding
.
flFanhui
.
setOnClickListener
{
onBackPressedDispatcher
.
onBackPressed
()
onBackPressedDispatcher
.
onBackPressed
()
}
}
binding
.
llFolder
.
setOnClickListener
{
BookmarkFolderActivity
.
selectFolder
=
editBookmark
?.
folder
?:
""
launcher
.
launch
(
Intent
(
this
,
BookmarkFolderActivity
::
class
.
java
))
{
editBookmark
?.
folder
=
it
.
data
?.
extras
?.
getString
(
"Folder"
,
""
)
?:
""
binding
.
tvFolder
.
text
=
editBookmark
?.
folder
?:
""
}
}
binding
.
editUrl
.
addTextChangedListener
{
binding
.
tvSave
.
isEnabled
=
!
it
.
isNullOrEmpty
()
}
binding
.
editName
.
addTextChangedListener
{
binding
.
tvSave
.
isEnabled
=
!
it
.
isNullOrEmpty
()
}
binding
.
tvSave
.
setOnClickListener
{
if
(
editBookmark
==
null
)
{
throw
Exception
(
"bug no BookmarkBean"
)
}
if
(
editBookmark
?.
folder
!=
BookmarkBean
.
folderRoot
)
{
val
folderBean
=
BookmarkBean
(
name
=
editBookmark
?.
folder
?:
""
,
isFolder
=
true
)
SpBeanUtils
.
addSpBean
(
BOOKMARK_SP_KEY
,
Gson
().
toJson
(
folderBean
))
}
SpBeanUtils
.
addSpBean
(
BOOKMARK_SP_KEY
,
Gson
().
toJson
(
editBookmark
))
finish
()
}
}
}
companion
object
{
companion
object
{
...
...
app/src/main/java/com/base/browserwhite/ui/activity/bookmark/BookmarkFolderActivity.kt
0 → 100644
View file @
429245cd
package
com.base.browserwhite.ui.activity.bookmark
import
android.content.Intent
import
android.graphics.Color
import
androidx.activity.addCallback
import
androidx.core.view.updatePadding
import
com.base.browserwhite.databinding.ActivityBookmarkFolderBinding
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.SpBeanUtils
import
com.base.browserwhite.utils.SpBeanUtils.BOOKMARK_FOLDER_SP_KEY
class
BookmarkFolderActivity
:
BaseActivity
<
ActivityBookmarkFolderBinding
>()
{
private
lateinit
var
adapter
:
BookmarkFolderAdapter
override
val
binding
:
ActivityBookmarkFolderBinding
by
lazy
{
ActivityBookmarkFolderBinding
.
inflate
(
layoutInflater
)
}
override
fun
initView
()
{
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
WHITE
)
binding
.
root
.
updatePadding
(
top
=
BarUtils
.
getStatusBarHeight
())
binding
.
ivRootSelector
.
isSelected
=
selectFolder
==
"Root Directory"
adapter
=
BookmarkFolderAdapter
(
selectFolder
)
{
setResult
(
0
,
Intent
().
putExtra
(
"Folder"
,
it
))
finish
()
}
binding
.
rv
.
adapter
=
adapter
}
override
fun
initListener
()
{
super
.
initListener
()
onBackPressedDispatcher
.
addCallback
{
finish
()
}
binding
.
flFanhui
.
setOnClickListener
{
onBackPressedDispatcher
.
onBackPressed
()
}
binding
.
ivNewFolder
.
setOnClickListener
{
startActivity
(
Intent
(
this
,
BookmarkFolderAddActivity
::
class
.
java
))
}
}
private
fun
initData
()
{
val
spList
=
SpBeanUtils
.
getSpBeanList
(
BOOKMARK_FOLDER_SP_KEY
)
adapter
.
submitList
(
spList
)
}
override
fun
onResume
()
{
super
.
onResume
()
initData
()
}
companion
object
{
var
selectFolder
:
String
=
"Root Directory"
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/bookmark/BookmarkFolderAdapter.kt
0 → 100644
View file @
429245cd
package
com.base.browserwhite.ui.activity.bookmark
import
android.content.Context
import
android.view.View
import
android.view.ViewGroup
import
androidx.recyclerview.widget.RecyclerView.ViewHolder
import
com.base.browserwhite.R
import
com.base.browserwhite.databinding.ItemBookmarkFolderBinding
import
com.base.browserwhite.utils.XmlEx.inflate
import
com.chad.library.adapter4.BaseQuickAdapter
class
BookmarkFolderAdapter
(
val
selectFolder
:
String
,
val
clickAction
:
(
folder
:
String
)
->
Unit
)
:
BaseQuickAdapter
<
String
,
BookmarkFolderAdapter
.
BookmarkFolderViewHolder
>()
{
inner
class
BookmarkFolderViewHolder
(
view
:
View
)
:
ViewHolder
(
view
)
override
fun
onBindViewHolder
(
holder
:
BookmarkFolderViewHolder
,
position
:
Int
,
item
:
String
?)
{
if
(
item
==
null
)
return
val
binding
=
ItemBookmarkFolderBinding
.
bind
(
holder
.
itemView
)
binding
.
tvName
.
text
=
item
binding
.
ivSelector
.
isSelected
=
item
==
selectFolder
binding
.
root
.
setOnClickListener
{
clickAction
.
invoke
(
item
)
}
}
override
fun
onCreateViewHolder
(
context
:
Context
,
parent
:
ViewGroup
,
viewType
:
Int
):
BookmarkFolderViewHolder
{
return
BookmarkFolderViewHolder
(
R
.
layout
.
item_bookmark_folder
.
inflate
(
parent
))
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/bookmark/BookmarkFolderAddActivity.kt
0 → 100644
View file @
429245cd
package
com.base.browserwhite.ui.activity.bookmark
import
android.graphics.Color
import
androidx.activity.addCallback
import
androidx.core.view.updatePadding
import
androidx.core.widget.addTextChangedListener
import
com.base.browserwhite.databinding.ActivityBookmarkFolderAddBinding
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.SpBeanUtils
import
com.base.browserwhite.utils.SpBeanUtils.BOOKMARK_FOLDER_SP_KEY
class
BookmarkFolderAddActivity
:
BaseActivity
<
ActivityBookmarkFolderAddBinding
>()
{
override
val
binding
:
ActivityBookmarkFolderAddBinding
by
lazy
{
ActivityBookmarkFolderAddBinding
.
inflate
(
layoutInflater
)
}
override
fun
initView
()
{
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
WHITE
)
binding
.
root
.
updatePadding
(
top
=
BarUtils
.
getStatusBarHeight
())
binding
.
editName
.
setText
(
editFolder
)
}
override
fun
initListener
()
{
super
.
initListener
()
onBackPressedDispatcher
.
addCallback
{
finish
()
}
binding
.
flFanhui
.
setOnClickListener
{
onBackPressedDispatcher
.
onBackPressed
()
}
binding
.
editName
.
addTextChangedListener
{
binding
.
tvSave
.
isEnabled
=
!
it
.
isNullOrEmpty
()
}
binding
.
tvSave
.
setOnClickListener
{
SpBeanUtils
.
addSpBean
(
BOOKMARK_FOLDER_SP_KEY
,
binding
.
editName
.
text
.
toString
())
finish
()
}
}
companion
object
{
var
editFolder
:
String
=
""
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/webbrowser/WebBrowserActivity.kt
View file @
429245cd
...
@@ -18,6 +18,7 @@ import com.base.browserwhite.bean.ConstObject.GOOGLE
...
@@ -18,6 +18,7 @@ import com.base.browserwhite.bean.ConstObject.GOOGLE
import
com.base.browserwhite.bean.ConstObject.searchEngineSp
import
com.base.browserwhite.bean.ConstObject.searchEngineSp
import
com.base.browserwhite.databinding.ActivityWebBrowserBinding
import
com.base.browserwhite.databinding.ActivityWebBrowserBinding
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.ui.activity.bookmark.BookmarkActivity
import
com.base.browserwhite.ui.activity.bookmark.BookmarkEditActivity
import
com.base.browserwhite.ui.activity.bookmark.BookmarkEditActivity
import
com.base.browserwhite.ui.views.DialogViews.showSearchEngineDialog
import
com.base.browserwhite.ui.views.DialogViews.showSearchEngineDialog
import
com.base.browserwhite.ui.views.DialogViews.showWebBrowserMoreDialog
import
com.base.browserwhite.ui.views.DialogViews.showWebBrowserMoreDialog
...
@@ -201,13 +202,17 @@ class WebBrowserActivity : BaseActivity<ActivityWebBrowserBinding>() {
...
@@ -201,13 +202,17 @@ class WebBrowserActivity : BaseActivity<ActivityWebBrowserBinding>() {
}
}
}
}
binding
.
ivMore
.
setOnClickListener
{
binding
.
ivMore
.
setOnClickListener
{
showWebBrowserMoreDialog
(
joinAction
=
{
showWebBrowserMoreDialog
(
bookmarkAction
=
{
startActivity
(
Intent
(
this
,
BookmarkActivity
::
class
.
java
))
},
joinAction
=
{
// val url = currentFragment?.url ?: ""
// val url = currentFragment?.url ?: ""
// val value = Gson().toJson(BookmarkBean(url = url, time = System.currentTimeMillis()))
// val value = Gson().toJson(BookmarkBean(url = url, time = System.currentTimeMillis()))
// SpBeanUtils.addSpBean(BOOKMARK, value)
// SpBeanUtils.addSpBean(BOOKMARK, value)
BookmarkEditActivity
.
editBookmark
=
currentFragment
?.
bookmarkBean
BookmarkEditActivity
.
editBookmark
=
currentFragment
?.
bookmarkBean
startActivity
(
Intent
(
this
,
BookmarkEditActivity
::
class
.
java
))
startActivity
(
Intent
(
this
,
BookmarkEditActivity
::
class
.
java
))
})
})
}
}
}
}
...
...
app/src/main/java/com/base/browserwhite/ui/fragment/HomeFragment.kt
View file @
429245cd
...
@@ -28,7 +28,7 @@ import com.base.browserwhite.databinding.FragmentHomeBinding
...
@@ -28,7 +28,7 @@ import com.base.browserwhite.databinding.FragmentHomeBinding
import
com.base.browserwhite.fcm.NotificationUtil
import
com.base.browserwhite.fcm.NotificationUtil
import
com.base.browserwhite.help.NewsUtils.requestNews
import
com.base.browserwhite.help.NewsUtils.requestNews
import
com.base.browserwhite.ui.activity.appprocess.AppProcessActivity
import
com.base.browserwhite.ui.activity.appprocess.AppProcessActivity
import
com.base.browserwhite.ui.activity.bookmark.Book
M
arkActivity
import
com.base.browserwhite.ui.activity.bookmark.Book
m
arkActivity
import
com.base.browserwhite.ui.activity.cleanjunk.ScanJunkActivity
import
com.base.browserwhite.ui.activity.cleanjunk.ScanJunkActivity
import
com.base.browserwhite.ui.activity.news.NewsActivity
import
com.base.browserwhite.ui.activity.news.NewsActivity
import
com.base.browserwhite.ui.activity.news.NewsDetailActivity
import
com.base.browserwhite.ui.activity.news.NewsDetailActivity
...
@@ -118,7 +118,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
...
@@ -118,7 +118,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
}
}
BOOKMARK
->
{
BOOKMARK
->
{
requireContext
().
startActivity
(
Intent
(
requireContext
(),
Book
M
arkActivity
::
class
.
java
))
requireContext
().
startActivity
(
Intent
(
requireContext
(),
Book
m
arkActivity
::
class
.
java
))
}
}
}
}
...
...
app/src/main/java/com/base/browserwhite/ui/views/DialogViews.kt
View file @
429245cd
...
@@ -325,7 +325,12 @@ object DialogViews {
...
@@ -325,7 +325,12 @@ object DialogViews {
}
}
fun
Context
.
showWebBrowserMoreDialog
(
joinAction
:
(()
->
Unit
)?
=
null
)
{
fun
Context
.
showWebBrowserMoreDialog
(
bookmarkAction
:
(()
->
Unit
)?
=
null
,
//打开书签
joinAction
:
(()
->
Unit
)?
=
null
//加入书签
)
{
val
dialog
=
BottomSheetDialog
(
this
)
val
dialog
=
BottomSheetDialog
(
this
)
val
binding
=
DialogMoreWebbrowserBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
val
binding
=
DialogMoreWebbrowserBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
dialog
.
setContentView
(
binding
.
root
)
dialog
.
setContentView
(
binding
.
root
)
...
@@ -341,10 +346,18 @@ object DialogViews {
...
@@ -341,10 +346,18 @@ object DialogViews {
binding
.
tvCancel
.
setOnClickListener
{
binding
.
tvCancel
.
setOnClickListener
{
dialog
.
dismiss
()
dialog
.
dismiss
()
}
}
arrayOf
(
binding
.
ivBookmark
,
binding
.
tvBookmark
).
forEach
{
it
.
setOnClickListener
{
bookmarkAction
?.
invoke
()
}
}
binding
.
llJoinBookmark
.
setOnClickListener
{
arrayOf
(
binding
.
ivJoinBookmark
,
binding
.
tvJoinBookmark
).
forEach
{
joinAction
?.
invoke
()
it
.
setOnClickListener
{
joinAction
?.
invoke
()
}
}
}
}
}
...
...
app/src/main/java/com/base/browserwhite/utils/SpBeanUtils.kt
View file @
429245cd
...
@@ -3,22 +3,23 @@ package com.base.browserwhite.utils
...
@@ -3,22 +3,23 @@ package com.base.browserwhite.utils
object
SpBeanUtils
{
object
SpBeanUtils
{
const
val
BOOKMARK_SP_KEY
=
"bookmark_sp_key"
const
val
BOOKMARK_SP_KEY
=
"bookmark_sp_key"
//书签
const
val
SEARCH_RECORD_SP_KEY
=
"SEARCH_RECORD_SP_KEY"
const
val
BOOKMARK_FOLDER_SP_KEY
=
"bookmark_folder_sp_key"
//书签目录
const
val
SEARCH_RECORD_SP_KEY
=
"search_record_sp_key"
fun
getSpBeanList
(
key
:
String
):
List
<
String
>
{
fun
getSpBeanList
(
key
:
String
):
List
<
String
>
{
val
sp
=
AppPreferences
.
getInstance
().
getString
(
key
,
""
)
val
sp
=
AppPreferences
.
getInstance
().
getString
(
key
,
""
)
return
if
(
sp
.
equals
(
""
))
{
return
if
(
sp
.
equals
(
""
))
{
listOf
()
listOf
()
}
else
{
}
else
{
sp
.
split
(
"
,
"
)
sp
.
split
(
"
|||
"
)
}
}
}
}
fun
deleteSpBean
(
key
:
String
,
value
:
String
)
{
fun
deleteSpBean
(
key
:
String
,
value
:
String
)
{
val
list
=
getSpBeanList
(
key
).
toMutableList
()
val
list
=
getSpBeanList
(
key
).
toMutableList
()
list
.
remove
(
value
)
list
.
remove
(
value
)
val
string
=
list
.
joinToString
(
separator
=
"
,
"
)
val
string
=
list
.
joinToString
(
separator
=
"
|||
"
)
AppPreferences
.
getInstance
().
put
(
key
,
string
)
AppPreferences
.
getInstance
().
put
(
key
,
string
)
}
}
...
@@ -26,7 +27,7 @@ object SpBeanUtils {
...
@@ -26,7 +27,7 @@ object SpBeanUtils {
fun
addSpBean
(
key
:
String
,
value
:
String
)
{
fun
addSpBean
(
key
:
String
,
value
:
String
)
{
val
list
=
getSpBeanList
(
key
).
toMutableList
()
val
list
=
getSpBeanList
(
key
).
toMutableList
()
list
.
add
(
value
)
list
.
add
(
value
)
val
string
=
list
.
joinToString
(
separator
=
"
,
"
)
val
string
=
list
.
joinToString
(
separator
=
"
|||
"
)
AppPreferences
.
getInstance
().
put
(
key
,
string
)
AppPreferences
.
getInstance
().
put
(
key
,
string
)
}
}
...
...
app/src/main/java/com/base/browserwhite/utils/ToastUtils.kt
0 → 100644
View file @
429245cd
package
com.base.browserwhite.utils
import
android.content.Context
import
android.widget.Toast
object
ToastUtils
{
fun
Context
.
toast
(
content
:
String
)
{
Toast
.
makeText
(
this
,
content
,
Toast
.
LENGTH_SHORT
).
show
()
}
}
\ No newline at end of file
app/src/main/res/
drawable/bg_add_nav_selector
.xml
→
app/src/main/res/
color/color_enable_999999_ffffff
.xml
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:
drawable=
"@mipmap/x_weixuan_nav"
android:state_select
ed=
"false"
/>
<item
android:
color=
"#999999"
android:state_enabl
ed=
"false"
/>
<item
android:
drawable=
"@mipmap/x_xuanze_nav"
android:state_select
ed=
"true"
/>
<item
android:
color=
"#ffffff"
android:state_enabl
ed=
"true"
/>
</selector>
</selector>
\ No newline at end of file
app/src/main/res/drawable/bg_0571ed_20.xml
0 → 100644
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<solid
android:color=
"#0571ED"
/>
<corners
android:radius=
"25dp"
/>
</shape>
\ No newline at end of file
app/src/main/res/drawable/bg_border_selector_bookmark.xml
0 → 100644
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:drawable=
"@drawable/bg_ffffff_15"
android:state_selected=
"true"
/>
<item
android:drawable=
"@android:color/transparent"
android:state_selected=
"false"
/>
</selector>
\ No newline at end of file
app/src/main/res/drawable/bg_border_selector_save.xml
0 → 100644
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:drawable=
"@drawable/bg_f4f5f7_20"
android:state_enabled=
"false"
/>
<item
android:drawable=
"@drawable/bg_0571ed_20"
android:state_enabled=
"true"
/>
</selector>
\ No newline at end of file
app/src/main/res/drawable/bg_f4f5f7_20.xml
0 → 100644
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<solid
android:color=
"#F4F5F7"
/>
<corners
android:radius=
"20dp"
/>
</shape>
\ No newline at end of file
app/src/main/res/drawable/bg_selector_bookmark.xml
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:drawable=
"@drawable/bg_ffffff_15"
android:state_selected=
"true"
/>
<item
android:drawable=
"@mipmap/x_weixuan_nav"
android:state_selected=
"false"
/>
<item
android:drawable=
"@android:color/transparent"
android:state_selected=
"false"
/>
<item
android:drawable=
"@mipmap/x_xuanze_nav"
android:state_selected=
"true"
/>
</selector>
</selector>
\ No newline at end of file
app/src/main/res/layout/activity_book
_
mark.xml
→
app/src/main/res/layout/activity_bookmark.xml
View file @
429245cd
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
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=
"vertical"
tools:context=
".ui.activity.bookmark.Book
M
arkActivity"
>
tools:context=
".ui.activity.bookmark.Book
m
arkActivity"
>
<FrameLayout
<FrameLayout
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
...
@@ -60,7 +60,7 @@
...
@@ -60,7 +60,7 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_gravity=
"center_vertical"
android:background=
"@drawable/bg_selector_bookmark"
android:background=
"@drawable/bg_
border_
selector_bookmark"
android:gravity=
"center"
android:gravity=
"center"
android:paddingHorizontal=
"12dp"
android:paddingHorizontal=
"12dp"
android:paddingVertical=
"11dp"
android:paddingVertical=
"11dp"
...
@@ -74,7 +74,7 @@
...
@@ -74,7 +74,7 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_gravity=
"center_vertical"
android:layout_marginStart=
"12dp"
android:layout_marginStart=
"12dp"
android:background=
"@drawable/bg_selector_bookmark"
android:background=
"@drawable/bg_
border_
selector_bookmark"
android:gravity=
"center"
android:gravity=
"center"
android:paddingHorizontal=
"12dp"
android:paddingHorizontal=
"12dp"
android:paddingVertical=
"11dp"
android:paddingVertical=
"11dp"
...
...
app/src/main/res/layout/activity_bookmark_edit.xml
View file @
429245cd
...
@@ -52,11 +52,11 @@
...
@@ -52,11 +52,11 @@
android:layout_height=
"35dp"
android:layout_height=
"35dp"
android:layout_gravity=
"center_vertical|end"
android:layout_gravity=
"center_vertical|end"
android:layout_marginEnd=
"16dp"
android:layout_marginEnd=
"16dp"
android:background=
"@drawable/bg_
0571ed_25
"
android:background=
"@drawable/bg_
border_selector_save
"
android:enabled=
"false"
android:enabled=
"false"
android:gravity=
"center"
android:gravity=
"center"
android:text=
"Save"
android:text=
"Save"
android:textColor=
"@color/
white
"
android:textColor=
"@color/
color_enable_999999_ffffff
"
android:textSize=
"18sp"
android:textSize=
"18sp"
tools:ignore=
"ContentDescription,HardcodedText"
/>
tools:ignore=
"ContentDescription,HardcodedText"
/>
...
@@ -104,6 +104,7 @@
...
@@ -104,6 +104,7 @@
tools:text=
"https://google.com"
/>
tools:text=
"https://google.com"
/>
<LinearLayout
<LinearLayout
android:id=
"@+id/ll_folder"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"56dp"
android:layout_height=
"56dp"
android:layout_marginHorizontal=
"15dp"
android:layout_marginHorizontal=
"15dp"
...
@@ -126,11 +127,13 @@
...
@@ -126,11 +127,13 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_gravity=
"center_vertical"
android:layout_weight=
"1"
android:layout_weight=
"1"
android:ellipsize=
"middle"
android:gravity=
"end"
android:gravity=
"end"
android:paddingHorizontal=
"8dp"
android:paddingHorizontal=
"8dp"
android:singleLine=
"true"
android:textColor=
"@color/black"
android:textColor=
"@color/black"
android:textSize=
"16sp"
android:textSize=
"16sp"
tools:text=
"Root
Folder
"
/>
tools:text=
"Root
Directory
"
/>
<ImageView
<ImageView
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
...
@@ -154,7 +157,7 @@
...
@@ -154,7 +157,7 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_gravity=
"center_vertical"
android:src=
"@drawable/bg_
add_nav_selector
"
android:src=
"@drawable/bg_
selector_bookmark
"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
<TextView
<TextView
...
...
app/src/main/res/layout/activity_bookmark_folder.xml
0 → 100644
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:id=
"@+id/main"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
tools:context=
".ui.activity.bookmark.BookmarkFolderActivity"
>
<FrameLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white"
app:layout_constraintTop_toTopOf=
"parent"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical|start"
android:layout_marginVertical=
"10dp"
android:layout_marginStart=
"10dp"
>
<FrameLayout
android:id=
"@+id/fl_fanhui"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"10dp"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@mipmap/h_fanhui"
tools:ignore=
"ContentDescription"
/>
</FrameLayout>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:text=
"Select Folder"
android:textSize=
"19sp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText"
/>
</LinearLayout>
<ImageView
android:id=
"@+id/iv_new_folder"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical|end"
android:layout_marginEnd=
"18dp"
android:enabled=
"false"
android:gravity=
"center"
android:src=
"@mipmap/tianjia_bookmark"
android:text=
"Save"
android:textColor=
"@color/white"
android:textSize=
"18sp"
tools:ignore=
"ContentDescription,HardcodedText"
/>
</FrameLayout>
<FrameLayout
android:layout_width=
"match_parent"
android:layout_height=
"50dp"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginStart=
"16dp"
android:text=
"Root Directory"
android:textColor=
"@color/black"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"1px"
android:layout_gravity=
"bottom"
android:background=
"#E5E6EB"
/>
<ImageView
android:id=
"@+id/iv_root_selector"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical|end"
android:layout_marginEnd=
"18dp"
android:src=
"@drawable/bg_selector_bookmark"
tools:ignore=
"ContentDescription"
/>
</FrameLayout>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"2dp"
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem=
"@layout/item_bookmark_folder"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/activity_bookmark_folder_add.xml
0 → 100644
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:id=
"@+id/main"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
tools:context=
".ui.activity.bookmark.BookmarkFolderAddActivity"
>
<FrameLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white"
app:layout_constraintTop_toTopOf=
"parent"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical|start"
android:layout_marginVertical=
"10dp"
android:layout_marginStart=
"10dp"
>
<FrameLayout
android:id=
"@+id/fl_fanhui"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"10dp"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@mipmap/h_fanhui"
tools:ignore=
"ContentDescription"
/>
</FrameLayout>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:text=
"New Folder"
android:textSize=
"19sp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText"
/>
</LinearLayout>
<TextView
android:id=
"@+id/tv_save"
android:layout_width=
"93dp"
android:layout_height=
"43dp"
android:layout_gravity=
"center_vertical|end"
android:layout_marginEnd=
"16dp"
android:background=
"@drawable/bg_border_selector_save"
android:enabled=
"false"
android:gravity=
"center"
android:text=
"Save"
android:textColor=
"@color/color_enable_999999_ffffff"
android:textSize=
"18sp"
tools:ignore=
"ContentDescription,HardcodedText"
/>
</FrameLayout>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"22dp"
android:text=
"Name"
android:textColor=
"@color/black"
android:textSize=
"15sp"
tools:ignore=
"HardcodedText"
/>
<EditText
android:id=
"@+id/edit_name"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginHorizontal=
"15dp"
android:layout_marginTop=
"20dp"
android:textSize=
"17sp"
tools:ignore=
"Autofill,LabelFor,TextFields"
/>
<LinearLayout
android:id=
"@+id/ll_folder"
android:layout_width=
"match_parent"
android:layout_height=
"56dp"
android:layout_marginHorizontal=
"15dp"
android:layout_marginTop=
"36dp"
android:background=
"@drawable/bg_edf1f4_15"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:layout_marginStart=
"15dp"
android:text=
"Name"
android:textColor=
"@color/black"
android:textSize=
"14sp"
tools:ignore=
"HardcodedText"
/>
<TextView
android:id=
"@+id/tv_folder"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_weight=
"1"
android:gravity=
"end"
android:paddingHorizontal=
"8dp"
android:textColor=
"#A7A7AB"
android:textSize=
"16sp"
tools:text=
"Root Directory"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/dialog_more_webbrowser.xml
View file @
429245cd
...
@@ -22,51 +22,52 @@
...
@@ -22,51 +22,52 @@
android:orientation=
"horizontal"
>
android:orientation=
"horizontal"
>
<ImageView
<ImageView
android:id=
"@+id/
ll
_bookmark"
android:id=
"@+id/
iv
_bookmark"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
android:src=
"@mipmap/bookmark_browser"
android:src=
"@mipmap/bookmark_browser"
app:layout_constraintEnd_toStartOf=
"@id/
ll
_history"
app:layout_constraintEnd_toStartOf=
"@id/
iv
_history"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
<ImageView
<ImageView
android:id=
"@+id/
ll
_history"
android:id=
"@+id/
iv
_history"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
android:src=
"@mipmap/history_browser"
android:src=
"@mipmap/history_browser"
app:layout_constraintEnd_toStartOf=
"@id/
ll
_refresh"
app:layout_constraintEnd_toStartOf=
"@id/
iv
_refresh"
app:layout_constraintStart_toEndOf=
"@id/
ll
_bookmark"
app:layout_constraintStart_toEndOf=
"@id/
iv
_bookmark"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
<ImageView
<ImageView
android:id=
"@+id/
ll
_refresh"
android:id=
"@+id/
iv
_refresh"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
android:src=
"@mipmap/refresh_browser"
android:src=
"@mipmap/refresh_browser"
app:layout_constraintEnd_toStartOf=
"@id/
ll
_join_bookmark"
app:layout_constraintEnd_toStartOf=
"@id/
iv
_join_bookmark"
app:layout_constraintStart_toEndOf=
"@id/
ll
_history"
app:layout_constraintStart_toEndOf=
"@id/
iv
_history"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
<ImageView
<ImageView
android:id=
"@+id/
ll
_join_bookmark"
android:id=
"@+id/
iv
_join_bookmark"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
android:src=
"@mipmap/join_browser"
android:src=
"@mipmap/join_browser"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@id/
ll
_refresh"
app:layout_constraintStart_toEndOf=
"@id/
iv
_refresh"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
<TextView
<TextView
android:id=
"@+id/tv_bookmark"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
...
@@ -74,13 +75,13 @@
...
@@ -74,13 +75,13 @@
android:text=
"Bookmark"
android:text=
"Bookmark"
android:textColor=
"#263847"
android:textColor=
"#263847"
android:textSize=
"13sp"
android:textSize=
"13sp"
app:layout_constraintEnd_toEndOf=
"@id/
ll
_bookmark"
app:layout_constraintEnd_toEndOf=
"@id/
iv
_bookmark"
app:layout_constraintStart_toStartOf=
"@id/
ll
_bookmark"
app:layout_constraintStart_toStartOf=
"@id/
iv
_bookmark"
app:layout_constraintTop_toBottomOf=
"@id/
ll
_bookmark"
app:layout_constraintTop_toBottomOf=
"@id/
iv
_bookmark"
tools:ignore=
"HardcodedText"
/>
tools:ignore=
"HardcodedText"
/>
<TextView
<TextView
android:id=
"@+id/tv_history"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
...
@@ -88,12 +89,13 @@
...
@@ -88,12 +89,13 @@
android:text=
"History"
android:text=
"History"
android:textColor=
"#263847"
android:textColor=
"#263847"
android:textSize=
"13sp"
android:textSize=
"13sp"
app:layout_constraintEnd_toEndOf=
"@id/
ll
_history"
app:layout_constraintEnd_toEndOf=
"@id/
iv
_history"
app:layout_constraintStart_toStartOf=
"@id/
ll
_history"
app:layout_constraintStart_toStartOf=
"@id/
iv
_history"
app:layout_constraintTop_toBottomOf=
"@id/
ll
_history"
app:layout_constraintTop_toBottomOf=
"@id/
iv
_history"
tools:ignore=
"HardcodedText"
/>
tools:ignore=
"HardcodedText"
/>
<TextView
<TextView
android:id=
"@+id/tv_refresh"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
...
@@ -101,13 +103,14 @@
...
@@ -101,13 +103,14 @@
android:text=
"Refresh"
android:text=
"Refresh"
android:textColor=
"#263847"
android:textColor=
"#263847"
android:textSize=
"13sp"
android:textSize=
"13sp"
app:layout_constraintEnd_toEndOf=
"@id/
ll
_refresh"
app:layout_constraintEnd_toEndOf=
"@id/
iv
_refresh"
app:layout_constraintStart_toStartOf=
"@id/
ll
_refresh"
app:layout_constraintStart_toStartOf=
"@id/
iv
_refresh"
app:layout_constraintTop_toBottomOf=
"@id/
ll
_refresh"
app:layout_constraintTop_toBottomOf=
"@id/
iv
_refresh"
tools:ignore=
"HardcodedText"
/>
tools:ignore=
"HardcodedText"
/>
<TextView
<TextView
android:id=
"@+id/tv_join_bookmark"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_gravity=
"center_horizontal"
...
@@ -115,9 +118,9 @@
...
@@ -115,9 +118,9 @@
android:text=
"Join Bookmark"
android:text=
"Join Bookmark"
android:textColor=
"#263847"
android:textColor=
"#263847"
android:textSize=
"13sp"
android:textSize=
"13sp"
app:layout_constraintEnd_toEndOf=
"@id/
ll
_join_bookmark"
app:layout_constraintEnd_toEndOf=
"@id/
iv
_join_bookmark"
app:layout_constraintStart_toStartOf=
"@id/
ll
_join_bookmark"
app:layout_constraintStart_toStartOf=
"@id/
iv
_join_bookmark"
app:layout_constraintTop_toBottomOf=
"@id/
ll
_join_bookmark"
app:layout_constraintTop_toBottomOf=
"@id/
iv
_join_bookmark"
tools:ignore=
"HardcodedText"
/>
tools:ignore=
"HardcodedText"
/>
...
...
app/src/main/res/layout/item_bookmark.xml
View file @
429245cd
...
@@ -7,35 +7,6 @@
...
@@ -7,35 +7,6 @@
android:background=
"@color/white"
android:background=
"@color/white"
android:orientation=
"horizontal"
>
android:orientation=
"horizontal"
>
<FrameLayout
android:id=
"@+id/fl_time"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintBottom_toTopOf=
"@id/card"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
>
<TextView
android:id=
"@+id/tv_time"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginVertical=
"10dp"
android:layout_marginStart=
"15dp"
android:text=
"Today"
android:textColor=
"@color/black"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"1px"
android:layout_gravity=
"bottom"
android:background=
"#E5E6EB"
/>
</FrameLayout>
<androidx.cardview.widget.CardView
<androidx.cardview.widget.CardView
android:id=
"@+id/card"
android:id=
"@+id/card"
android:layout_width=
"40dp"
android:layout_width=
"40dp"
...
@@ -43,9 +14,9 @@
...
@@ -43,9 +14,9 @@
android:layout_marginVertical=
"4dp"
android:layout_marginVertical=
"4dp"
android:layout_marginStart=
"15dp"
android:layout_marginStart=
"15dp"
app:cardElevation=
"0dp"
app:cardElevation=
"0dp"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
>
app:layout_constraintTop_toBottomOf=
"@id/fl_time"
>
<ImageView
<ImageView
android:id=
"@+id/iv"
android:id=
"@+id/iv"
...
@@ -54,14 +25,16 @@
...
@@ -54,14 +25,16 @@
android:src=
"@mipmap/wenjiajia_bookmark"
android:src=
"@mipmap/wenjiajia_bookmark"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
<
Image
View
<
Text
View
android:id=
"@+id/
iv_shipin
"
android:id=
"@+id/
tv_letters
"
android:layout_width=
"
wrap_cont
ent"
android:layout_width=
"
match_par
ent"
android:layout_height=
"
wrap_cont
ent"
android:layout_height=
"
match_par
ent"
android:layout_gravity=
"center"
android:layout_gravity=
"center"
android:src=
"@mipmap/h_shipin"
android:gravity=
"center"
android:visibility=
"gone"
android:text=
"G"
tools:ignore=
"ContentDescription"
/>
android:textColor=
"@color/white"
android:textSize=
"16sp"
tools:ignore=
"ContentDescription,HardcodedText"
/>
</androidx.cardview.widget.CardView>
</androidx.cardview.widget.CardView>
...
@@ -109,9 +82,10 @@
...
@@ -109,9 +82,10 @@
</FrameLayout>
</FrameLayout>
<View
<View
android:layout_marginBottom=
"2dp"
android:layout_marginTop=
"20dp"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"1px"
android:layout_height=
"1px"
android:layout_marginTop=
"15dp"
android:background=
"#E5E6EB"
android:background=
"#E5E6EB"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
...
...
app/src/main/res/layout/item_bookmark_folder.xml
0 → 100644
View file @
429245cd
<?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:orientation=
"horizontal"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical|start"
android:layout_marginVertical=
"10dp"
android:layout_marginStart=
"15dp"
android:src=
"@mipmap/wenjiajia_bookmark"
tools:ignore=
"ContentDescription"
/>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginHorizontal=
"16dp"
android:layout_weight=
"1"
android:textColor=
"@color/black"
android:textSize=
"18sp"
tools:text=
"My Favorite"
/>
<ImageView
android:id=
"@+id/iv_selector"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_margin=
"18dp"
android:src=
"@drawable/bg_selector_bookmark"
tools:ignore=
"ContentDescription"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/item_bookmark_history.xml
0 → 100644
View file @
429245cd
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white"
android:orientation=
"horizontal"
>
<FrameLayout
android:id=
"@+id/fl_time"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintBottom_toTopOf=
"@id/card"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
>
<TextView
android:id=
"@+id/tv_time"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginVertical=
"10dp"
android:layout_marginStart=
"15dp"
android:text=
"Today"
android:textColor=
"@color/black"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"1px"
android:layout_gravity=
"bottom"
android:background=
"#E5E6EB"
/>
</FrameLayout>
<androidx.cardview.widget.CardView
android:id=
"@+id/card"
android:layout_width=
"40dp"
android:layout_height=
"40dp"
android:layout_marginVertical=
"4dp"
android:layout_marginStart=
"15dp"
app:cardElevation=
"0dp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/fl_time"
>
<TextView
android:id=
"@+id/tv_letters"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_gravity=
"center"
android:gravity=
"center"
android:text=
"G"
android:textColor=
"@color/white"
android:textSize=
"16sp"
tools:ignore=
"ContentDescription,HardcodedText"
/>
</androidx.cardview.widget.CardView>
<LinearLayout
android:id=
"@+id/ll"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_marginHorizontal=
"5dp"
android:layout_marginStart=
"16dp"
android:orientation=
"vertical"
app:layout_constraintBottom_toBottomOf=
"@id/card"
app:layout_constraintEnd_toStartOf=
"@id/fl_more"
app:layout_constraintStart_toEndOf=
"@id/card"
app:layout_constraintTop_toTopOf=
"@id/card"
>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:ellipsize=
"end"
android:singleLine=
"true"
android:text=
"My Favorite"
android:textColor=
"#010101"
android:textSize=
"18sp"
tools:ignore=
"HardcodedText"
/>
</LinearLayout>
<FrameLayout
android:id=
"@+id/fl_more"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginEnd=
"8dp"
android:background=
"?android:attr/selectableItemBackground"
android:padding=
"8dp"
app:layout_constraintBottom_toBottomOf=
"@id/card"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintTop_toTopOf=
"@id/card"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@mipmap/geduo"
tools:ignore=
"ContentDescription"
/>
</FrameLayout>
<View
android:layout_width=
"0dp"
android:layout_height=
"1px"
android:layout_marginTop=
"15dp"
android:background=
"#E5E6EB"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"@id/ll"
app:layout_constraintTop_toBottomOf=
"@id/ll"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
\ 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