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
8eac6c0b
Commit
8eac6c0b
authored
Jan 22, 2022
by
topjohnwu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Cleanup arch classes
parent
bf8b74e9
Show whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
85 additions
and
86 deletions
+85
-86
BaseFragment.kt
app/src/main/java/com/topjohnwu/magisk/arch/BaseFragment.kt
+3
-5
BaseMainActivity.kt
...c/main/java/com/topjohnwu/magisk/arch/BaseMainActivity.kt
+1
-2
NavigationActivity.kt
...main/java/com/topjohnwu/magisk/arch/NavigationActivity.kt
+35
-0
UIActivity.kt
app/src/main/java/com/topjohnwu/magisk/arch/UIActivity.kt
+2
-31
ViewEvent.kt
app/src/main/java/com/topjohnwu/magisk/arch/ViewEvent.kt
+2
-2
ViewModelHolder.kt
...rc/main/java/com/topjohnwu/magisk/arch/ViewModelHolder.kt
+2
-4
SnackbarEvent.kt
...rc/main/java/com/topjohnwu/magisk/events/SnackbarEvent.kt
+2
-2
ViewEvents.kt
app/src/main/java/com/topjohnwu/magisk/events/ViewEvents.kt
+9
-9
BiometricEvent.kt
...java/com/topjohnwu/magisk/events/dialog/BiometricEvent.kt
+2
-2
DialogEvent.kt
...in/java/com/topjohnwu/magisk/events/dialog/DialogEvent.kt
+2
-2
UninstallDialog.kt
...ava/com/topjohnwu/magisk/events/dialog/UninstallDialog.kt
+3
-3
MainActivity.kt
app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt
+1
-1
DenyListFragment.kt
...ain/java/com/topjohnwu/magisk/ui/deny/DenyListFragment.kt
+2
-2
FlashFragment.kt
.../main/java/com/topjohnwu/magisk/ui/flash/FlashFragment.kt
+2
-2
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
+1
-1
InstallFragment.kt
...n/java/com/topjohnwu/magisk/ui/install/InstallFragment.kt
+2
-2
LogFragment.kt
app/src/main/java/com/topjohnwu/magisk/ui/log/LogFragment.kt
+2
-2
ModuleFragment.kt
...ain/java/com/topjohnwu/magisk/ui/module/ModuleFragment.kt
+2
-2
SettingsFragment.kt
...java/com/topjohnwu/magisk/ui/settings/SettingsFragment.kt
+2
-2
SuperuserFragment.kt
...va/com/topjohnwu/magisk/ui/superuser/SuperuserFragment.kt
+2
-2
SuRequestActivity.kt
...va/com/topjohnwu/magisk/ui/surequest/SuRequestActivity.kt
+2
-4
ThemeFragment.kt
.../main/java/com/topjohnwu/magisk/ui/theme/ThemeFragment.kt
+2
-2
No files found.
app/src/main/java/com/topjohnwu/magisk/arch/Base
UI
Fragment.kt
→
app/src/main/java/com/topjohnwu/magisk/arch/BaseFragment.kt
View file @
8eac6c0b
...
...
@@ -13,14 +13,12 @@ import androidx.navigation.NavDirections
import
com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.ktx.startAnimations
abstract
class
BaseUIFragment
<
VM
:
BaseViewModel
,
Binding
:
ViewDataBinding
>
:
Fragment
(),
BaseUIComponent
<
VM
>
{
abstract
class
BaseFragment
<
Binding
:
ViewDataBinding
>
:
Fragment
(),
ViewModelHolder
{
val
activity
get
()
=
requireActivity
()
as
BaseUIActivity
<*,
*>
val
activity
get
()
=
requireActivity
()
as
NavigationActivity
<
*>
protected
lateinit
var
binding
:
Binding
protected
abstract
val
layoutRes
:
Int
override
val
viewRoot
:
View
get
()
=
binding
.
root
private
val
navigation
get
()
=
activity
.
navigation
open
val
snackbarAnchorView
:
View
?
get
()
=
null
...
...
@@ -64,7 +62,7 @@ abstract class BaseUIFragment<VM : BaseViewModel, Binding : ViewDataBinding> :
super
.
onViewCreated
(
view
,
savedInstanceState
)
binding
.
addOnRebindCallback
(
object
:
OnRebindCallback
<
Binding
>()
{
override
fun
onPreBind
(
binding
:
Binding
):
Boolean
{
this
@Base
UI
Fragment
.
onPreBind
(
binding
)
this
@BaseFragment
.
onPreBind
(
binding
)
return
true
}
})
...
...
app/src/main/java/com/topjohnwu/magisk/arch/BaseMainActivity.kt
View file @
8eac6c0b
...
...
@@ -21,8 +21,7 @@ import com.topjohnwu.superuser.Shell
import
java.util.concurrent.CountDownLatch
import
java.util.concurrent.TimeUnit
abstract
class
BaseMainActivity
<
VM
:
BaseViewModel
,
Binding
:
ViewDataBinding
>
:
BaseUIActivity
<
VM
,
Binding
>()
{
abstract
class
BaseMainActivity
<
Binding
:
ViewDataBinding
>
:
NavigationActivity
<
Binding
>()
{
companion
object
{
private
var
doPreload
=
true
...
...
app/src/main/java/com/topjohnwu/magisk/arch/NavigationActivity.kt
0 → 100644
View file @
8eac6c0b
package
com.topjohnwu.magisk.arch
import
android.view.KeyEvent
import
androidx.databinding.ViewDataBinding
import
androidx.navigation.NavController
import
androidx.navigation.NavDirections
import
androidx.navigation.fragment.NavHostFragment
abstract
class
NavigationActivity
<
Binding
:
ViewDataBinding
>
:
UIActivity
<
Binding
>()
{
abstract
val
navHostId
:
Int
private
val
navHostFragment
by
lazy
{
supportFragmentManager
.
findFragmentById
(
navHostId
)
as
NavHostFragment
}
protected
val
currentFragment
get
()
=
navHostFragment
.
childFragmentManager
.
fragments
.
getOrNull
(
0
)
as
?
BaseFragment
<*>
val
navigation
:
NavController
get
()
=
navHostFragment
.
navController
override
fun
dispatchKeyEvent
(
event
:
KeyEvent
):
Boolean
{
return
currentFragment
?.
onKeyEvent
(
event
)
==
true
||
super
.
dispatchKeyEvent
(
event
)
}
override
fun
onBackPressed
()
{
if
(
currentFragment
?.
onBackPressed
()
?.
not
()
==
true
)
{
super
.
onBackPressed
()
}
}
fun
NavDirections
.
navigate
()
{
navigation
.
navigate
(
this
)
}
}
app/src/main/java/com/topjohnwu/magisk/arch/
Base
UIActivity.kt
→
app/src/main/java/com/topjohnwu/magisk/arch/UIActivity.kt
View file @
8eac6c0b
...
...
@@ -4,37 +4,22 @@ import android.content.res.Resources
import
android.graphics.Color
import
android.os.Build
import
android.os.Bundle
import
android.view.KeyEvent
import
android.view.View
import
androidx.appcompat.app.AppCompatDelegate
import
androidx.core.content.res.use
import
androidx.databinding.DataBindingUtil
import
androidx.databinding.ViewDataBinding
import
androidx.navigation.NavController
import
androidx.navigation.NavDirections
import
androidx.navigation.fragment.NavHostFragment
import
com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.core.Config
import
com.topjohnwu.magisk.core.base.BaseActivity
import
rikka.insets.WindowInsetsHelper
import
rikka.layoutinflater.view.LayoutInflaterFactory
abstract
class
BaseUIActivity
<
VM
:
BaseViewModel
,
Binding
:
ViewDataBinding
>
:
BaseActivity
(),
BaseUIComponent
<
VM
>
{
abstract
class
UIActivity
<
Binding
:
ViewDataBinding
>
:
BaseActivity
(),
ViewModelHolder
{
protected
lateinit
var
binding
:
Binding
protected
abstract
val
layoutRes
:
Int
private
val
navHostFragment
by
lazy
{
supportFragmentManager
.
findFragmentById
(
navHostId
)
as
?
NavHostFragment
}
private
val
topFragment
get
()
=
navHostFragment
?.
childFragmentManager
?.
fragments
?.
getOrNull
(
0
)
protected
val
currentFragment
get
()
=
topFragment
as
?
BaseUIFragment
<*,
*>
override
val
viewRoot
:
View
get
()
=
binding
.
root
open
val
navigation
:
NavController
?
get
()
=
navHostFragment
?.
navController
open
val
navHostId
:
Int
=
0
open
val
snackbarView
get
()
=
binding
.
root
open
val
snackbarAnchorView
:
View
?
get
()
=
null
...
...
@@ -89,7 +74,7 @@ abstract class BaseUIActivity<VM : BaseViewModel, Binding : ViewDataBinding> :
}
fun
setAccessibilityDelegate
(
delegate
:
View
.
AccessibilityDelegate
?)
{
viewR
oot
.
rootView
.
accessibilityDelegate
=
delegate
binding
.
r
oot
.
rootView
.
accessibilityDelegate
=
delegate
}
override
fun
onResume
()
{
...
...
@@ -97,23 +82,9 @@ abstract class BaseUIActivity<VM : BaseViewModel, Binding : ViewDataBinding> :
viewModel
.
requestRefresh
()
}
override
fun
dispatchKeyEvent
(
event
:
KeyEvent
):
Boolean
{
return
currentFragment
?.
onKeyEvent
(
event
)
==
true
||
super
.
dispatchKeyEvent
(
event
)
}
override
fun
onEventDispatched
(
event
:
ViewEvent
)
=
when
(
event
)
{
is
ContextExecutor
->
event
(
this
)
is
ActivityExecutor
->
event
(
this
)
else
->
Unit
}
override
fun
onBackPressed
()
{
if
(
navigation
==
null
||
currentFragment
?.
onBackPressed
()
?.
not
()
==
true
)
{
super
.
onBackPressed
()
}
}
fun
NavDirections
.
navigate
()
{
navigation
?.
navigate
(
this
)
}
}
app/src/main/java/com/topjohnwu/magisk/arch/ViewEvent.kt
View file @
8eac6c0b
...
...
@@ -18,9 +18,9 @@ interface ContextExecutor {
}
interface
ActivityExecutor
{
operator
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
operator
fun
invoke
(
activity
:
UIActivity
<
*
>)
}
interface
FragmentExecutor
{
operator
fun
invoke
(
fragment
:
Base
UIFragment
<
*
,
*
>)
operator
fun
invoke
(
fragment
:
Base
Fragment
<
*
>)
}
app/src/main/java/com/topjohnwu/magisk/arch/
BaseUIComponent
.kt
→
app/src/main/java/com/topjohnwu/magisk/arch/
ViewModelHolder
.kt
View file @
8eac6c0b
package
com.topjohnwu.magisk.arch
import
android.view.View
import
androidx.lifecycle.LifecycleOwner
interface
BaseUIComponent
<
VM
:
BaseViewModel
>
:
LifecycleOwner
{
interface
ViewModelHolder
:
LifecycleOwner
{
val
viewRoot
:
View
val
viewModel
:
VM
val
viewModel
:
BaseViewModel
fun
startObserveEvents
()
{
viewModel
.
viewEvents
.
observe
(
this
)
{
...
...
app/src/main/java/com/topjohnwu/magisk/events/SnackbarEvent.kt
View file @
8eac6c0b
...
...
@@ -4,7 +4,7 @@ import android.view.View
import
androidx.annotation.StringRes
import
com.google.android.material.snackbar.Snackbar
import
com.topjohnwu.magisk.arch.ActivityExecutor
import
com.topjohnwu.magisk.arch.
Base
UIActivity
import
com.topjohnwu.magisk.arch.UIActivity
import
com.topjohnwu.magisk.arch.ViewEvent
import
com.topjohnwu.magisk.utils.TextHolder
import
com.topjohnwu.magisk.utils.asText
...
...
@@ -36,7 +36,7 @@ class SnackbarEvent constructor(
builder
:
Snackbar
.()
->
Unit
)
=
Snackbar
.
make
(
view
,
message
,
length
).
setAnchorView
(
anchor
).
apply
(
builder
).
show
()
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
snackbar
(
activity
.
snackbarView
,
activity
.
snackbarAnchorView
,
msg
.
getText
(
activity
.
resources
).
toString
(),
length
,
builder
)
...
...
app/src/main/java/com/topjohnwu/magisk/events/ViewEvents.kt
View file @
8eac6c0b
...
...
@@ -18,32 +18,32 @@ class PermissionEvent(
private
val
callback
:
(
Boolean
)
->
Unit
)
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
=
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
=
activity
.
withPermission
(
permission
,
callback
)
}
class
BackPressEvent
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
activity
.
onBackPressed
()
}
}
class
DieEvent
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
activity
.
finish
()
}
}
class
ShowUIEvent
(
private
val
delegate
:
View
.
AccessibilityDelegate
?)
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
activity
.
setContentView
()
activity
.
setAccessibilityDelegate
(
delegate
)
}
}
class
RecreateEvent
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
activity
.
recreate
()
}
}
...
...
@@ -51,7 +51,7 @@ class RecreateEvent : ViewEvent(), ActivityExecutor {
class
MagiskInstallFileEvent
(
private
val
callback
:
(
Uri
)
->
Unit
)
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
try
{
activity
.
getContent
(
"*/*"
,
callback
)
Utils
.
toast
(
R
.
string
.
patch_file_msg
,
Toast
.
LENGTH_LONG
)
...
...
@@ -65,8 +65,8 @@ class NavigationEvent(
private
val
directions
:
NavDirections
,
private
val
pop
:
Boolean
)
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
(
activity
as
?
BaseUIActivity
<*,
*>)
?.
apply
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
(
activity
as
?
NavigationActivity
<
*>)
?.
apply
{
if
(
pop
)
navigation
?.
popBackStack
()
directions
.
navigate
()
}
...
...
@@ -80,7 +80,7 @@ class AddHomeIconEvent : ViewEvent(), ContextExecutor {
}
class
SelectModuleEvent
:
ViewEvent
(),
FragmentExecutor
{
override
fun
invoke
(
fragment
:
Base
UIFragment
<
*
,
*
>)
{
override
fun
invoke
(
fragment
:
Base
Fragment
<
*
>)
{
try
{
fragment
.
apply
{
activity
.
getContent
(
"application/zip"
)
{
...
...
app/src/main/java/com/topjohnwu/magisk/events/dialog/BiometricEvent.kt
View file @
8eac6c0b
package
com.topjohnwu.magisk.events.dialog
import
com.topjohnwu.magisk.arch.ActivityExecutor
import
com.topjohnwu.magisk.arch.
Base
UIActivity
import
com.topjohnwu.magisk.arch.UIActivity
import
com.topjohnwu.magisk.arch.ViewEvent
import
com.topjohnwu.magisk.core.utils.BiometricHelper
...
...
@@ -16,7 +16,7 @@ class BiometricEvent(
builder
(
Builder
())
}
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
BiometricHelper
.
authenticate
(
activity
,
onError
=
listenerOnFailure
,
...
...
app/src/main/java/com/topjohnwu/magisk/events/dialog/DialogEvent.kt
View file @
8eac6c0b
package
com.topjohnwu.magisk.events.dialog
import
com.topjohnwu.magisk.arch.ActivityExecutor
import
com.topjohnwu.magisk.arch.
Base
UIActivity
import
com.topjohnwu.magisk.arch.UIActivity
import
com.topjohnwu.magisk.arch.ViewEvent
import
com.topjohnwu.magisk.view.MagiskDialog
abstract
class
DialogEvent
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
MagiskDialog
(
activity
)
.
apply
{
setOwnerActivity
(
activity
)
}
.
apply
(
this
::
build
).
show
()
...
...
app/src/main/java/com/topjohnwu/magisk/events/dialog/UninstallDialog.kt
View file @
8eac6c0b
...
...
@@ -4,7 +4,7 @@ import android.app.ProgressDialog
import
android.content.Context
import
android.widget.Toast
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.
BaseUI
Activity
import
com.topjohnwu.magisk.arch.
Navigation
Activity
import
com.topjohnwu.magisk.ui.flash.FlashFragment
import
com.topjohnwu.magisk.utils.Utils
import
com.topjohnwu.magisk.view.MagiskDialog
...
...
@@ -45,8 +45,8 @@ class UninstallDialog : DialogEvent() {
}
private
fun
completeUninstall
(
dialog
:
MagiskDialog
)
{
(
dialog
.
ownerActivity
as
BaseUIActivity
<*,
*>)
.
navigation
?
.
navigate
(
FlashFragment
.
uninstall
())
(
dialog
.
ownerActivity
as
NavigationActivity
<
*>)
.
navigation
.
navigate
(
FlashFragment
.
uninstall
())
}
}
app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt
View file @
8eac6c0b
...
...
@@ -27,7 +27,7 @@ import java.io.File
class
MainViewModel
:
BaseViewModel
()
class
MainActivity
:
BaseMainActivity
<
MainViewModel
,
ActivityMainMd2Binding
>()
{
class
MainActivity
:
BaseMainActivity
<
ActivityMainMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
activity_main_md2
override
val
viewModel
by
viewModel
<
MainViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/deny/DenyListFragment.kt
View file @
8eac6c0b
...
...
@@ -9,7 +9,7 @@ import android.view.View
import
androidx.appcompat.widget.SearchView
import
androidx.recyclerview.widget.RecyclerView
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.databinding.FragmentDenyMd2Binding
import
com.topjohnwu.magisk.di.viewModel
import
com.topjohnwu.magisk.ktx.hideKeyboard
...
...
@@ -17,7 +17,7 @@ import rikka.recyclerview.addEdgeSpacing
import
rikka.recyclerview.addItemSpacing
import
rikka.recyclerview.fixEdgeEffect
class
DenyListFragment
:
Base
UIFragment
<
DenyListViewModel
,
FragmentDenyMd2Binding
>()
{
class
DenyListFragment
:
Base
Fragment
<
FragmentDenyMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_deny_md2
override
val
viewModel
by
viewModel
<
DenyListViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/flash/FlashFragment.kt
View file @
8eac6c0b
...
...
@@ -9,14 +9,14 @@ import android.view.*
import
androidx.navigation.NavDeepLinkBuilder
import
com.topjohnwu.magisk.MainDirections
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.core.Const
import
com.topjohnwu.magisk.core.cmp
import
com.topjohnwu.magisk.databinding.FragmentFlashMd2Binding
import
com.topjohnwu.magisk.di.viewModel
import
com.topjohnwu.magisk.ui.MainActivity
class
FlashFragment
:
Base
UIFragment
<
FlashViewModel
,
FragmentFlashMd2Binding
>()
{
class
FlashFragment
:
Base
Fragment
<
FragmentFlashMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_flash_md2
override
val
viewModel
by
viewModel
<
FlashViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/home/HomeFragment.kt
View file @
8eac6c0b
...
...
@@ -5,14 +5,14 @@ import android.view.*
import
android.widget.ImageView
import
android.widget.TextView
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.core.download.DownloadService
import
com.topjohnwu.magisk.databinding.FragmentHomeMd2Binding
import
com.topjohnwu.magisk.di.viewModel
import
com.topjohnwu.magisk.events.RebootEvent
import
com.topjohnwu.superuser.Shell
class
HomeFragment
:
Base
UIFragment
<
HomeViewModel
,
FragmentHomeMd2Binding
>()
{
class
HomeFragment
:
Base
Fragment
<
FragmentHomeMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_home_md2
override
val
viewModel
by
viewModel
<
HomeViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt
View file @
8eac6c0b
...
...
@@ -106,7 +106,7 @@ class HomeViewModel(
val
showTest
=
false
fun
onTestPressed
()
=
object
:
ViewEvent
(),
ActivityExecutor
{
override
fun
invoke
(
activity
:
BaseUIActivity
<
*
,
*
>)
{
override
fun
invoke
(
activity
:
UIActivity
<
*
>)
{
/* Entry point to trigger test events within the app */
}
}.
publish
()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/install/InstallFragment.kt
View file @
8eac6c0b
...
...
@@ -5,11 +5,11 @@ import android.view.LayoutInflater
import
android.view.View
import
android.view.ViewGroup
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.databinding.FragmentInstallMd2Binding
import
com.topjohnwu.magisk.di.viewModel
class
InstallFragment
:
Base
UIFragment
<
InstallViewModel
,
FragmentInstallMd2Binding
>()
{
class
InstallFragment
:
Base
Fragment
<
FragmentInstallMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_install_md2
override
val
viewModel
by
viewModel
<
InstallViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/log/LogFragment.kt
View file @
8eac6c0b
...
...
@@ -7,7 +7,7 @@ import android.view.MenuItem
import
android.view.View
import
androidx.core.view.isVisible
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.databinding.FragmentLogMd2Binding
import
com.topjohnwu.magisk.di.viewModel
import
com.topjohnwu.magisk.ui.MainActivity
...
...
@@ -16,7 +16,7 @@ import rikka.recyclerview.addEdgeSpacing
import
rikka.recyclerview.addItemSpacing
import
rikka.recyclerview.fixEdgeEffect
class
LogFragment
:
Base
UIFragment
<
LogViewModel
,
FragmentLogMd2Binding
>()
{
class
LogFragment
:
Base
Fragment
<
FragmentLogMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_log_md2
override
val
viewModel
by
viewModel
<
LogViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/module/ModuleFragment.kt
View file @
8eac6c0b
...
...
@@ -3,7 +3,7 @@ package com.topjohnwu.magisk.ui.module
import
android.os.Bundle
import
android.view.View
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.databinding.FragmentModuleMd2Binding
import
com.topjohnwu.magisk.di.viewModel
import
rikka.recyclerview.addEdgeSpacing
...
...
@@ -11,7 +11,7 @@ import rikka.recyclerview.addInvalidateItemDecorationsObserver
import
rikka.recyclerview.addItemSpacing
import
rikka.recyclerview.fixEdgeEffect
class
ModuleFragment
:
Base
UIFragment
<
ModuleViewModel
,
FragmentModuleMd2Binding
>()
{
class
ModuleFragment
:
Base
Fragment
<
FragmentModuleMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_module_md2
override
val
viewModel
by
viewModel
<
ModuleViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/settings/SettingsFragment.kt
View file @
8eac6c0b
...
...
@@ -3,14 +3,14 @@ package com.topjohnwu.magisk.ui.settings
import
android.os.Bundle
import
android.view.View
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.databinding.FragmentSettingsMd2Binding
import
com.topjohnwu.magisk.di.viewModel
import
rikka.recyclerview.addEdgeSpacing
import
rikka.recyclerview.addItemSpacing
import
rikka.recyclerview.fixEdgeEffect
class
SettingsFragment
:
Base
UIFragment
<
SettingsViewModel
,
FragmentSettingsMd2Binding
>()
{
class
SettingsFragment
:
Base
Fragment
<
FragmentSettingsMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_settings_md2
override
val
viewModel
by
viewModel
<
SettingsViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/superuser/SuperuserFragment.kt
View file @
8eac6c0b
...
...
@@ -3,14 +3,14 @@ package com.topjohnwu.magisk.ui.superuser
import
android.os.Bundle
import
android.view.View
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.databinding.FragmentSuperuserMd2Binding
import
com.topjohnwu.magisk.di.viewModel
import
rikka.recyclerview.addEdgeSpacing
import
rikka.recyclerview.addItemSpacing
import
rikka.recyclerview.fixEdgeEffect
class
SuperuserFragment
:
Base
UIFragment
<
SuperuserViewModel
,
FragmentSuperuserMd2Binding
>()
{
class
SuperuserFragment
:
Base
Fragment
<
FragmentSuperuserMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_superuser_md2
override
val
viewModel
by
viewModel
<
SuperuserViewModel
>()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/surequest/SuRequestActivity.kt
View file @
8eac6c0b
...
...
@@ -7,20 +7,18 @@ import android.os.Build
import
android.os.Bundle
import
android.view.Window
import
android.view.WindowManager
import
androidx.navigation.NavController
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.
Base
UIActivity
import
com.topjohnwu.magisk.arch.UIActivity
import
com.topjohnwu.magisk.core.su.SuCallbackHandler
import
com.topjohnwu.magisk.core.su.SuCallbackHandler.REQUEST
import
com.topjohnwu.magisk.databinding.ActivityRequestBinding
import
com.topjohnwu.magisk.di.viewModel
import
com.topjohnwu.magisk.ui.theme.Theme
open
class
SuRequestActivity
:
BaseUIActivity
<
SuRequestViewModel
,
ActivityRequestBinding
>()
{
open
class
SuRequestActivity
:
UIActivity
<
ActivityRequestBinding
>()
{
override
val
layoutRes
:
Int
=
R
.
layout
.
activity_request
override
val
viewModel
:
SuRequestViewModel
by
viewModel
()
override
val
navigation
:
NavController
?
=
null
override
fun
onBackPressed
()
{
viewModel
.
denyPressed
()
...
...
app/src/main/java/com/topjohnwu/magisk/ui/theme/ThemeFragment.kt
View file @
8eac6c0b
...
...
@@ -8,12 +8,12 @@ import android.view.ViewGroup
import
android.widget.FrameLayout
import
com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.arch.Base
UI
Fragment
import
com.topjohnwu.magisk.arch.BaseFragment
import
com.topjohnwu.magisk.databinding.FragmentThemeMd2Binding
import
com.topjohnwu.magisk.databinding.ItemThemeBindingImpl
import
com.topjohnwu.magisk.di.viewModel
class
ThemeFragment
:
Base
UIFragment
<
ThemeViewModel
,
FragmentThemeMd2Binding
>()
{
class
ThemeFragment
:
Base
Fragment
<
FragmentThemeMd2Binding
>()
{
override
val
layoutRes
=
R
.
layout
.
fragment_theme_md2
override
val
viewModel
by
viewModel
<
ThemeViewModel
>()
...
...
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