Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
M
Magisk
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
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
Magisk
Commits
3490ba0a
Commit
3490ba0a
authored
Jan 12, 2020
by
topjohnwu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Redesign is now the new norm
parent
14494869
Hide whitespace changes
Inline
Side-by-side
Showing
90 changed files
with
313 additions
and
313 deletions
+313
-313
b.kt
app/src/main/java/a/b.kt
+1
-1
f.java
app/src/main/java/a/f.java
+1
-1
m.java
app/src/main/java/a/m.java
+1
-1
Config.kt
app/src/main/java/com/topjohnwu/magisk/Config.kt
+1
-1
Hacks.kt
app/src/main/java/com/topjohnwu/magisk/Hacks.kt
+3
-3
RedesignModule.kt
app/src/main/java/com/topjohnwu/magisk/di/RedesignModule.kt
+13
-13
ViewModelsModule.kt
...src/main/java/com/topjohnwu/magisk/di/ViewModelsModule.kt
+2
-2
FlashActivity.kt
...n/java/com/topjohnwu/magisk/legacy/flash/FlashActivity.kt
+1
-1
FlashViewModel.kt
.../java/com/topjohnwu/magisk/legacy/flash/FlashViewModel.kt
+110
-0
SuRequestActivity.kt
...om/topjohnwu/magisk/legacy/surequest/SuRequestActivity.kt
+1
-1
SuRequestViewModel.kt
...m/topjohnwu/magisk/legacy/surequest/SuRequestViewModel.kt
+1
-1
DownloadService.kt
...va/com/topjohnwu/magisk/model/download/DownloadService.kt
+1
-1
HideRvItem.kt
.../com/topjohnwu/magisk/model/entity/recycler/HideRvItem.kt
+1
-1
ModuleRvItem.kt
...om/topjohnwu/magisk/model/entity/recycler/ModuleRvItem.kt
+1
-1
PolicyRvItem.kt
...om/topjohnwu/magisk/model/entity/recycler/PolicyRvItem.kt
+1
-1
ThemeItem.kt
...a/com/topjohnwu/magisk/model/entity/recycler/ThemeItem.kt
+2
-2
InstallExternalModuleEvent.kt
...pjohnwu/magisk/model/events/InstallExternalModuleEvent.kt
+1
-1
MagiskNavigationEvent.kt
...opjohnwu/magisk/model/navigation/MagiskNavigationEvent.kt
+1
-1
Navigation.kt
.../java/com/topjohnwu/magisk/model/navigation/Navigation.kt
+10
-10
MainViewModel.kt
.../main/java/com/topjohnwu/magisk/redesign/MainViewModel.kt
+0
-5
FlashViewModel.kt
...ava/com/topjohnwu/magisk/redesign/flash/FlashViewModel.kt
+0
-5
RequestViewModel.kt
...com/topjohnwu/magisk/redesign/request/RequestViewModel.kt
+0
-5
MainActivity.kt
app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt
+6
-6
MainViewModel.kt
app/src/main/java/com/topjohnwu/magisk/ui/MainViewModel.kt
+5
-0
ReselectionTarget.kt
...rc/main/java/com/topjohnwu/magisk/ui/ReselectionTarget.kt
+2
-2
CompatActivity.kt
...ain/java/com/topjohnwu/magisk/ui/compat/CompatActivity.kt
+3
-3
CompatDelegate.kt
...ain/java/com/topjohnwu/magisk/ui/compat/CompatDelegate.kt
+1
-1
CompatFragment.kt
...ain/java/com/topjohnwu/magisk/ui/compat/CompatFragment.kt
+2
-2
CompatHelpers.kt
...main/java/com/topjohnwu/magisk/ui/compat/CompatHelpers.kt
+2
-2
CompatNavigationDelegate.kt
...om/topjohnwu/magisk/ui/compat/CompatNavigationDelegate.kt
+3
-3
CompatView.kt
...rc/main/java/com/topjohnwu/magisk/ui/compat/CompatView.kt
+1
-1
CompatViewModel.kt
...in/java/com/topjohnwu/magisk/ui/compat/CompatViewModel.kt
+1
-1
Queryable.kt
...src/main/java/com/topjohnwu/magisk/ui/compat/Queryable.kt
+2
-2
FlashFragment.kt
.../main/java/com/topjohnwu/magisk/ui/flash/FlashFragment.kt
+3
-3
FlashViewModel.kt
...main/java/com/topjohnwu/magisk/ui/flash/FlashViewModel.kt
+2
-107
HideFragment.kt
...rc/main/java/com/topjohnwu/magisk/ui/hide/HideFragment.kt
+3
-3
HideViewModel.kt
...c/main/java/com/topjohnwu/magisk/ui/hide/HideViewModel.kt
+5
-5
HomeFragment.kt
...rc/main/java/com/topjohnwu/magisk/ui/home/HomeFragment.kt
+2
-2
HomeViewModel.kt
...c/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt
+3
-3
InstallFragment.kt
...n/java/com/topjohnwu/magisk/ui/install/InstallFragment.kt
+2
-2
InstallViewModel.kt
.../java/com/topjohnwu/magisk/ui/install/InstallViewModel.kt
+3
-3
LogFragment.kt
app/src/main/java/com/topjohnwu/magisk/ui/log/LogFragment.kt
+3
-3
LogViewModel.kt
...src/main/java/com/topjohnwu/magisk/ui/log/LogViewModel.kt
+4
-4
ModuleFragment.kt
...ain/java/com/topjohnwu/magisk/ui/module/ModuleFragment.kt
+5
-5
ModuleViewModel.kt
...in/java/com/topjohnwu/magisk/ui/module/ModuleViewModel.kt
+3
-3
RequestActivity.kt
...n/java/com/topjohnwu/magisk/ui/request/RequestActivity.kt
+3
-3
RequestViewModel.kt
.../java/com/topjohnwu/magisk/ui/request/RequestViewModel.kt
+5
-0
SafetynetFragment.kt
...va/com/topjohnwu/magisk/ui/safetynet/SafetynetFragment.kt
+3
-3
SafetynetViewModel.kt
...a/com/topjohnwu/magisk/ui/safetynet/SafetynetViewModel.kt
+3
-3
SettingsFragment.kt
...java/com/topjohnwu/magisk/ui/settings/SettingsFragment.kt
+2
-2
SettingsItems.kt
...in/java/com/topjohnwu/magisk/ui/settings/SettingsItems.kt
+1
-1
SettingsViewModel.kt
...ava/com/topjohnwu/magisk/ui/settings/SettingsViewModel.kt
+5
-5
SuperuserFragment.kt
...va/com/topjohnwu/magisk/ui/superuser/SuperuserFragment.kt
+2
-2
SuperuserViewModel.kt
...a/com/topjohnwu/magisk/ui/superuser/SuperuserViewModel.kt
+6
-6
Theme.kt
app/src/main/java/com/topjohnwu/magisk/ui/theme/Theme.kt
+1
-1
ThemeFragment.kt
.../main/java/com/topjohnwu/magisk/ui/theme/ThemeFragment.kt
+2
-2
ThemeViewModel.kt
...main/java/com/topjohnwu/magisk/ui/theme/ThemeViewModel.kt
+3
-3
SuHandler.kt
app/src/main/java/com/topjohnwu/magisk/utils/SuHandler.kt
+1
-1
MagiskDialog.kt
app/src/main/java/com/topjohnwu/magisk/view/MagiskDialog.kt
+2
-2
activity_flash.xml
app/src/main/res/layout/activity_flash.xml
+2
-2
activity_main_md2.xml
app/src/main/res/layout/activity_main_md2.xml
+1
-1
activity_request.xml
app/src/main/res/layout/activity_request.xml
+1
-1
activity_request_md2.xml
app/src/main/res/layout/activity_request_md2.xml
+2
-2
dialog_settings_app_name.xml
app/src/main/res/layout/dialog_settings_app_name.xml
+1
-1
dialog_settings_download_path.xml
app/src/main/res/layout/dialog_settings_download_path.xml
+1
-1
dialog_settings_update_channel.xml
app/src/main/res/layout/dialog_settings_update_channel.xml
+1
-1
fragment_flash_md2.xml
app/src/main/res/layout/fragment_flash_md2.xml
+2
-2
fragment_hide_md2.xml
app/src/main/res/layout/fragment_hide_md2.xml
+2
-2
fragment_home_md2.xml
app/src/main/res/layout/fragment_home_md2.xml
+2
-2
fragment_install_md2.xml
app/src/main/res/layout/fragment_install_md2.xml
+2
-2
fragment_log_md2.xml
app/src/main/res/layout/fragment_log_md2.xml
+2
-2
fragment_module_md2.xml
app/src/main/res/layout/fragment_module_md2.xml
+2
-2
fragment_safetynet_md2.xml
app/src/main/res/layout/fragment_safetynet_md2.xml
+2
-2
fragment_settings_md2.xml
app/src/main/res/layout/fragment_settings_md2.xml
+2
-2
fragment_superuser_md2.xml
app/src/main/res/layout/fragment_superuser_md2.xml
+2
-2
fragment_theme_md2.xml
app/src/main/res/layout/fragment_theme_md2.xml
+3
-3
include_hide_filter.xml
app/src/main/res/layout/include_hide_filter.xml
+1
-1
include_log_magisk.xml
app/src/main/res/layout/include_log_magisk.xml
+2
-2
include_module_filter.xml
app/src/main/res/layout/include_module_filter.xml
+1
-1
item_developer.xml
app/src/main/res/layout/item_developer.xml
+2
-2
item_developer_link.xml
app/src/main/res/layout/item_developer_link.xml
+2
-2
item_hide_md2.xml
app/src/main/res/layout/item_hide_md2.xml
+2
-2
item_hide_process_md2.xml
app/src/main/res/layout/item_hide_process_md2.xml
+2
-2
item_log_access_md2.xml
app/src/main/res/layout/item_log_access_md2.xml
+2
-2
item_module_download.xml
app/src/main/res/layout/item_module_download.xml
+1
-1
item_module_md2.xml
app/src/main/res/layout/item_module_md2.xml
+2
-2
item_policy_md2.xml
app/src/main/res/layout/item_policy_md2.xml
+2
-2
item_repo_md2.xml
app/src/main/res/layout/item_repo_md2.xml
+1
-1
item_section_md2.xml
app/src/main/res/layout/item_section_md2.xml
+2
-2
item_theme.xml
app/src/main/res/layout/item_theme.xml
+3
-3
No files found.
app/src/main/java/a/b.kt
View file @
3490ba0a
package
a
import
com.topjohnwu.magisk.
redesign
.MainActivity
import
com.topjohnwu.magisk.
ui
.MainActivity
class
b
:
MainActivity
()
app/src/main/java/a/f.java
View file @
3490ba0a
package
a
;
import
com.topjohnwu.magisk.
ui
.flash.FlashActivity
;
import
com.topjohnwu.magisk.
legacy
.flash.FlashActivity
;
public
class
f
extends
FlashActivity
{
/* stub */
...
...
app/src/main/java/a/m.java
View file @
3490ba0a
package
a
;
import
com.topjohnwu.magisk.
ui
.surequest.SuRequestActivity
;
import
com.topjohnwu.magisk.
legacy
.surequest.SuRequestActivity
;
public
class
m
extends
SuRequestActivity
{
/* stub */
...
...
app/src/main/java/com/topjohnwu/magisk/Config.kt
View file @
3490ba0a
...
...
@@ -13,7 +13,7 @@ import com.topjohnwu.magisk.di.Protected
import
com.topjohnwu.magisk.extensions.get
import
com.topjohnwu.magisk.extensions.inject
import
com.topjohnwu.magisk.model.preference.PreferenceModel
import
com.topjohnwu.magisk.
redesign
.theme.Theme
import
com.topjohnwu.magisk.
ui
.theme.Theme
import
com.topjohnwu.magisk.utils.BiometricHelper
import
com.topjohnwu.magisk.utils.Utils
import
com.topjohnwu.superuser.Shell
...
...
app/src/main/java/com/topjohnwu/magisk/Hacks.kt
View file @
3490ba0a
...
...
@@ -18,10 +18,10 @@ import com.topjohnwu.magisk.extensions.forceGetDeclaredField
import
com.topjohnwu.magisk.model.download.DownloadService
import
com.topjohnwu.magisk.model.receiver.GeneralReceiver
import
com.topjohnwu.magisk.model.update.UpdateCheckService
import
com.topjohnwu.magisk.
redesign
.MainActivity
import
com.topjohnwu.magisk.
ui
.MainActivity
import
com.topjohnwu.magisk.ui.SplashActivity
import
com.topjohnwu.magisk.
ui
.flash.FlashActivity
import
com.topjohnwu.magisk.
ui
.surequest.SuRequestActivity
import
com.topjohnwu.magisk.
legacy
.flash.FlashActivity
import
com.topjohnwu.magisk.
legacy
.surequest.SuRequestActivity
import
com.topjohnwu.magisk.utils.refreshLocale
import
com.topjohnwu.magisk.utils.updateConfig
...
...
app/src/main/java/com/topjohnwu/magisk/di/RedesignModule.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.di
import
com.topjohnwu.magisk.
redesign
.MainViewModel
import
com.topjohnwu.magisk.
redesign
.flash.FlashViewModel
import
com.topjohnwu.magisk.
redesign
.hide.HideViewModel
import
com.topjohnwu.magisk.
redesign
.home.HomeViewModel
import
com.topjohnwu.magisk.
redesign
.install.InstallViewModel
import
com.topjohnwu.magisk.
redesign
.log.LogViewModel
import
com.topjohnwu.magisk.
redesign
.module.ModuleViewModel
import
com.topjohnwu.magisk.
redesign
.request.RequestViewModel
import
com.topjohnwu.magisk.
redesign
.safetynet.SafetynetViewModel
import
com.topjohnwu.magisk.
redesign
.settings.SettingsViewModel
import
com.topjohnwu.magisk.
redesign
.superuser.SuperuserViewModel
import
com.topjohnwu.magisk.
redesign
.theme.ThemeViewModel
import
com.topjohnwu.magisk.
ui
.MainViewModel
import
com.topjohnwu.magisk.
ui
.flash.FlashViewModel
import
com.topjohnwu.magisk.
ui
.hide.HideViewModel
import
com.topjohnwu.magisk.
ui
.home.HomeViewModel
import
com.topjohnwu.magisk.
ui
.install.InstallViewModel
import
com.topjohnwu.magisk.
ui
.log.LogViewModel
import
com.topjohnwu.magisk.
ui
.module.ModuleViewModel
import
com.topjohnwu.magisk.
ui
.request.RequestViewModel
import
com.topjohnwu.magisk.
ui
.safetynet.SafetynetViewModel
import
com.topjohnwu.magisk.
ui
.settings.SettingsViewModel
import
com.topjohnwu.magisk.
ui
.superuser.SuperuserViewModel
import
com.topjohnwu.magisk.
ui
.theme.ThemeViewModel
import
org.koin.androidx.viewmodel.dsl.viewModel
import
org.koin.dsl.module
...
...
@@ -29,4 +29,4 @@ val redesignModule = module {
viewModel
{
InstallViewModel
()
}
viewModel
{
MainViewModel
()
}
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/di/ViewModelsModule.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.di
import
android.net.Uri
import
com.topjohnwu.magisk.
ui
.flash.FlashViewModel
import
com.topjohnwu.magisk.
ui
.surequest.SuRequestViewModel
import
com.topjohnwu.magisk.
legacy
.flash.FlashViewModel
import
com.topjohnwu.magisk.
legacy
.surequest.SuRequestViewModel
import
org.koin.androidx.viewmodel.dsl.viewModel
import
org.koin.dsl.module
...
...
app/src/main/java/com/topjohnwu/magisk/
ui
/flash/FlashActivity.kt
→
app/src/main/java/com/topjohnwu/magisk/
legacy
/flash/FlashActivity.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
ui
.flash
package
com.topjohnwu.magisk.
legacy
.flash
import
android.content.Context
import
android.content.Intent
...
...
app/src/main/java/com/topjohnwu/magisk/legacy/flash/FlashViewModel.kt
0 → 100644
View file @
3490ba0a
package
com.topjohnwu.magisk.legacy.flash
import
android.Manifest.permission.READ_EXTERNAL_STORAGE
import
android.Manifest.permission.WRITE_EXTERNAL_STORAGE
import
android.content.res.Resources
import
android.net.Uri
import
android.os.Handler
import
androidx.core.os.postDelayed
import
androidx.databinding.ObservableArrayList
import
com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.Config
import
com.topjohnwu.magisk.Const
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.base.viewmodel.BaseViewModel
import
com.topjohnwu.magisk.databinding.ComparableRvItem
import
com.topjohnwu.magisk.extensions.*
import
com.topjohnwu.magisk.model.entity.recycler.ConsoleRvItem
import
com.topjohnwu.magisk.model.events.SnackbarEvent
import
com.topjohnwu.magisk.model.flash.FlashResultListener
import
com.topjohnwu.magisk.model.flash.Flashing
import
com.topjohnwu.magisk.model.flash.Patching
import
com.topjohnwu.magisk.utils.DiffObservableList
import
com.topjohnwu.magisk.utils.KObservableField
import
com.topjohnwu.superuser.Shell
import
me.tatarka.bindingcollectionadapter2.ItemBinding
import
java.io.File
import
java.util.*
class
FlashViewModel
(
action
:
String
,
installer
:
Uri
,
uri
:
Uri
,
private
val
resources
:
Resources
)
:
BaseViewModel
(),
FlashResultListener
{
val
canShowReboot
=
Shell
.
rootAccess
()
val
showRestartTitle
=
KObservableField
(
false
)
val
behaviorText
=
KObservableField
(
resources
.
getString
(
R
.
string
.
flashing
))
val
items
=
DiffObservableList
(
ComparableRvItem
.
callback
)
val
itemBinding
=
ItemBinding
.
of
<
ComparableRvItem
<*>>
{
itemBinding
,
_
,
item
->
item
.
bind
(
itemBinding
)
itemBinding
.
bindExtra
(
BR
.
viewModel
,
this
@FlashViewModel
)
}
private
val
outItems
=
ObservableArrayList
<
String
>()
private
val
logItems
=
Collections
.
synchronizedList
(
mutableListOf
<
String
>())
init
{
outItems
.
sendUpdatesTo
(
items
)
{
it
.
map
{
ConsoleRvItem
(
it
)
}
}
outItems
.
copyNewInputInto
(
logItems
)
state
=
State
.
LOADING
when
(
action
)
{
Const
.
Value
.
FLASH_ZIP
->
Flashing
.
Install
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
UNINSTALL
->
Flashing
.
Uninstall
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
FLASH_MAGISK
->
Patching
.
Direct
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
FLASH_INACTIVE_SLOT
->
Patching
.
SecondSlot
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
PATCH_FILE
->
Patching
.
File
(
installer
,
uri
,
outItems
,
logItems
,
this
)
.
exec
()
}
}
override
fun
onResult
(
isSuccess
:
Boolean
)
{
state
=
if
(
isSuccess
)
State
.
LOADED
else
State
.
LOADING_FAILED
behaviorText
.
value
=
when
{
isSuccess
->
resources
.
getString
(
R
.
string
.
done
)
else
->
resources
.
getString
(
R
.
string
.
failure
)
}
if
(
isSuccess
)
{
Handler
().
postDelayed
(
500
)
{
showRestartTitle
.
value
=
true
}
}
}
fun
savePressed
()
=
withPermissions
(
READ_EXTERNAL_STORAGE
,
WRITE_EXTERNAL_STORAGE
)
.
map
{
now
}
.
map
{
it
.
toTime
(
timeFormatStandard
)
}
.
map
{
Const
.
MAGISK_INSTALL_LOG_FILENAME
.
format
(
it
)
}
.
map
{
File
(
Config
.
downloadDirectory
,
it
)
}
.
map
{
file
->
file
.
bufferedWriter
().
use
{
writer
->
logItems
.
forEach
{
writer
.
write
(
it
)
writer
.
newLine
()
}
}
file
.
path
}
.
subscribeK
{
SnackbarEvent
(
it
).
publish
()
}
.
add
()
fun
restartPressed
()
=
reboot
()
fun
backPressed
()
=
back
()
}
app/src/main/java/com/topjohnwu/magisk/
ui
/surequest/SuRequestActivity.kt
→
app/src/main/java/com/topjohnwu/magisk/
legacy
/surequest/SuRequestActivity.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
ui
.surequest
package
com.topjohnwu.magisk.
legacy
.surequest
import
android.content.Intent
import
android.content.pm.ActivityInfo
...
...
app/src/main/java/com/topjohnwu/magisk/
ui
/surequest/SuRequestViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
legacy
/surequest/SuRequestViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
ui
.surequest
package
com.topjohnwu.magisk.
legacy
.surequest
import
android.content.Intent
import
android.content.SharedPreferences
...
...
app/src/main/java/com/topjohnwu/magisk/model/download/DownloadService.kt
View file @
3490ba0a
...
...
@@ -16,7 +16,7 @@ import com.topjohnwu.magisk.model.entity.internal.Configuration.*
import
com.topjohnwu.magisk.model.entity.internal.Configuration.Flash.Secondary
import
com.topjohnwu.magisk.model.entity.internal.DownloadSubject
import
com.topjohnwu.magisk.model.entity.internal.DownloadSubject.*
import
com.topjohnwu.magisk.
ui
.flash.FlashActivity
import
com.topjohnwu.magisk.
legacy
.flash.FlashActivity
import
com.topjohnwu.magisk.utils.APKInstall
import
org.koin.core.get
import
java.io.File
...
...
app/src/main/java/com/topjohnwu/magisk/model/entity/recycler/HideRvItem.kt
View file @
3490ba0a
...
...
@@ -10,7 +10,7 @@ import com.topjohnwu.magisk.extensions.toggle
import
com.topjohnwu.magisk.model.entity.ProcessHideApp
import
com.topjohnwu.magisk.model.entity.StatefulProcess
import
com.topjohnwu.magisk.model.observer.Observer
import
com.topjohnwu.magisk.
redesign
.hide.HideViewModel
import
com.topjohnwu.magisk.
ui
.hide.HideViewModel
import
com.topjohnwu.magisk.utils.KObservableField
import
kotlin.math.roundToInt
...
...
app/src/main/java/com/topjohnwu/magisk/model/entity/recycler/ModuleRvItem.kt
View file @
3490ba0a
...
...
@@ -10,7 +10,7 @@ import com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.ComparableRvItem
import
com.topjohnwu.magisk.model.entity.module.Module
import
com.topjohnwu.magisk.model.entity.module.Repo
import
com.topjohnwu.magisk.
redesign
.module.ModuleViewModel
import
com.topjohnwu.magisk.
ui
.module.ModuleViewModel
import
com.topjohnwu.magisk.utils.KObservableField
object
SafeModeNotice
:
ComparableRvItem
<
SafeModeNotice
>()
{
...
...
app/src/main/java/com/topjohnwu/magisk/model/entity/recycler/PolicyRvItem.kt
View file @
3490ba0a
...
...
@@ -6,7 +6,7 @@ import com.topjohnwu.magisk.databinding.ComparableRvItem
import
com.topjohnwu.magisk.extensions.toggle
import
com.topjohnwu.magisk.model.entity.MagiskPolicy
import
com.topjohnwu.magisk.model.events.PolicyUpdateEvent
import
com.topjohnwu.magisk.
redesign
.superuser.SuperuserViewModel
import
com.topjohnwu.magisk.
ui
.superuser.SuperuserViewModel
import
com.topjohnwu.magisk.utils.KObservableField
class
PolicyItem
(
val
item
:
MagiskPolicy
,
val
icon
:
Drawable
)
:
ComparableRvItem
<
PolicyItem
>()
{
...
...
app/src/main/java/com/topjohnwu/magisk/model/entity/recycler/ThemeItem.kt
View file @
3490ba0a
...
...
@@ -2,7 +2,7 @@ package com.topjohnwu.magisk.model.entity.recycler
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.ComparableRvItem
import
com.topjohnwu.magisk.
redesign
.theme.Theme
import
com.topjohnwu.magisk.
ui
.theme.Theme
class
ThemeItem
(
val
theme
:
Theme
)
:
ComparableRvItem
<
ThemeItem
>()
{
...
...
@@ -11,4 +11,4 @@ class ThemeItem(val theme: Theme) : ComparableRvItem<ThemeItem>() {
override
fun
contentSameAs
(
other
:
ThemeItem
)
=
itemSameAs
(
other
)
override
fun
itemSameAs
(
other
:
ThemeItem
)
=
theme
==
other
.
theme
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/model/events/InstallExternalModuleEvent.kt
View file @
3490ba0a
...
...
@@ -6,7 +6,7 @@ import android.content.Intent
import
com.topjohnwu.magisk.Const
import
com.topjohnwu.magisk.base.BaseActivity
import
com.topjohnwu.magisk.intent
import
com.topjohnwu.magisk.
ui
.flash.FlashActivity
import
com.topjohnwu.magisk.
legacy
.flash.FlashActivity
class
InstallExternalModuleEvent
:
ViewEvent
(),
ActivityExecutor
{
...
...
app/src/main/java/com/topjohnwu/magisk/model/navigation/MagiskNavigationEvent.kt
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@ import androidx.fragment.app.Fragment
import
com.topjohnwu.magisk.base.BaseActivity
import
com.topjohnwu.magisk.model.events.ActivityExecutor
import
com.topjohnwu.magisk.model.events.ViewEvent
import
com.topjohnwu.magisk.
redesign
.compat.CompatActivity
import
com.topjohnwu.magisk.
ui
.compat.CompatActivity
import
kotlin.reflect.KClass
@DslMarker
...
...
app/src/main/java/com/topjohnwu/magisk/model/navigation/Navigation.kt
View file @
3490ba0a
...
...
@@ -5,16 +5,16 @@ import android.content.Intent
import
android.os.Build
import
com.topjohnwu.magisk.Const
import
com.topjohnwu.magisk.intent
import
com.topjohnwu.magisk.
redesign
.MainActivity
import
com.topjohnwu.magisk.
redesign
.hide.HideFragment
import
com.topjohnwu.magisk.
redesign
.home.HomeFragment
import
com.topjohnwu.magisk.
redesign
.install.InstallFragment
import
com.topjohnwu.magisk.
redesign
.log.LogFragment
import
com.topjohnwu.magisk.
redesign
.module.ModuleFragment
import
com.topjohnwu.magisk.
redesign
.safetynet.SafetynetFragment
import
com.topjohnwu.magisk.
redesign
.settings.SettingsFragment
import
com.topjohnwu.magisk.
redesign
.superuser.SuperuserFragment
import
com.topjohnwu.magisk.
redesign
.theme.ThemeFragment
import
com.topjohnwu.magisk.
ui
.MainActivity
import
com.topjohnwu.magisk.
ui
.hide.HideFragment
import
com.topjohnwu.magisk.
ui
.home.HomeFragment
import
com.topjohnwu.magisk.
ui
.install.InstallFragment
import
com.topjohnwu.magisk.
ui
.log.LogFragment
import
com.topjohnwu.magisk.
ui
.module.ModuleFragment
import
com.topjohnwu.magisk.
ui
.safetynet.SafetynetFragment
import
com.topjohnwu.magisk.
ui
.settings.SettingsFragment
import
com.topjohnwu.magisk.
ui
.superuser.SuperuserFragment
import
com.topjohnwu.magisk.
ui
.theme.ThemeFragment
object
Navigation
{
...
...
app/src/main/java/com/topjohnwu/magisk/redesign/MainViewModel.kt
deleted
100644 → 0
View file @
14494869
package
com.topjohnwu.magisk.redesign
import
com.topjohnwu.magisk.redesign.compat.CompatViewModel
class
MainViewModel
:
CompatViewModel
()
\ No newline at end of file
app/src/main/java/com/topjohnwu/magisk/redesign/flash/FlashViewModel.kt
deleted
100644 → 0
View file @
14494869
package
com.topjohnwu.magisk.redesign.flash
import
com.topjohnwu.magisk.redesign.compat.CompatViewModel
class
FlashViewModel
:
CompatViewModel
()
\ No newline at end of file
app/src/main/java/com/topjohnwu/magisk/redesign/request/RequestViewModel.kt
deleted
100644 → 0
View file @
14494869
package
com.topjohnwu.magisk.redesign.request
import
com.topjohnwu.magisk.redesign.compat.CompatViewModel
class
RequestViewModel
:
CompatViewModel
()
\ No newline at end of file
app/src/main/java/com/topjohnwu/magisk/
redesign
/MainActivity.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/MainActivity.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
package
com.topjohnwu.magisk.
ui
import
android.os.Bundle
import
android.view.MenuItem
...
...
@@ -17,11 +17,11 @@ import com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.ActivityMainMd2Binding
import
com.topjohnwu.magisk.extensions.startAnimations
import
com.topjohnwu.magisk.model.navigation.Navigation
import
com.topjohnwu.magisk.
redesign
.compat.CompatActivity
import
com.topjohnwu.magisk.
redesign
.compat.CompatNavigationDelegate
import
com.topjohnwu.magisk.
redesign
.home.HomeFragment
import
com.topjohnwu.magisk.
redesign
.module.ModuleFragment
import
com.topjohnwu.magisk.
redesign
.superuser.SuperuserFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatActivity
import
com.topjohnwu.magisk.
ui
.compat.CompatNavigationDelegate
import
com.topjohnwu.magisk.
ui
.home.HomeFragment
import
com.topjohnwu.magisk.
ui
.module.ModuleFragment
import
com.topjohnwu.magisk.
ui
.superuser.SuperuserFragment
import
com.topjohnwu.magisk.utils.HideBottomViewOnScrollBehavior
import
com.topjohnwu.magisk.utils.HideTopViewOnScrollBehavior
import
com.topjohnwu.magisk.utils.HideableBehavior
...
...
app/src/main/java/com/topjohnwu/magisk/ui/MainViewModel.kt
0 → 100644
View file @
3490ba0a
package
com.topjohnwu.magisk.ui
import
com.topjohnwu.magisk.ui.compat.CompatViewModel
class
MainViewModel
:
CompatViewModel
()
app/src/main/java/com/topjohnwu/magisk/
redesign
/ReselectionTarget.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/ReselectionTarget.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
package
com.topjohnwu.magisk.
ui
interface
ReselectionTarget
{
fun
onReselected
()
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/CompatActivity.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/CompatActivity.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
android.app.Activity
import
android.content.Intent
...
...
@@ -17,7 +17,7 @@ import com.topjohnwu.magisk.model.events.SnackbarEvent
import
com.topjohnwu.magisk.model.events.ViewEvent
import
com.topjohnwu.magisk.model.navigation.MagiskNavigationEvent
import
com.topjohnwu.magisk.model.navigation.Navigator
import
com.topjohnwu.magisk.
redesign
.theme.Theme
import
com.topjohnwu.magisk.
ui
.theme.Theme
import
kotlin.reflect.KClass
...
...
@@ -89,4 +89,4 @@ fun Activity.hideKeyboard() {
getSystemService
<
InputMethodManager
>()
?.
hideSoftInputFromWindow
(
view
.
windowToken
,
0
)
view
.
clearFocus
()
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/CompatDelegate.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/CompatDelegate.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
android.view.View
import
androidx.core.graphics.Insets
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/CompatFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/CompatFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
android.os.Bundle
import
android.view.View
...
...
@@ -53,4 +53,4 @@ abstract class CompatFragment<ViewModel : CompatViewModel, Binding : ViewDataBin
fun
Fragment
.
hideKeyboard
()
{
activity
?.
hideKeyboard
()
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/CompatHelpers.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/CompatHelpers.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
androidx.databinding.ViewDataBinding
import
com.topjohnwu.magisk.databinding.ComparableRvItem
...
...
@@ -40,4 +40,4 @@ inline fun <T : ComparableRvItem<*>> itemBindingOf(
)
=
OnItemBind
<
T
>
{
itemBinding
,
_
,
item
->
item
.
bind
(
itemBinding
)
body
(
itemBinding
)
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/CompatNavigationDelegate.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/CompatNavigationDelegate.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
android.content.Intent
import
android.os.Bundle
...
...
@@ -8,7 +8,7 @@ import com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.model.navigation.MagiskAnimBuilder
import
com.topjohnwu.magisk.model.navigation.MagiskNavigationEvent
import
com.topjohnwu.magisk.model.navigation.Navigator
import
com.topjohnwu.magisk.
redesign
.ReselectionTarget
import
com.topjohnwu.magisk.
ui
.ReselectionTarget
import
timber.log.Timber
class
CompatNavigationDelegate
<
out
Source
>(
...
...
@@ -125,4 +125,4 @@ class CompatNavigationDelegate<out Source>(
)
}
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/CompatView.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/CompatView.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
android.view.View
import
androidx.core.graphics.Insets
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/CompatViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/CompatViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
androidx.annotation.CallSuper
import
androidx.core.graphics.Insets
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/compat/Queryable.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/compat/Queryable.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.compat
package
com.topjohnwu.magisk.
ui
.compat
import
android.os.Handler
import
android.os.Looper
...
...
@@ -20,4 +20,4 @@ interface Queryable {
override
fun
submitQuery
()
{}
}
}
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/flash/FlashFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/flash/FlashFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.flash
package
com.topjohnwu.magisk.
ui
.flash
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentFlashMd2Binding
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
org.koin.androidx.viewmodel.ext.android.viewModel
class
FlashFragment
:
CompatFragment
<
FlashViewModel
,
FragmentFlashMd2Binding
>()
{
...
...
@@ -10,4 +10,4 @@ class FlashFragment : CompatFragment<FlashViewModel, FragmentFlashMd2Binding>()
override
val
layoutRes
=
R
.
layout
.
fragment_flash_md2
override
val
viewModel
by
viewModel
<
FlashViewModel
>()
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/ui/flash/FlashViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.ui.flash
import
android.Manifest.permission.READ_EXTERNAL_STORAGE
import
android.Manifest.permission.WRITE_EXTERNAL_STORAGE
import
android.content.res.Resources
import
android.net.Uri
import
android.os.Handler
import
androidx.core.os.postDelayed
import
androidx.databinding.ObservableArrayList
import
com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.Config
import
com.topjohnwu.magisk.Const
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.base.viewmodel.BaseViewModel
import
com.topjohnwu.magisk.databinding.ComparableRvItem
import
com.topjohnwu.magisk.extensions.*
import
com.topjohnwu.magisk.model.entity.recycler.ConsoleRvItem
import
com.topjohnwu.magisk.model.events.SnackbarEvent
import
com.topjohnwu.magisk.model.flash.FlashResultListener
import
com.topjohnwu.magisk.model.flash.Flashing
import
com.topjohnwu.magisk.model.flash.Patching
import
com.topjohnwu.magisk.utils.DiffObservableList
import
com.topjohnwu.magisk.utils.KObservableField
import
com.topjohnwu.superuser.Shell
import
me.tatarka.bindingcollectionadapter2.ItemBinding
import
java.io.File
import
java.util.*
import
com.topjohnwu.magisk.ui.compat.CompatViewModel
class
FlashViewModel
(
action
:
String
,
installer
:
Uri
,
uri
:
Uri
,
private
val
resources
:
Resources
)
:
BaseViewModel
(),
FlashResultListener
{
val
canShowReboot
=
Shell
.
rootAccess
()
val
showRestartTitle
=
KObservableField
(
false
)
val
behaviorText
=
KObservableField
(
resources
.
getString
(
R
.
string
.
flashing
))
val
items
=
DiffObservableList
(
ComparableRvItem
.
callback
)
val
itemBinding
=
ItemBinding
.
of
<
ComparableRvItem
<*>>
{
itemBinding
,
_
,
item
->
item
.
bind
(
itemBinding
)
itemBinding
.
bindExtra
(
BR
.
viewModel
,
this
@FlashViewModel
)
}
private
val
outItems
=
ObservableArrayList
<
String
>()
private
val
logItems
=
Collections
.
synchronizedList
(
mutableListOf
<
String
>())
init
{
outItems
.
sendUpdatesTo
(
items
)
{
it
.
map
{
ConsoleRvItem
(
it
)
}
}
outItems
.
copyNewInputInto
(
logItems
)
state
=
State
.
LOADING
when
(
action
)
{
Const
.
Value
.
FLASH_ZIP
->
Flashing
.
Install
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
UNINSTALL
->
Flashing
.
Uninstall
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
FLASH_MAGISK
->
Patching
.
Direct
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
FLASH_INACTIVE_SLOT
->
Patching
.
SecondSlot
(
installer
,
outItems
,
logItems
,
this
)
.
exec
()
Const
.
Value
.
PATCH_FILE
->
Patching
.
File
(
installer
,
uri
,
outItems
,
logItems
,
this
)
.
exec
()
}
}
override
fun
onResult
(
isSuccess
:
Boolean
)
{
state
=
if
(
isSuccess
)
State
.
LOADED
else
State
.
LOADING_FAILED
behaviorText
.
value
=
when
{
isSuccess
->
resources
.
getString
(
R
.
string
.
done
)
else
->
resources
.
getString
(
R
.
string
.
failure
)
}
if
(
isSuccess
)
{
Handler
().
postDelayed
(
500
)
{
showRestartTitle
.
value
=
true
}
}
}
fun
savePressed
()
=
withPermissions
(
READ_EXTERNAL_STORAGE
,
WRITE_EXTERNAL_STORAGE
)
.
map
{
now
}
.
map
{
it
.
toTime
(
timeFormatStandard
)
}
.
map
{
Const
.
MAGISK_INSTALL_LOG_FILENAME
.
format
(
it
)
}
.
map
{
File
(
Config
.
downloadDirectory
,
it
)
}
.
map
{
file
->
file
.
bufferedWriter
().
use
{
writer
->
logItems
.
forEach
{
writer
.
write
(
it
)
writer
.
newLine
()
}
}
file
.
path
}
.
subscribeK
{
SnackbarEvent
(
it
).
publish
()
}
.
add
()
fun
restartPressed
()
=
reboot
()
fun
backPressed
()
=
back
()
}
\ No newline at end of file
class
FlashViewModel
:
CompatViewModel
()
app/src/main/java/com/topjohnwu/magisk/
redesign
/hide/HideFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/hide/HideFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.hide
package
com.topjohnwu.magisk.
ui
.hide
import
android.content.Context
import
android.os.Bundle
...
...
@@ -12,8 +12,8 @@ import androidx.recyclerview.widget.LinearLayoutManager
import
androidx.recyclerview.widget.RecyclerView
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentHideMd2Binding
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
redesign
.compat.hideKeyboard
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.hideKeyboard
import
com.topjohnwu.magisk.utils.MotionRevealHelper
import
org.koin.androidx.viewmodel.ext.android.viewModel
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/hide/HideViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/hide/HideViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.hide
package
com.topjohnwu.magisk.
ui
.hide
import
android.content.pm.ApplicationInfo
import
androidx.databinding.Bindable
...
...
@@ -12,10 +12,10 @@ import com.topjohnwu.magisk.model.entity.ProcessHideApp
import
com.topjohnwu.magisk.model.entity.StatefulProcess
import
com.topjohnwu.magisk.model.entity.recycler.HideItem
import
com.topjohnwu.magisk.model.entity.recycler.HideProcessItem
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
redesign
.compat.Queryable
import
com.topjohnwu.magisk.
redesign
.compat.filterableListOf
import
com.topjohnwu.magisk.
redesign
.compat.itemBindingOf
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.compat.Queryable
import
com.topjohnwu.magisk.
ui
.compat.filterableListOf
import
com.topjohnwu.magisk.
ui
.compat.itemBindingOf
import
com.topjohnwu.magisk.utils.KObservableField
import
com.topjohnwu.magisk.utils.currentLocale
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/home/HomeFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/home/HomeFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.home
package
com.topjohnwu.magisk.
ui
.home
import
android.view.Menu
import
android.view.MenuInflater
...
...
@@ -7,7 +7,7 @@ import androidx.core.graphics.Insets
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentHomeMd2Binding
import
com.topjohnwu.magisk.model.navigation.Navigation
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
org.koin.androidx.viewmodel.ext.android.viewModel
class
HomeFragment
:
CompatFragment
<
HomeViewModel
,
FragmentHomeMd2Binding
>()
{
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/home/HomeViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/home/HomeViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.home
package
com.topjohnwu.magisk.
ui
.home
import
android.Manifest
import
android.os.Build
...
...
@@ -22,8 +22,8 @@ import com.topjohnwu.magisk.model.events.dialog.ManagerInstallDialog
import
com.topjohnwu.magisk.model.events.dialog.UninstallDialog
import
com.topjohnwu.magisk.model.navigation.Navigation
import
com.topjohnwu.magisk.model.observer.Observer
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
redesign
.compat.itemBindingOf
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.compat.itemBindingOf
import
com.topjohnwu.magisk.utils.KObservableField
import
com.topjohnwu.superuser.Shell
import
me.tatarka.bindingcollectionadapter2.BR
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/install/InstallFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/install/InstallFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.install
package
com.topjohnwu.magisk.
ui
.install
import
android.content.Intent
import
androidx.core.graphics.Insets
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentInstallMd2Binding
import
com.topjohnwu.magisk.model.events.RequestFileEvent
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
org.koin.androidx.viewmodel.ext.android.viewModel
class
InstallFragment
:
CompatFragment
<
InstallViewModel
,
FragmentInstallMd2Binding
>()
{
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/install/InstallViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/install/InstallViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.install
package
com.topjohnwu.magisk.
ui
.install
import
android.net.Uri
import
com.topjohnwu.magisk.R
...
...
@@ -8,7 +8,7 @@ import com.topjohnwu.magisk.model.download.RemoteFileService
import
com.topjohnwu.magisk.model.entity.internal.Configuration
import
com.topjohnwu.magisk.model.entity.internal.DownloadSubject
import
com.topjohnwu.magisk.model.events.RequestFileEvent
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
import
com.topjohnwu.magisk.utils.KObservableField
import
com.topjohnwu.superuser.Shell
import
com.topjohnwu.superuser.ShellUtils
...
...
@@ -69,4 +69,4 @@ class InstallViewModel : CompatViewModel(State.LOADED) {
.
fastCmd
(
"grep_prop ro.build.ab_update"
)
.
let
{
it
.
isNotEmpty
()
&&
it
.
toBoolean
()
}
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/log/LogFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/log/LogFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.log
package
com.topjohnwu.magisk.
ui
.log
import
android.os.Bundle
import
android.view.Menu
...
...
@@ -9,8 +9,8 @@ import androidx.core.graphics.Insets
import
androidx.core.view.isVisible
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentLogMd2Binding
import
com.topjohnwu.magisk.
redesign
.MainActivity
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.MainActivity
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
com.topjohnwu.magisk.utils.MotionRevealHelper
import
org.koin.androidx.viewmodel.ext.android.viewModel
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/log/LogViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/log/LogViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.log
package
com.topjohnwu.magisk.
ui
.log
import
com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.Config
...
...
@@ -12,9 +12,9 @@ import com.topjohnwu.magisk.model.entity.recycler.ConsoleItem
import
com.topjohnwu.magisk.model.entity.recycler.LogItem
import
com.topjohnwu.magisk.model.entity.recycler.TextItem
import
com.topjohnwu.magisk.model.events.SnackbarEvent
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
redesign
.compat.diffListOf
import
com.topjohnwu.magisk.
redesign
.compat.itemBindingOf
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.compat.diffListOf
import
com.topjohnwu.magisk.
ui
.compat.itemBindingOf
import
com.topjohnwu.superuser.Shell
import
io.reactivex.Completable
import
io.reactivex.android.schedulers.AndroidSchedulers
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/module/ModuleFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/module/ModuleFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.module
package
com.topjohnwu.magisk.
ui
.module
import
android.content.Intent
import
android.os.Bundle
...
...
@@ -14,10 +14,10 @@ import com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentModuleMd2Binding
import
com.topjohnwu.magisk.model.events.InstallExternalModuleEvent
import
com.topjohnwu.magisk.model.events.ViewEvent
import
com.topjohnwu.magisk.
redesign
.MainActivity
import
com.topjohnwu.magisk.
redesign
.ReselectionTarget
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
redesign
.compat.hideKeyboard
import
com.topjohnwu.magisk.
ui
.MainActivity
import
com.topjohnwu.magisk.
ui
.ReselectionTarget
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.hideKeyboard
import
com.topjohnwu.magisk.utils.EndlessRecyclerScrollListener
import
com.topjohnwu.magisk.utils.MotionRevealHelper
import
com.topjohnwu.magisk.utils.PinchZoomTouchListener
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/module/ModuleViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/module/ModuleViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.module
package
com.topjohnwu.magisk.
ui
.module
import
androidx.annotation.WorkerThread
import
androidx.databinding.Bindable
...
...
@@ -19,8 +19,8 @@ import com.topjohnwu.magisk.model.entity.recycler.*
import
com.topjohnwu.magisk.model.events.InstallExternalModuleEvent
import
com.topjohnwu.magisk.model.events.OpenChangelogEvent
import
com.topjohnwu.magisk.model.events.dialog.ModuleInstallDialog
import
com.topjohnwu.magisk.redesign.compat.*
import
com.topjohnwu.magisk.tasks.RepoUpdater
import
com.topjohnwu.magisk.ui.compat.*
import
com.topjohnwu.magisk.utils.EndlessRecyclerScrollListener
import
com.topjohnwu.magisk.utils.KObservableField
import
com.topjohnwu.magisk.utils.currentLocale
...
...
@@ -310,4 +310,4 @@ class ModuleViewModel(
OpenChangelogEvent
(
item
.
repo
?:
return
).
publish
()
}
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/request/RequestActivity.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/request/RequestActivity.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.request
package
com.topjohnwu.magisk.
ui
.request
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.ActivityRequestMd2Binding
import
com.topjohnwu.magisk.
redesign
.compat.CompatActivity
import
com.topjohnwu.magisk.
ui
.compat.CompatActivity
import
org.koin.androidx.viewmodel.ext.android.viewModel
class
RequestActivity
:
CompatActivity
<
RequestViewModel
,
ActivityRequestMd2Binding
>()
{
...
...
@@ -11,4 +11,4 @@ class RequestActivity : CompatActivity<RequestViewModel, ActivityRequestMd2Bindi
override
val
layoutRes
=
R
.
layout
.
activity_request_md2
override
val
viewModel
by
viewModel
<
RequestViewModel
>()
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/ui/request/RequestViewModel.kt
0 → 100644
View file @
3490ba0a
package
com.topjohnwu.magisk.ui.request
import
com.topjohnwu.magisk.ui.compat.CompatViewModel
class
RequestViewModel
:
CompatViewModel
()
app/src/main/java/com/topjohnwu/magisk/
redesign
/safetynet/SafetynetFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/safetynet/SafetynetFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.safetynet
package
com.topjohnwu.magisk.
ui
.safetynet
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentSafetynetMd2Binding
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
org.koin.androidx.viewmodel.ext.android.viewModel
class
SafetynetFragment
:
CompatFragment
<
SafetynetViewModel
,
FragmentSafetynetMd2Binding
>()
{
...
...
@@ -15,4 +15,4 @@ class SafetynetFragment : CompatFragment<SafetynetViewModel, FragmentSafetynetMd
activity
.
setTitle
(
R
.
string
.
safetyNet
)
}
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/safetynet/SafetynetViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/safetynet/SafetynetViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.safetynet
package
com.topjohnwu.magisk.
ui
.safetynet
import
androidx.databinding.Bindable
import
com.topjohnwu.magisk.BR
...
...
@@ -6,8 +6,8 @@ import com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.extensions.subscribeK
import
com.topjohnwu.magisk.model.events.SafetyNetResult
import
com.topjohnwu.magisk.model.events.UpdateSafetyNetEvent
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
redesign
.safetynet.SafetyNetState.*
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.safetynet.SafetyNetState.*
import
com.topjohnwu.magisk.utils.KObservableField
import
com.topjohnwu.magisk.utils.RxBus
import
com.topjohnwu.magisk.utils.SafetyNetHelper
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/settings/SettingsFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/settings/SettingsFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.settings
package
com.topjohnwu.magisk.
ui
.settings
import
android.os.Bundle
import
android.view.View
import
androidx.core.graphics.Insets
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentSettingsMd2Binding
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
com.topjohnwu.magisk.utils.PinchZoomTouchListener
import
org.koin.androidx.viewmodel.ext.android.viewModel
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/settings/SettingsItems.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/settings/SettingsItems.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.settings
package
com.topjohnwu.magisk.
ui
.settings
import
android.content.Context
import
android.os.Build
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/settings/SettingsViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/settings/SettingsViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.settings
package
com.topjohnwu.magisk.
ui
.settings
import
android.Manifest
import
android.view.View
...
...
@@ -15,10 +15,10 @@ import com.topjohnwu.magisk.model.events.PermissionEvent
import
com.topjohnwu.magisk.model.events.RecreateEvent
import
com.topjohnwu.magisk.model.events.dialog.BiometricDialog
import
com.topjohnwu.magisk.model.navigation.Navigation
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
redesign
.compat.adapterOf
import
com.topjohnwu.magisk.
redesign
.compat.diffListOf
import
com.topjohnwu.magisk.
redesign
.compat.itemBindingOf
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.compat.adapterOf
import
com.topjohnwu.magisk.
ui
.compat.diffListOf
import
com.topjohnwu.magisk.
ui
.compat.itemBindingOf
import
com.topjohnwu.magisk.utils.PatchAPK
import
com.topjohnwu.magisk.utils.Utils
import
com.topjohnwu.superuser.Shell
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/superuser/SuperuserFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/superuser/SuperuserFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.superuser
package
com.topjohnwu.magisk.
ui
.superuser
import
android.os.Bundle
import
android.view.Menu
...
...
@@ -9,7 +9,7 @@ import androidx.core.graphics.Insets
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentSuperuserMd2Binding
import
com.topjohnwu.magisk.model.navigation.Navigation
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
com.topjohnwu.magisk.utils.PinchZoomTouchListener
import
org.koin.androidx.viewmodel.ext.android.viewModel
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/superuser/SuperuserViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/superuser/SuperuserViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.superuser
package
com.topjohnwu.magisk.
ui
.superuser
import
android.content.pm.PackageManager
import
android.content.res.Resources
...
...
@@ -19,10 +19,10 @@ import com.topjohnwu.magisk.model.events.SnackbarEvent
import
com.topjohnwu.magisk.model.events.dialog.BiometricDialog
import
com.topjohnwu.magisk.model.events.dialog.SuperuserRevokeDialog
import
com.topjohnwu.magisk.model.navigation.Navigation
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
redesign
.compat.adapterOf
import
com.topjohnwu.magisk.
redesign
.compat.diffListOf
import
com.topjohnwu.magisk.
redesign
.compat.itemBindingOf
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.compat.adapterOf
import
com.topjohnwu.magisk.
ui
.compat.diffListOf
import
com.topjohnwu.magisk.
ui
.compat.itemBindingOf
import
com.topjohnwu.magisk.utils.BiometricHelper
import
com.topjohnwu.magisk.utils.currentLocale
import
io.reactivex.Single
...
...
@@ -160,4 +160,4 @@ class SuperuserViewModel(
private
fun
deletePolicy
(
policy
:
MagiskPolicy
)
=
db
.
delete
(
policy
.
uid
).
andThen
(
Single
.
just
(
policy
))
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/
redesign
/theme/Theme.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/theme/Theme.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.theme
package
com.topjohnwu.magisk.
ui
.theme
import
com.topjohnwu.magisk.Config
import
com.topjohnwu.magisk.R
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/theme/ThemeFragment.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/theme/ThemeFragment.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.theme
package
com.topjohnwu.magisk.
ui
.theme
import
androidx.core.graphics.Insets
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.FragmentThemeMd2Binding
import
com.topjohnwu.magisk.
redesign
.compat.CompatFragment
import
com.topjohnwu.magisk.
ui
.compat.CompatFragment
import
org.koin.androidx.viewmodel.ext.android.viewModel
class
ThemeFragment
:
CompatFragment
<
ThemeViewModel
,
FragmentThemeMd2Binding
>()
{
...
...
app/src/main/java/com/topjohnwu/magisk/
redesign
/theme/ThemeViewModel.kt
→
app/src/main/java/com/topjohnwu/magisk/
ui
/theme/ThemeViewModel.kt
View file @
3490ba0a
package
com.topjohnwu.magisk.
redesign
.theme
package
com.topjohnwu.magisk.
ui
.theme
import
com.topjohnwu.magisk.model.entity.recycler.TappableHeadlineItem
import
com.topjohnwu.magisk.model.events.RecreateEvent
import
com.topjohnwu.magisk.model.events.dialog.DarkThemeDialog
import
com.topjohnwu.magisk.
redesign
.compat.CompatViewModel
import
com.topjohnwu.magisk.
ui
.compat.CompatViewModel
class
ThemeViewModel
:
CompatViewModel
(),
TappableHeadlineItem
.
Listener
{
...
...
@@ -21,4 +21,4 @@ class ThemeViewModel : CompatViewModel(), TappableHeadlineItem.Listener {
private
fun
darkModePressed
()
=
DarkThemeDialog
().
publish
()
}
\ No newline at end of file
}
app/src/main/java/com/topjohnwu/magisk/utils/SuHandler.kt
View file @
3490ba0a
...
...
@@ -15,7 +15,7 @@ import com.topjohnwu.magisk.extensions.subscribeK
import
com.topjohnwu.magisk.model.entity.MagiskPolicy
import
com.topjohnwu.magisk.model.entity.toLog
import
com.topjohnwu.magisk.model.entity.toPolicy
import
com.topjohnwu.magisk.
ui
.surequest.SuRequestActivity
import
com.topjohnwu.magisk.
legacy
.surequest.SuRequestActivity
import
com.topjohnwu.superuser.Shell
import
timber.log.Timber
...
...
app/src/main/java/com/topjohnwu/magisk/view/MagiskDialog.kt
View file @
3490ba0a
...
...
@@ -22,7 +22,7 @@ import com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.ComparableRvItem
import
com.topjohnwu.magisk.databinding.DialogMagiskBaseBinding
import
com.topjohnwu.magisk.
redesign
.compat.itemBindingOf
import
com.topjohnwu.magisk.
ui
.compat.itemBindingOf
import
com.topjohnwu.magisk.utils.KObservableField
import
me.tatarka.bindingcollectionadapter2.BindingRecyclerViewAdapters
import
me.tatarka.bindingcollectionadapter2.ItemBinding
...
...
@@ -277,4 +277,4 @@ class MagiskDialog @JvmOverloads constructor(
}
typealias
OnDialogButtonClickListener
=
(
DialogInterface
)
->
Unit
typealias
OnDialogClickListener
=
(
position
:
Int
)
->
Unit
\ No newline at end of file
typealias
OnDialogClickListener
=
(
position
:
Int
)
->
Unit
app/src/main/res/layout/activity_flash.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
ui
.flash.FlashViewModel"
/>
type=
"com.topjohnwu.magisk.
legacy
.flash.FlashViewModel"
/>
</data>
...
...
@@ -149,4 +149,4 @@
</androidx.coordinatorlayout.widget.CoordinatorLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/activity_main_md2.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.MainViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.MainViewModel"
/>
</data>
...
...
app/src/main/res/layout/activity_request.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
ui
.surequest.SuRequestViewModel"
/>
type=
"com.topjohnwu.magisk.
legacy
.surequest.SuRequestViewModel"
/>
</data>
...
...
app/src/main/res/layout/activity_request_md2.xml
View file @
3490ba0a
...
...
@@ -5,7 +5,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.request.RequestViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.request.RequestViewModel"
/>
</data>
...
...
@@ -20,4 +20,4 @@
</androidx.core.widget.NestedScrollView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/dialog_settings_app_name.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"data"
type=
"com.topjohnwu.magisk.
redesign
.settings.Hide"
/>
type=
"com.topjohnwu.magisk.
ui
.settings.Hide"
/>
</data>
...
...
app/src/main/res/layout/dialog_settings_download_path.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"data"
type=
"com.topjohnwu.magisk.
redesign
.settings.DownloadPath"
/>
type=
"com.topjohnwu.magisk.
ui
.settings.DownloadPath"
/>
</data>
...
...
app/src/main/res/layout/dialog_settings_update_channel.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"data"
type=
"com.topjohnwu.magisk.
redesign
.settings.UpdateChannelUrl"
/>
type=
"com.topjohnwu.magisk.
ui
.settings.UpdateChannelUrl"
/>
</data>
...
...
app/src/main/res/layout/fragment_flash_md2.xml
View file @
3490ba0a
...
...
@@ -5,7 +5,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.flash.FlashViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.flash.FlashViewModel"
/>
</data>
...
...
@@ -20,4 +20,4 @@
</androidx.core.widget.NestedScrollView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_hide_md2.xml
View file @
3490ba0a
...
...
@@ -9,7 +9,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.hide.HideViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.hide.HideViewModel"
/>
</data>
...
...
@@ -89,4 +89,4 @@
</FrameLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_home_md2.xml
View file @
3490ba0a
...
...
@@ -17,7 +17,7 @@
<import
type=
"com.topjohnwu.magisk.BuildConfig"
/>
<import
type=
"com.topjohnwu.magisk.
redesign
.home.MagiskState"
/>
<import
type=
"com.topjohnwu.magisk.
ui
.home.MagiskState"
/>
<import
type=
"com.topjohnwu.magisk.extensions.XAndroidKt"
/>
...
...
@@ -25,7 +25,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.home.HomeViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.home.HomeViewModel"
/>
</data>
...
...
app/src/main/res/layout/fragment_install_md2.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.install.InstallViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.install.InstallViewModel"
/>
</data>
...
...
@@ -278,4 +278,4 @@
</androidx.core.widget.NestedScrollView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_log_md2.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.log.LogViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.log.LogViewModel"
/>
</data>
...
...
@@ -77,4 +77,4 @@
</FrameLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_module_md2.xml
View file @
3490ba0a
...
...
@@ -11,7 +11,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.module.ModuleViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.module.ModuleViewModel"
/>
</data>
...
...
@@ -94,4 +94,4 @@
</FrameLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_safetynet_md2.xml
View file @
3490ba0a
...
...
@@ -12,7 +12,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.safetynet.SafetynetViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.safetynet.SafetynetViewModel"
/>
</data>
...
...
@@ -289,4 +289,4 @@
</androidx.core.widget.NestedScrollView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_settings_md2.xml
View file @
3490ba0a
...
...
@@ -9,7 +9,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.settings.SettingsViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.settings.SettingsViewModel"
/>
</data>
...
...
@@ -35,4 +35,4 @@
tools:listitem=
"@layout/item_settings_toggle"
tools:paddingTop=
"@dimen/l1"
/>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_superuser_md2.xml
View file @
3490ba0a
...
...
@@ -9,7 +9,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.superuser.SuperuserViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.superuser.SuperuserViewModel"
/>
</data>
...
...
@@ -62,4 +62,4 @@
</FrameLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/fragment_theme_md2.xml
View file @
3490ba0a
...
...
@@ -4,11 +4,11 @@
<data>
<import
type=
"com.topjohnwu.magisk.
redesign
.theme.Theme"
/>
<import
type=
"com.topjohnwu.magisk.
ui
.theme.Theme"
/>
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.theme.ThemeViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.theme.ThemeViewModel"
/>
</data>
...
...
@@ -159,4 +159,4 @@
</androidx.core.widget.NestedScrollView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/include_hide_filter.xml
View file @
3490ba0a
...
...
@@ -9,7 +9,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.hide.HideViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.hide.HideViewModel"
/>
</data>
...
...
app/src/main/res/layout/include_log_magisk.xml
View file @
3490ba0a
...
...
@@ -7,7 +7,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.log.LogViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.log.LogViewModel"
/>
</data>
...
...
@@ -51,4 +51,4 @@
</FrameLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/include_module_filter.xml
View file @
3490ba0a
...
...
@@ -9,7 +9,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.module.ModuleViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.module.ModuleViewModel"
/>
</data>
...
...
app/src/main/res/layout/item_developer.xml
View file @
3490ba0a
...
...
@@ -11,7 +11,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.home.HomeViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.home.HomeViewModel"
/>
</data>
...
...
@@ -66,4 +66,4 @@
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_developer_link.xml
View file @
3490ba0a
...
...
@@ -11,7 +11,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.home.HomeViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.home.HomeViewModel"
/>
</data>
...
...
@@ -47,4 +47,4 @@
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_hide_md2.xml
View file @
3490ba0a
...
...
@@ -13,7 +13,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.hide.HideViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.hide.HideViewModel"
/>
</data>
...
...
@@ -129,4 +129,4 @@
</com.google.android.material.card.MaterialCardView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_hide_process_md2.xml
View file @
3490ba0a
...
...
@@ -11,7 +11,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.hide.HideViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.hide.HideViewModel"
/>
</data>
...
...
@@ -55,4 +55,4 @@
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_log_access_md2.xml
View file @
3490ba0a
...
...
@@ -13,7 +13,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.log.LogViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.log.LogViewModel"
/>
</data>
...
...
@@ -101,4 +101,4 @@
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_module_download.xml
View file @
3490ba0a
...
...
@@ -10,7 +10,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.module.ModuleViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.module.ModuleViewModel"
/>
</data>
...
...
app/src/main/res/layout/item_module_md2.xml
View file @
3490ba0a
...
...
@@ -15,7 +15,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.module.ModuleViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.module.ModuleViewModel"
/>
</data>
...
...
@@ -133,4 +133,4 @@
</com.google.android.material.card.MaterialCardView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_policy_md2.xml
View file @
3490ba0a
...
...
@@ -11,7 +11,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.superuser.SuperuserViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.superuser.SuperuserViewModel"
/>
</data>
...
...
@@ -180,4 +180,4 @@
</com.google.android.material.card.MaterialCardView>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_repo_md2.xml
View file @
3490ba0a
...
...
@@ -13,7 +13,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.module.ModuleViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.module.ModuleViewModel"
/>
</data>
...
...
app/src/main/res/layout/item_section_md2.xml
View file @
3490ba0a
...
...
@@ -11,7 +11,7 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.module.ModuleViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.module.ModuleViewModel"
/>
</data>
...
...
@@ -53,4 +53,4 @@
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
\ No newline at end of file
</layout>
app/src/main/res/layout/item_theme.xml
View file @
3490ba0a
...
...
@@ -7,11 +7,11 @@
<variable
name=
"viewModel"
type=
"com.topjohnwu.magisk.
redesign
.theme.ThemeViewModel"
/>
type=
"com.topjohnwu.magisk.
ui
.theme.ThemeViewModel"
/>
<variable
name=
"theme"
type=
"com.topjohnwu.magisk.
redesign
.theme.Theme"
/>
type=
"com.topjohnwu.magisk.
ui
.theme.Theme"
/>
</data>
...
...
@@ -179,4 +179,4 @@
</com.google.android.material.card.MaterialCardView>
</layout>
\ No newline at end of file
</layout>
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