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
974cb116
Commit
974cb116
authored
Oct 16, 2019
by
Viktor De Pasquale
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added post-merge fixes
parent
6ccbc272
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
42 additions
and
37 deletions
+42
-37
build.gradle
app/build.gradle
+2
-0
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+1
-2
HomeItems.kt
...a/com/topjohnwu/magisk/model/entity/recycler/HomeItems.kt
+1
-1
OpenInappLinkEvent.kt
...a/com/topjohnwu/magisk/model/events/OpenInappLinkEvent.kt
+0
-1
ViewEvents.kt
...main/java/com/topjohnwu/magisk/model/events/ViewEvents.kt
+0
-1
DialogEvent.kt
...a/com/topjohnwu/magisk/model/events/dialog/DialogEvent.kt
+1
-1
MagiskNavigationEvent.kt
...opjohnwu/magisk/model/navigation/MagiskNavigationEvent.kt
+2
-2
MainActivity.kt
...c/main/java/com/topjohnwu/magisk/redesign/MainActivity.kt
+9
-12
CompatActivity.kt
...va/com/topjohnwu/magisk/redesign/compat/CompatActivity.kt
+13
-4
CompatDelegate.kt
...va/com/topjohnwu/magisk/redesign/compat/CompatDelegate.kt
+1
-1
CompatFragment.kt
...va/com/topjohnwu/magisk/redesign/compat/CompatFragment.kt
+3
-3
CompatNavigationDelegate.kt
...johnwu/magisk/redesign/compat/CompatNavigationDelegate.kt
+2
-2
CompatViewModel.kt
...a/com/topjohnwu/magisk/redesign/compat/CompatViewModel.kt
+3
-3
HomeViewModel.kt
.../java/com/topjohnwu/magisk/redesign/home/HomeViewModel.kt
+3
-3
MagiskDialog.kt
app/src/main/java/com/topjohnwu/magisk/view/MagiskDialog.kt
+1
-1
No files found.
app/build.gradle
View file @
974cb116
...
...
@@ -122,6 +122,7 @@ dependencies {
implementation
'androidx.constraintlayout:constraintlayout:1.1.3'
implementation
'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha03'
implementation
'androidx.browser:browser:1.0.0'
implementation
'androidx.preference:preference:1.1.0'
implementation
'androidx.recyclerview:recyclerview:1.0.0'
implementation
'androidx.work:work-runtime:2.2.0'
...
...
@@ -129,4 +130,5 @@ dependencies {
implementation
'androidx.multidex:multidex:2.0.1'
implementation
'androidx.core:core-ktx:1.1.0'
implementation
'com.google.android.material:material:1.1.0-beta01'
implementation
'com.karumi:dexter:6.0.0'
}
app/src/main/AndroidManifest.xml
View file @
974cb116
...
...
@@ -56,8 +56,7 @@
<activity
android:name=
"a.i"
android:exported=
"true"
android:theme=
"@style/Foundation.Default"
/>
android:exported=
"true"
/>
<activity-alias
android:name=
"a.s"
...
...
app/src/main/java/com/topjohnwu/magisk/model/entity/recycler/HomeItems.kt
View file @
974cb116
package
com.topjohnwu.magisk.model.entity.recycler
import
com.skoumal.teanity.databinding.ComparableRvItem
import
com.topjohnwu.magisk.Const
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.ComparableRvItem
sealed
class
HomeItem
:
ComparableRvItem
<
HomeItem
>()
{
...
...
app/src/main/java/com/topjohnwu/magisk/model/events/OpenInappLinkEvent.kt
View file @
974cb116
...
...
@@ -6,7 +6,6 @@ import android.util.TypedValue
import
androidx.annotation.AttrRes
import
androidx.browser.customtabs.CustomTabsIntent
import
androidx.core.net.toUri
import
com.skoumal.teanity.viewevents.ViewEvent
import
com.topjohnwu.magisk.R
data class
OpenInappLinkEvent
(
...
...
app/src/main/java/com/topjohnwu/magisk/model/events/ViewEvents.kt
View file @
974cb116
...
...
@@ -7,7 +7,6 @@ import com.karumi.dexter.MultiplePermissionsReport
import
com.karumi.dexter.PermissionToken
import
com.karumi.dexter.listener.PermissionRequest
import
com.karumi.dexter.listener.multi.MultiplePermissionsListener
import
com.skoumal.teanity.viewevents.ViewEvent
import
com.topjohnwu.magisk.model.entity.module.Repo
import
com.topjohnwu.magisk.model.permissions.PermissionRequestBuilder
import
io.reactivex.subjects.PublishSubject
...
...
app/src/main/java/com/topjohnwu/magisk/model/events/dialog/DialogEvent.kt
View file @
974cb116
package
com.topjohnwu.magisk.model.events.dialog
import
android.content.Context
import
com.skoumal.teanity.viewevents.ViewEvent
import
com.topjohnwu.magisk.model.events.ContextExecutor
import
com.topjohnwu.magisk.model.events.ViewEvent
import
com.topjohnwu.magisk.view.MagiskDialog
abstract
class
DialogEvent
:
ViewEvent
(),
ContextExecutor
{
...
...
app/src/main/java/com/topjohnwu/magisk/model/navigation/MagiskNavigationEvent.kt
View file @
974cb116
...
...
@@ -5,8 +5,8 @@ import androidx.annotation.AnimRes
import
androidx.annotation.AnimatorRes
import
androidx.appcompat.app.AppCompatActivity
import
androidx.fragment.app.Fragment
import
com.topjohnwu.magisk.model.events.ViewEvent
import
com.topjohnwu.magisk.model.events.ActivityExecutor
import
com.topjohnwu.magisk.model.events.ViewEvent
import
com.topjohnwu.magisk.redesign.compat.CompatActivity
import
kotlin.reflect.KClass
...
...
@@ -25,7 +25,7 @@ class MagiskNavigationEvent(
override
fun
invoke
(
activity
:
AppCompatActivity
)
{
if
(
activity
!
is
CompatActivity
<*,
*>)
return
activity
.
navigation
.
navigateTo
(
this
)
activity
.
navigation
?
.
navigateTo
(
this
)
}
@NavigationDslMarker
...
...
app/src/main/java/com/topjohnwu/magisk/redesign/MainActivity.kt
View file @
974cb116
...
...
@@ -14,6 +14,7 @@ import com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.ActivityMainMd2Binding
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.ui.log.LogFragment
import
com.topjohnwu.magisk.ui.module.ModulesFragment
...
...
@@ -24,13 +25,14 @@ import com.topjohnwu.superuser.Shell
import
org.koin.androidx.viewmodel.ext.android.viewModel
import
kotlin.reflect.KClass
open
class
MainActivity
:
CompatActivity
<
MainViewModel
,
ActivityMainMd2Binding
>()
{
open
class
MainActivity
:
CompatActivity
<
MainViewModel
,
ActivityMainMd2Binding
>(),
FragNavController
.
TransactionListener
{
override
val
layoutRes
=
R
.
layout
.
activity_main_md2
override
val
viewModel
by
viewModel
<
MainViewModel
>()
override
val
navHostId
:
Int
=
R
.
id
.
main_nav_host
override
val
navHost
:
Int
=
R
.
id
.
main_nav_host
override
val
defaultPosition
:
Int
=
0
override
val
navigation
by
lazy
{
CompatNavigationDelegate
(
this
,
this
)
}
override
val
baseFragments
:
List
<
KClass
<
out
Fragment
>>
=
listOf
(
HomeFragment
::
class
,
...
...
@@ -39,6 +41,7 @@ open class MainActivity : CompatActivity<MainViewModel, ActivityMainMd2Binding>(
LogFragment
::
class
,
SettingsFragment
::
class
)
//
This
temporarily
fixes
unwanted
feature
of
BottomNavigationView
-
where
the
view
applies
//padding on itself given insets are not consumed beforehand. Unfortunately the listener
//implementation doesn't favor us against the design library, so on re-create it's often given
...
...
@@ -90,21 +93,15 @@ open class MainActivity : CompatActivity<MainViewModel, ActivityMainMd2Binding>(
}
override
fun
onTabTransaction
(
fragment
:
Fragment
?,
index
:
Int
)
{
super
.
onTabTransaction
(
fragment
,
index
)
setDisplayHomeAsUpEnabled
(
false
)
}
override
fun
onFragmentTransaction
(
fragment
:
Fragment
?,
transactionType
:
FragNavController
.
TransactionType
)
{
super
.
onFragmentTransaction
(
fragment
,
transactionType
)
when
(
transactionType
)
{
FragNavController
.
TransactionType
.
PUSH
->
setDisplayHomeAsUpEnabled
(
true
)
else
->
Unit
//dunno might be useful
}
)
=
when
(
transactionType
)
{
FragNavController
.
TransactionType
.
PUSH
->
setDisplayHomeAsUpEnabled
(
true
)
else
->
Unit
//dunno might be useful
}
override
fun
peekSystemWindowInsets
(
insets
:
Insets
)
{
...
...
app/src/main/java/com/topjohnwu/magisk/redesign/compat/CompatActivity.kt
View file @
974cb116
...
...
@@ -3,17 +3,23 @@ package com.topjohnwu.magisk.redesign.compat
import
android.os.Bundle
import
android.view.View
import
androidx.databinding.ViewDataBinding
import
com.skoumal.teanity.viewevents.ViewEvent
import
com.topjohnwu.magisk.ui.base.MagiskActivity
import
androidx.fragment.app.Fragment
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.base.BaseActivity
import
com.topjohnwu.magisk.model.events.ViewEvent
import
com.topjohnwu.magisk.model.navigation.MagiskNavigationEvent
import
com.topjohnwu.magisk.model.navigation.Navigator
import
kotlin.reflect.KClass
abstract
class
CompatActivity
<
ViewModel
:
CompatViewModel
,
Binding
:
ViewDataBinding
>
:
MagiskActivity
<
ViewModel
,
Binding
>(),
CompatView
<
ViewModel
>
{
BaseActivity
<
ViewModel
,
Binding
>(),
CompatView
<
ViewModel
>,
Navigator
{
override
val
themeRes
=
R
.
style
.
Foundation_Default
override
val
viewRoot
:
View
get
()
=
binding
.
root
override
val
navigation
:
CompatNavigationDelegate
<
CompatActivity
<
ViewModel
,
Binding
>>?
by
lazy
{
CompatNavigationDelegate
(
this
)
}
override
val
baseFragments
=
listOf
<
KClass
<
out
Fragment
>>()
private
val
delegate
by
lazy
{
CompatDelegate
(
this
)
}
internal
abstract
val
navHost
:
Int
...
...
@@ -48,6 +54,9 @@ abstract class CompatActivity<ViewModel : CompatViewModel, Binding : ViewDataBin
}
}
@Deprecated
(
"The event is self handled."
)
override
fun
navigateTo
(
event
:
MagiskNavigationEvent
)
=
Unit
protected
fun
ViewEvent
.
dispatchOnSelf
()
=
onEventDispatched
(
this
)
}
\ No newline at end of file
app/src/main/java/com/topjohnwu/magisk/redesign/compat/CompatDelegate.kt
View file @
974cb116
...
...
@@ -5,10 +5,10 @@ import androidx.appcompat.app.AppCompatActivity
import
androidx.core.view.ViewCompat
import
androidx.core.view.WindowInsetsCompat
import
androidx.fragment.app.Fragment
import
com.skoumal.teanity.viewevents.ViewEvent
import
com.topjohnwu.magisk.model.events.ActivityExecutor
import
com.topjohnwu.magisk.model.events.ContextExecutor
import
com.topjohnwu.magisk.model.events.FragmentExecutor
import
com.topjohnwu.magisk.model.events.ViewEvent
import
timber.log.Timber
class
CompatDelegate
internal
constructor
(
...
...
app/src/main/java/com/topjohnwu/magisk/redesign/compat/CompatFragment.kt
View file @
974cb116
...
...
@@ -3,11 +3,11 @@ package com.topjohnwu.magisk.redesign.compat
import
android.os.Bundle
import
android.view.View
import
androidx.databinding.ViewDataBinding
import
com.
skoumal.teanity.viewevents.ViewEv
ent
import
com.topjohnwu.magisk.
ui.base.MagiskFragm
ent
import
com.
topjohnwu.magisk.base.BaseFragm
ent
import
com.topjohnwu.magisk.
model.events.ViewEv
ent
abstract
class
CompatFragment
<
ViewModel
:
CompatViewModel
,
Binding
:
ViewDataBinding
>
:
Magisk
Fragment
<
ViewModel
,
Binding
>(),
CompatView
<
ViewModel
>
{
:
Base
Fragment
<
ViewModel
,
Binding
>(),
CompatView
<
ViewModel
>
{
override
val
viewRoot
:
View
get
()
=
binding
.
root
override
val
navigation
by
lazy
{
compatActivity
.
navigation
}
...
...
app/src/main/java/com/topjohnwu/magisk/redesign/compat/CompatNavigationDelegate.kt
View file @
974cb116
...
...
@@ -10,7 +10,7 @@ import com.topjohnwu.magisk.model.navigation.MagiskNavigationEvent
import
com.topjohnwu.magisk.model.navigation.Navigator
import
timber.log.Timber
class
CompatNavigationDelegate
<
Source
>(
class
CompatNavigationDelegate
<
out
Source
>(
private
val
source
:
Source
,
private
val
listener
:
FragNavController
.
TransactionListener
?
=
null
)
:
FragNavController
.
RootFragmentListener
where
Source
:
CompatActivity
<*,
*>,
Source
:
Navigator
{
...
...
@@ -33,7 +33,7 @@ class CompatNavigationDelegate<Source>(
fun
onCreate
(
savedInstanceState
:
Bundle
?)
=
controller
.
run
{
rootFragmentListener
=
sourc
e
rootFragmentListener
=
this
@CompatNavigationDelegat
e
transactionListener
=
listener
initialize
(
0
,
savedInstanceState
)
}
...
...
app/src/main/java/com/topjohnwu/magisk/redesign/compat/CompatViewModel.kt
View file @
974cb116
...
...
@@ -3,11 +3,11 @@ package com.topjohnwu.magisk.redesign.compat
import
android.graphics.Insets
import
androidx.annotation.CallSuper
import
androidx.databinding.Observable
import
com.
skoumal.teanity.util.KObservableField
import
com.topjohnwu.magisk.u
i.base.MagiskViewModel
import
com.
topjohnwu.magisk.base.viewmodel.BaseViewModel
import
com.topjohnwu.magisk.u
tils.KObservableField
import
io.reactivex.disposables.Disposable
abstract
class
CompatViewModel
:
Magisk
ViewModel
()
{
abstract
class
CompatViewModel
:
Base
ViewModel
()
{
val
insets
=
KObservableField
(
Insets
.
NONE
)
...
...
app/src/main/java/com/topjohnwu/magisk/redesign/home/HomeViewModel.kt
View file @
974cb116
package
com.topjohnwu.magisk.redesign.home
import
com.skoumal.teanity.databinding.ComparableRvItem
import
com.skoumal.teanity.extensions.subscribeK
import
com.skoumal.teanity.util.KObservableField
import
com.topjohnwu.magisk.BuildConfig
import
com.topjohnwu.magisk.Info
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.data.repository.MagiskRepository
import
com.topjohnwu.magisk.databinding.ComparableRvItem
import
com.topjohnwu.magisk.extensions.packageName
import
com.topjohnwu.magisk.extensions.replaceRandomWithSpecial
import
com.topjohnwu.magisk.extensions.res
import
com.topjohnwu.magisk.extensions.subscribeK
import
com.topjohnwu.magisk.model.entity.MagiskJson
import
com.topjohnwu.magisk.model.entity.ManagerJson
import
com.topjohnwu.magisk.model.entity.UpdateInfo
...
...
@@ -20,6 +19,7 @@ import com.topjohnwu.magisk.model.events.dialog.ManagerInstallDialog
import
com.topjohnwu.magisk.model.observer.Observer
import
com.topjohnwu.magisk.redesign.compat.CompatViewModel
import
com.topjohnwu.magisk.ui.home.MagiskState
import
com.topjohnwu.magisk.utils.KObservableField
import
me.tatarka.bindingcollectionadapter2.BR
import
me.tatarka.bindingcollectionadapter2.ItemBinding
import
me.tatarka.bindingcollectionadapter2.OnItemBind
...
...
app/src/main/java/com/topjohnwu/magisk/view/MagiskDialog.kt
View file @
974cb116
...
...
@@ -12,10 +12,10 @@ import androidx.annotation.StringRes
import
androidx.appcompat.app.AlertDialog
import
androidx.databinding.DataBindingUtil
import
androidx.databinding.ViewDataBinding
import
com.skoumal.teanity.util.KObservableField
import
com.topjohnwu.magisk.BR
import
com.topjohnwu.magisk.R
import
com.topjohnwu.magisk.databinding.DialogMagiskBaseBinding
import
com.topjohnwu.magisk.utils.KObservableField
class
MagiskDialog
@JvmOverloads
constructor
(
context
:
Context
,
theme
:
Int
=
0
...
...
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