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
36124ddc
Commit
36124ddc
authored
Jul 22, 2017
by
topjohnwu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update CallbackEvents
parent
bd658576
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
125 additions
and
131 deletions
+125
-131
MagiskFragment.java
app/src/main/java/com/topjohnwu/magisk/MagiskFragment.java
+6
-19
MagiskHideFragment.java
...rc/main/java/com/topjohnwu/magisk/MagiskHideFragment.java
+10
-19
MagiskManager.java
app/src/main/java/com/topjohnwu/magisk/MagiskManager.java
+7
-8
MainActivity.java
app/src/main/java/com/topjohnwu/magisk/MainActivity.java
+7
-9
ModulesFragment.java
app/src/main/java/com/topjohnwu/magisk/ModulesFragment.java
+8
-19
ReposFragment.java
app/src/main/java/com/topjohnwu/magisk/ReposFragment.java
+8
-18
SettingsActivity.java
app/src/main/java/com/topjohnwu/magisk/SettingsActivity.java
+12
-9
ApplicationAdapter.java
...ava/com/topjohnwu/magisk/adapters/ApplicationAdapter.java
+2
-2
Activity.java
...c/main/java/com/topjohnwu/magisk/components/Activity.java
+19
-3
Fragment.java
...c/main/java/com/topjohnwu/magisk/components/Fragment.java
+16
-0
SuLogEntry.java
.../main/java/com/topjohnwu/magisk/superuser/SuLogEntry.java
+0
-1
CallbackEvent.java
...c/main/java/com/topjohnwu/magisk/utils/CallbackEvent.java
+30
-20
Utils.java
app/src/main/java/com/topjohnwu/magisk/utils/Utils.java
+0
-4
No files found.
app/src/main/java/com/topjohnwu/magisk/MagiskFragment.java
View file @
36124ddc
...
@@ -49,7 +49,7 @@ import butterknife.OnClick;
...
@@ -49,7 +49,7 @@ import butterknife.OnClick;
import
butterknife.Unbinder
;
import
butterknife.Unbinder
;
public
class
MagiskFragment
extends
Fragment
public
class
MagiskFragment
extends
Fragment
implements
CallbackEvent
.
Listener
<
Void
>
,
SwipeRefreshLayout
.
OnRefreshListener
{
implements
CallbackEvent
.
Listener
,
SwipeRefreshLayout
.
OnRefreshListener
{
public
static
final
String
SHOW_DIALOG
=
"dialog"
;
public
static
final
String
SHOW_DIALOG
=
"dialog"
;
...
@@ -253,6 +253,8 @@ public class MagiskFragment extends Fragment
...
@@ -253,6 +253,8 @@ public class MagiskFragment extends Fragment
if
(
getArguments
()
!=
null
&&
getArguments
().
getBoolean
(
SHOW_DIALOG
))
if
(
getArguments
()
!=
null
&&
getArguments
().
getBoolean
(
SHOW_DIALOG
))
install
();
install
();
getActivity
().
setTitle
(
R
.
string
.
magisk
);
return
v
;
return
v
;
}
}
...
@@ -281,7 +283,7 @@ public class MagiskFragment extends Fragment
...
@@ -281,7 +283,7 @@ public class MagiskFragment extends Fragment
}
}
@Override
@Override
public
void
onTrigger
(
CallbackEvent
<
Void
>
event
)
{
public
void
onTrigger
(
CallbackEvent
event
)
{
if
(
event
==
magiskManager
.
updateCheckDone
)
{
if
(
event
==
magiskManager
.
updateCheckDone
)
{
updateCheckUI
();
updateCheckUI
();
}
else
if
(
event
==
magiskManager
.
safetyNetDone
)
{
}
else
if
(
event
==
magiskManager
.
safetyNetDone
)
{
...
@@ -290,23 +292,8 @@ public class MagiskFragment extends Fragment
...
@@ -290,23 +292,8 @@ public class MagiskFragment extends Fragment
}
}
@Override
@Override
public
void
onStart
()
{
public
CallbackEvent
[]
getRegisterEvents
()
{
super
.
onStart
();
return
new
CallbackEvent
[]
{
magiskManager
.
updateCheckDone
,
magiskManager
.
safetyNetDone
};
// Manual trigger if already done
if
(
magiskManager
.
updateCheckDone
.
isTriggered
)
updateCheckUI
();
if
(
magiskManager
.
safetyNetDone
.
isTriggered
)
updateSafetyNetUI
();
magiskManager
.
updateCheckDone
.
register
(
this
);
magiskManager
.
safetyNetDone
.
register
(
this
);
getActivity
().
setTitle
(
R
.
string
.
magisk
);
}
@Override
public
void
onStop
()
{
magiskManager
.
updateCheckDone
.
unRegister
(
this
);
magiskManager
.
safetyNetDone
.
unRegister
(
this
);
super
.
onStop
();
}
}
@Override
@Override
...
...
app/src/main/java/com/topjohnwu/magisk/MagiskHideFragment.java
View file @
36124ddc
...
@@ -2,7 +2,6 @@ package com.topjohnwu.magisk;
...
@@ -2,7 +2,6 @@ package com.topjohnwu.magisk;
import
android.os.Bundle
;
import
android.os.Bundle
;
import
android.support.annotation.Nullable
;
import
android.support.annotation.Nullable
;
import
android.support.v4.view.MenuItemCompat
;
import
android.support.v4.widget.SwipeRefreshLayout
;
import
android.support.v4.widget.SwipeRefreshLayout
;
import
android.support.v7.widget.RecyclerView
;
import
android.support.v7.widget.RecyclerView
;
import
android.view.LayoutInflater
;
import
android.view.LayoutInflater
;
...
@@ -15,13 +14,12 @@ import android.widget.SearchView;
...
@@ -15,13 +14,12 @@ import android.widget.SearchView;
import
com.topjohnwu.magisk.adapters.ApplicationAdapter
;
import
com.topjohnwu.magisk.adapters.ApplicationAdapter
;
import
com.topjohnwu.magisk.components.Fragment
;
import
com.topjohnwu.magisk.components.Fragment
;
import
com.topjohnwu.magisk.utils.CallbackEvent
;
import
com.topjohnwu.magisk.utils.CallbackEvent
;
import
com.topjohnwu.magisk.utils.Logger
;
import
butterknife.BindView
;
import
butterknife.BindView
;
import
butterknife.ButterKnife
;
import
butterknife.ButterKnife
;
import
butterknife.Unbinder
;
import
butterknife.Unbinder
;
public
class
MagiskHideFragment
extends
Fragment
implements
CallbackEvent
.
Listener
<
Void
>
{
public
class
MagiskHideFragment
extends
Fragment
implements
CallbackEvent
.
Listener
{
private
Unbinder
unbinder
;
private
Unbinder
unbinder
;
@BindView
(
R
.
id
.
swipeRefreshLayout
)
SwipeRefreshLayout
mSwipeRefreshLayout
;
@BindView
(
R
.
id
.
swipeRefreshLayout
)
SwipeRefreshLayout
mSwipeRefreshLayout
;
...
@@ -67,29 +65,18 @@ public class MagiskHideFragment extends Fragment implements CallbackEvent.Listen
...
@@ -67,29 +65,18 @@ public class MagiskHideFragment extends Fragment implements CallbackEvent.Listen
}
}
};
};
getActivity
().
setTitle
(
R
.
string
.
magiskhide
);
return
view
;
return
view
;
}
}
@Override
@Override
public
void
onCreateOptionsMenu
(
Menu
menu
,
MenuInflater
inflater
)
{
public
void
onCreateOptionsMenu
(
Menu
menu
,
MenuInflater
inflater
)
{
inflater
.
inflate
(
R
.
menu
.
menu_magiskhide
,
menu
);
inflater
.
inflate
(
R
.
menu
.
menu_magiskhide
,
menu
);
SearchView
search
=
(
SearchView
)
MenuItemCompat
.
getActionView
(
menu
.
findItem
(
R
.
id
.
app_search
)
);
SearchView
search
=
(
SearchView
)
menu
.
findItem
(
R
.
id
.
app_search
).
getActionView
(
);
search
.
setOnQueryTextListener
(
searchListener
);
search
.
setOnQueryTextListener
(
searchListener
);
}
}
@Override
public
void
onStart
()
{
super
.
onStart
();
getActivity
().
setTitle
(
R
.
string
.
magiskhide
);
getApplication
().
magiskHideDone
.
register
(
this
);
}
@Override
public
void
onStop
()
{
getApplication
().
magiskHideDone
.
unRegister
(
this
);
super
.
onStop
();
}
@Override
@Override
public
void
onDestroyView
()
{
public
void
onDestroyView
()
{
super
.
onDestroyView
();
super
.
onDestroyView
();
...
@@ -97,9 +84,13 @@ public class MagiskHideFragment extends Fragment implements CallbackEvent.Listen
...
@@ -97,9 +84,13 @@ public class MagiskHideFragment extends Fragment implements CallbackEvent.Listen
}
}
@Override
@Override
public
void
onTrigger
(
CallbackEvent
<
Void
>
event
)
{
public
void
onTrigger
(
CallbackEvent
event
)
{
Logger
.
dev
(
"MagiskHideFragment: UI refresh"
);
mSwipeRefreshLayout
.
setRefreshing
(
false
);
mSwipeRefreshLayout
.
setRefreshing
(
false
);
appAdapter
.
filter
(
lastFilter
);
appAdapter
.
filter
(
lastFilter
);
}
}
@Override
public
CallbackEvent
[]
getRegisterEvents
()
{
return
new
CallbackEvent
[]
{
getApplication
().
magiskHideDone
};
}
}
}
app/src/main/java/com/topjohnwu/magisk/MagiskManager.java
View file @
36124ddc
...
@@ -18,7 +18,6 @@ import com.topjohnwu.magisk.database.RepoDatabaseHelper;
...
@@ -18,7 +18,6 @@ import com.topjohnwu.magisk.database.RepoDatabaseHelper;
import
com.topjohnwu.magisk.database.SuDatabaseHelper
;
import
com.topjohnwu.magisk.database.SuDatabaseHelper
;
import
com.topjohnwu.magisk.module.Module
;
import
com.topjohnwu.magisk.module.Module
;
import
com.topjohnwu.magisk.utils.CallbackEvent
;
import
com.topjohnwu.magisk.utils.CallbackEvent
;
import
com.topjohnwu.magisk.utils.Logger
;
import
com.topjohnwu.magisk.utils.SafetyNetHelper
;
import
com.topjohnwu.magisk.utils.SafetyNetHelper
;
import
com.topjohnwu.magisk.utils.Shell
;
import
com.topjohnwu.magisk.utils.Shell
;
import
com.topjohnwu.magisk.utils.Utils
;
import
com.topjohnwu.magisk.utils.Utils
;
...
@@ -44,13 +43,13 @@ public class MagiskManager extends Application {
...
@@ -44,13 +43,13 @@ public class MagiskManager extends Application {
public
static
final
String
NOTIFICATION_CHANNEL
=
"magisk_update_notice"
;
public
static
final
String
NOTIFICATION_CHANNEL
=
"magisk_update_notice"
;
// Events
// Events
public
final
CallbackEvent
<
Void
>
magiskHideDone
=
new
CallbackEvent
<>
();
public
final
CallbackEvent
magiskHideDone
=
new
CallbackEvent
();
public
final
CallbackEvent
<
Void
>
reloadMainActivity
=
new
CallbackEvent
<>
();
public
final
CallbackEvent
reloadMainActivity
=
new
CallbackEvent
();
public
final
CallbackEvent
<
Void
>
moduleLoadDone
=
new
CallbackEvent
<>
();
public
final
CallbackEvent
moduleLoadDone
=
new
CallbackEvent
();
public
final
CallbackEvent
<
Void
>
repoLoadDone
=
new
CallbackEvent
<>
();
public
final
CallbackEvent
repoLoadDone
=
new
CallbackEvent
();
public
final
CallbackEvent
<
Void
>
updateCheckDone
=
new
CallbackEvent
<>
();
public
final
CallbackEvent
updateCheckDone
=
new
CallbackEvent
();
public
final
CallbackEvent
<
Void
>
safetyNetDone
=
new
CallbackEvent
<>
();
public
final
CallbackEvent
safetyNetDone
=
new
CallbackEvent
();
public
final
CallbackEvent
<
Void
>
localeDone
=
new
CallbackEvent
<>
();
public
final
CallbackEvent
localeDone
=
new
CallbackEvent
();
// Info
// Info
public
String
magiskVersionString
;
public
String
magiskVersionString
;
...
...
app/src/main/java/com/topjohnwu/magisk/MainActivity.java
View file @
36124ddc
...
@@ -28,7 +28,7 @@ import butterknife.BindView;
...
@@ -28,7 +28,7 @@ import butterknife.BindView;
import
butterknife.ButterKnife
;
import
butterknife.ButterKnife
;
public
class
MainActivity
extends
Activity
public
class
MainActivity
extends
Activity
implements
NavigationView
.
OnNavigationItemSelectedListener
,
CallbackEvent
.
Listener
<
Void
>
{
implements
NavigationView
.
OnNavigationItemSelectedListener
,
CallbackEvent
.
Listener
{
private
final
Handler
mDrawerHandler
=
new
Handler
();
private
final
Handler
mDrawerHandler
=
new
Handler
();
private
SharedPreferences
prefs
;
private
SharedPreferences
prefs
;
...
@@ -81,7 +81,6 @@ public class MainActivity extends Activity
...
@@ -81,7 +81,6 @@ public class MainActivity extends Activity
navigate
(
getIntent
().
getStringExtra
(
MagiskManager
.
INTENT_SECTION
));
navigate
(
getIntent
().
getStringExtra
(
MagiskManager
.
INTENT_SECTION
));
navigationView
.
setNavigationItemSelectedListener
(
this
);
navigationView
.
setNavigationItemSelectedListener
(
this
);
getApplicationContext
().
reloadMainActivity
.
register
(
this
);
}
}
...
@@ -91,12 +90,6 @@ public class MainActivity extends Activity
...
@@ -91,12 +90,6 @@ public class MainActivity extends Activity
checkHideSection
();
checkHideSection
();
}
}
@Override
protected
void
onDestroy
()
{
getApplicationContext
().
reloadMainActivity
.
unRegister
(
this
);
super
.
onDestroy
();
}
@Override
@Override
public
void
onBackPressed
()
{
public
void
onBackPressed
()
{
if
(
drawer
.
isDrawerOpen
(
navigationView
))
{
if
(
drawer
.
isDrawerOpen
(
navigationView
))
{
...
@@ -117,10 +110,15 @@ public class MainActivity extends Activity
...
@@ -117,10 +110,15 @@ public class MainActivity extends Activity
}
}
@Override
@Override
public
void
onTrigger
(
CallbackEvent
<
Void
>
event
)
{
public
void
onTrigger
(
CallbackEvent
event
)
{
recreate
();
recreate
();
}
}
@Override
public
CallbackEvent
[]
getRegisterEvents
()
{
return
new
CallbackEvent
[]
{
getApplicationContext
().
reloadMainActivity
};
}
public
void
checkHideSection
()
{
public
void
checkHideSection
()
{
Menu
menu
=
navigationView
.
getMenu
();
Menu
menu
=
navigationView
.
getMenu
();
menu
.
findItem
(
R
.
id
.
magiskhide
).
setVisible
(
menu
.
findItem
(
R
.
id
.
magiskhide
).
setVisible
(
...
...
app/src/main/java/com/topjohnwu/magisk/ModulesFragment.java
View file @
36124ddc
...
@@ -26,7 +26,7 @@ import butterknife.BindView;
...
@@ -26,7 +26,7 @@ import butterknife.BindView;
import
butterknife.ButterKnife
;
import
butterknife.ButterKnife
;
import
butterknife.Unbinder
;
import
butterknife.Unbinder
;
public
class
ModulesFragment
extends
Fragment
implements
CallbackEvent
.
Listener
<
Void
>
{
public
class
ModulesFragment
extends
Fragment
implements
CallbackEvent
.
Listener
{
private
static
final
int
FETCH_ZIP_CODE
=
2
;
private
static
final
int
FETCH_ZIP_CODE
=
2
;
...
@@ -67,19 +67,22 @@ public class ModulesFragment extends Fragment implements CallbackEvent.Listener<
...
@@ -67,19 +67,22 @@ public class ModulesFragment extends Fragment implements CallbackEvent.Listener<
}
}
});
});
if
(
getApplication
().
moduleLoadDone
.
isTriggered
)
{
getActivity
().
setTitle
(
R
.
string
.
modules
);
updateUI
();
}
return
view
;
return
view
;
}
}
@Override
@Override
public
void
onTrigger
(
CallbackEvent
<
Void
>
event
)
{
public
void
onTrigger
(
CallbackEvent
event
)
{
Logger
.
dev
(
"ModulesFragment: UI refresh triggered"
);
Logger
.
dev
(
"ModulesFragment: UI refresh triggered"
);
updateUI
();
updateUI
();
}
}
@Override
public
CallbackEvent
[]
getRegisterEvents
()
{
return
new
CallbackEvent
[]
{
getApplication
().
moduleLoadDone
};
}
@Override
@Override
public
void
onActivityResult
(
int
requestCode
,
int
resultCode
,
Intent
data
)
{
public
void
onActivityResult
(
int
requestCode
,
int
resultCode
,
Intent
data
)
{
if
(
requestCode
==
FETCH_ZIP_CODE
&&
resultCode
==
Activity
.
RESULT_OK
&&
data
!=
null
)
{
if
(
requestCode
==
FETCH_ZIP_CODE
&&
resultCode
==
Activity
.
RESULT_OK
&&
data
!=
null
)
{
...
@@ -88,20 +91,6 @@ public class ModulesFragment extends Fragment implements CallbackEvent.Listener<
...
@@ -88,20 +91,6 @@ public class ModulesFragment extends Fragment implements CallbackEvent.Listener<
intent
.
setData
(
data
.
getData
()).
putExtra
(
"ACTION"
,
"flash"
);
intent
.
setData
(
data
.
getData
()).
putExtra
(
"ACTION"
,
"flash"
);
startActivity
(
intent
);
startActivity
(
intent
);
}
}
}
@Override
public
void
onStart
()
{
super
.
onStart
();
getApplication
().
moduleLoadDone
.
register
(
this
);
getActivity
().
setTitle
(
R
.
string
.
modules
);
}
@Override
public
void
onStop
()
{
getApplication
().
moduleLoadDone
.
unRegister
(
this
);
super
.
onStop
();
}
}
@Override
@Override
...
...
app/src/main/java/com/topjohnwu/magisk/ReposFragment.java
View file @
36124ddc
...
@@ -22,7 +22,7 @@ import butterknife.BindView;
...
@@ -22,7 +22,7 @@ import butterknife.BindView;
import
butterknife.ButterKnife
;
import
butterknife.ButterKnife
;
import
butterknife.Unbinder
;
import
butterknife.Unbinder
;
public
class
ReposFragment
extends
Fragment
implements
CallbackEvent
.
Listener
<
Void
>
{
public
class
ReposFragment
extends
Fragment
implements
CallbackEvent
.
Listener
{
private
Unbinder
unbinder
;
private
Unbinder
unbinder
;
@BindView
(
R
.
id
.
recyclerView
)
RecyclerView
recyclerView
;
@BindView
(
R
.
id
.
recyclerView
)
RecyclerView
recyclerView
;
...
@@ -53,15 +53,13 @@ public class ReposFragment extends Fragment implements CallbackEvent.Listener<Vo
...
@@ -53,15 +53,13 @@ public class ReposFragment extends Fragment implements CallbackEvent.Listener<Vo
new
UpdateRepos
(
getActivity
()).
exec
();
new
UpdateRepos
(
getActivity
()).
exec
();
});
});
if
(
getApplication
().
repoLoadDone
.
isTriggered
)
{
getActivity
().
setTitle
(
R
.
string
.
downloads
);
onTrigger
(
null
);
}
return
view
;
return
view
;
}
}
@Override
@Override
public
void
onTrigger
(
CallbackEvent
<
Void
>
event
)
{
public
void
onTrigger
(
CallbackEvent
event
)
{
Logger
.
dev
(
"ReposFragment: UI refresh triggered"
);
Logger
.
dev
(
"ReposFragment: UI refresh triggered"
);
mSwipeRefreshLayout
.
setRefreshing
(
false
);
mSwipeRefreshLayout
.
setRefreshing
(
false
);
adapter
.
notifyDBChanged
();
adapter
.
notifyDBChanged
();
...
@@ -69,6 +67,11 @@ public class ReposFragment extends Fragment implements CallbackEvent.Listener<Vo
...
@@ -69,6 +67,11 @@ public class ReposFragment extends Fragment implements CallbackEvent.Listener<Vo
emptyRv
.
setVisibility
(
adapter
.
getItemCount
()
==
0
?
View
.
VISIBLE
:
View
.
GONE
);
emptyRv
.
setVisibility
(
adapter
.
getItemCount
()
==
0
?
View
.
VISIBLE
:
View
.
GONE
);
}
}
@Override
public
CallbackEvent
[]
getRegisterEvents
()
{
return
new
CallbackEvent
[]
{
getApplication
().
repoLoadDone
};
}
@Override
@Override
public
void
onCreateOptionsMenu
(
Menu
menu
,
MenuInflater
inflater
)
{
public
void
onCreateOptionsMenu
(
Menu
menu
,
MenuInflater
inflater
)
{
inflater
.
inflate
(
R
.
menu
.
menu_repo
,
menu
);
inflater
.
inflate
(
R
.
menu
.
menu_repo
,
menu
);
...
@@ -87,19 +90,6 @@ public class ReposFragment extends Fragment implements CallbackEvent.Listener<Vo
...
@@ -87,19 +90,6 @@ public class ReposFragment extends Fragment implements CallbackEvent.Listener<Vo
});
});
}
}
@Override
public
void
onStart
()
{
super
.
onStart
();
getApplication
().
repoLoadDone
.
register
(
this
);
getActivity
().
setTitle
(
R
.
string
.
downloads
);
}
@Override
public
void
onStop
()
{
getApplication
().
repoLoadDone
.
unRegister
(
this
);
super
.
onStop
();
}
@Override
@Override
public
void
onDestroyView
()
{
public
void
onDestroyView
()
{
super
.
onDestroyView
();
super
.
onDestroyView
();
...
...
app/src/main/java/com/topjohnwu/magisk/SettingsActivity.java
View file @
36124ddc
...
@@ -59,7 +59,7 @@ public class SettingsActivity extends Activity {
...
@@ -59,7 +59,7 @@ public class SettingsActivity extends Activity {
public
static
class
SettingsFragment
extends
PreferenceFragment
public
static
class
SettingsFragment
extends
PreferenceFragment
implements
SharedPreferences
.
OnSharedPreferenceChangeListener
,
implements
SharedPreferences
.
OnSharedPreferenceChangeListener
,
CallbackEvent
.
Listener
<
Void
>
{
CallbackEvent
.
Listener
{
private
SharedPreferences
prefs
;
private
SharedPreferences
prefs
;
private
PreferenceScreen
prefScreen
;
private
PreferenceScreen
prefScreen
;
...
@@ -149,16 +149,14 @@ public class SettingsActivity extends Activity {
...
@@ -149,16 +149,14 @@ public class SettingsActivity extends Activity {
public
void
onResume
()
{
public
void
onResume
()
{
super
.
onResume
();
super
.
onResume
();
prefs
.
registerOnSharedPreferenceChangeListener
(
this
);
prefs
.
registerOnSharedPreferenceChangeListener
(
this
);
magiskManager
.
localeDone
.
register
(
this
);
registerEvents
();
if
(
magiskManager
.
localeDone
.
isTriggered
)
onTrigger
(
null
);
}
}
@Override
@Override
public
void
onPause
()
{
public
void
onPause
()
{
super
.
onPause
();
prefs
.
unregisterOnSharedPreferenceChangeListener
(
this
);
prefs
.
unregisterOnSharedPreferenceChangeListener
(
this
);
magiskManager
.
localeDone
.
unRegister
(
this
);
unregisterEvents
();
super
.
onPause
();
}
}
@Override
@Override
...
@@ -171,7 +169,7 @@ public class SettingsActivity extends Activity {
...
@@ -171,7 +169,7 @@ public class SettingsActivity extends Activity {
enabled
=
prefs
.
getBoolean
(
"dark_theme"
,
false
);
enabled
=
prefs
.
getBoolean
(
"dark_theme"
,
false
);
if
(
magiskManager
.
isDarkTheme
!=
enabled
)
{
if
(
magiskManager
.
isDarkTheme
!=
enabled
)
{
magiskManager
.
isDarkTheme
=
enabled
;
magiskManager
.
isDarkTheme
=
enabled
;
magiskManager
.
reloadMainActivity
.
trigger
();
magiskManager
.
reloadMainActivity
.
trigger
(
false
);
getActivity
().
recreate
();
getActivity
().
recreate
();
}
}
break
;
break
;
...
@@ -233,7 +231,7 @@ public class SettingsActivity extends Activity {
...
@@ -233,7 +231,7 @@ public class SettingsActivity extends Activity {
break
;
break
;
case
"locale"
:
case
"locale"
:
magiskManager
.
setLocale
();
magiskManager
.
setLocale
();
magiskManager
.
reloadMainActivity
.
trigger
();
magiskManager
.
reloadMainActivity
.
trigger
(
false
);
getActivity
().
recreate
();
getActivity
().
recreate
();
break
;
break
;
}
}
...
@@ -256,7 +254,7 @@ public class SettingsActivity extends Activity {
...
@@ -256,7 +254,7 @@ public class SettingsActivity extends Activity {
}
}
@Override
@Override
public
void
onTrigger
(
CallbackEvent
<
Void
>
event
)
{
public
void
onTrigger
(
CallbackEvent
event
)
{
ListPreference
language
=
setLocalePreference
(
null
);
ListPreference
language
=
setLocalePreference
(
null
);
language
.
setOnPreferenceClickListener
((
pref
)
->
{
language
.
setOnPreferenceClickListener
((
pref
)
->
{
setLocalePreference
((
ListPreference
)
pref
);
setLocalePreference
((
ListPreference
)
pref
);
...
@@ -264,6 +262,11 @@ public class SettingsActivity extends Activity {
...
@@ -264,6 +262,11 @@ public class SettingsActivity extends Activity {
});
});
generalCatagory
.
addPreference
(
language
);
generalCatagory
.
addPreference
(
language
);
}
}
@Override
public
CallbackEvent
[]
getRegisterEvents
()
{
return
new
CallbackEvent
[]
{
magiskManager
.
localeDone
};
}
}
}
}
}
app/src/main/java/com/topjohnwu/magisk/adapters/ApplicationAdapter.java
View file @
36124ddc
...
@@ -46,7 +46,7 @@ public class ApplicationAdapter extends RecyclerView.Adapter<ApplicationAdapter.
...
@@ -46,7 +46,7 @@ public class ApplicationAdapter extends RecyclerView.Adapter<ApplicationAdapter.
private
List
<
String
>
mHideList
;
private
List
<
String
>
mHideList
;
private
PackageManager
pm
;
private
PackageManager
pm
;
private
ApplicationFilter
filter
;
private
ApplicationFilter
filter
;
private
CallbackEvent
<
Void
>
magiskHideDone
;
private
CallbackEvent
magiskHideDone
;
private
Shell
shell
;
private
Shell
shell
;
public
ApplicationAdapter
(
Context
context
)
{
public
ApplicationAdapter
(
Context
context
)
{
...
@@ -176,7 +176,7 @@ public class ApplicationAdapter extends RecyclerView.Adapter<ApplicationAdapter.
...
@@ -176,7 +176,7 @@ public class ApplicationAdapter extends RecyclerView.Adapter<ApplicationAdapter.
@Override
@Override
protected
void
onPostExecute
(
Void
v
)
{
protected
void
onPostExecute
(
Void
v
)
{
magiskHideDone
.
trigger
();
magiskHideDone
.
trigger
(
false
);
}
}
}
}
}
}
app/src/main/java/com/topjohnwu/magisk/components/Activity.java
View file @
36124ddc
package
com
.
topjohnwu
.
magisk
.
components
;
package
com
.
topjohnwu
.
magisk
.
components
;
import
android.content.res.Configuration
;
import
android.content.res.Configuration
;
import
android.os.Bundle
;
import
android.support.annotation.Nullable
;
import
android.support.v7.app.AppCompatActivity
;
import
android.support.v7.app.AppCompatActivity
;
import
android.view.WindowManager
;
import
android.view.WindowManager
;
import
com.topjohnwu.magisk.MagiskManager
;
import
com.topjohnwu.magisk.MagiskManager
;
import
com.topjohnwu.magisk.R
;
import
com.topjohnwu.magisk.R
;
import
com.topjohnwu.magisk.utils.Utils
;
import
com.topjohnwu.magisk.utils.CallbackEvent
;
import
java.util.Locale
;
public
class
Activity
extends
AppCompatActivity
{
public
class
Activity
extends
AppCompatActivity
{
...
@@ -19,6 +19,22 @@ public class Activity extends AppCompatActivity {
...
@@ -19,6 +19,22 @@ public class Activity extends AppCompatActivity {
applyOverrideConfiguration
(
configuration
);
applyOverrideConfiguration
(
configuration
);
}
}
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
if
(
this
instanceof
CallbackEvent
.
Listener
)
{
((
CallbackEvent
.
Listener
)
this
).
registerEvents
();
}
}
@Override
protected
void
onDestroy
()
{
if
(
this
instanceof
CallbackEvent
.
Listener
)
{
((
CallbackEvent
.
Listener
)
this
).
unregisterEvents
();
}
super
.
onDestroy
();
}
@Override
@Override
public
MagiskManager
getApplicationContext
()
{
public
MagiskManager
getApplicationContext
()
{
return
(
MagiskManager
)
super
.
getApplicationContext
();
return
(
MagiskManager
)
super
.
getApplicationContext
();
...
...
app/src/main/java/com/topjohnwu/magisk/components/Fragment.java
View file @
36124ddc
package
com
.
topjohnwu
.
magisk
.
components
;
package
com
.
topjohnwu
.
magisk
.
components
;
import
com.topjohnwu.magisk.MagiskManager
;
import
com.topjohnwu.magisk.MagiskManager
;
import
com.topjohnwu.magisk.utils.CallbackEvent
;
import
com.topjohnwu.magisk.utils.Utils
;
import
com.topjohnwu.magisk.utils.Utils
;
public
class
Fragment
extends
android
.
support
.
v4
.
app
.
Fragment
{
public
class
Fragment
extends
android
.
support
.
v4
.
app
.
Fragment
{
...
@@ -9,4 +10,19 @@ public class Fragment extends android.support.v4.app.Fragment {
...
@@ -9,4 +10,19 @@ public class Fragment extends android.support.v4.app.Fragment {
return
Utils
.
getMagiskManager
(
getActivity
());
return
Utils
.
getMagiskManager
(
getActivity
());
}
}
@Override
public
void
onResume
()
{
super
.
onResume
();
if
(
this
instanceof
CallbackEvent
.
Listener
)
{
((
CallbackEvent
.
Listener
)
this
).
registerEvents
();
}
}
@Override
public
void
onPause
()
{
if
(
this
instanceof
CallbackEvent
.
Listener
)
{
((
CallbackEvent
.
Listener
)
this
).
unregisterEvents
();
}
super
.
onPause
();
}
}
}
app/src/main/java/com/topjohnwu/magisk/superuser/SuLogEntry.java
View file @
36124ddc
...
@@ -10,7 +10,6 @@ import com.topjohnwu.magisk.MagiskManager;
...
@@ -10,7 +10,6 @@ import com.topjohnwu.magisk.MagiskManager;
import
java.text.DateFormat
;
import
java.text.DateFormat
;
import
java.text.SimpleDateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.Locale
;
public
class
SuLogEntry
implements
Parcelable
{
public
class
SuLogEntry
implements
Parcelable
{
...
...
app/src/main/java/com/topjohnwu/magisk/utils/CallbackEvent.java
View file @
36124ddc
package
com
.
topjohnwu
.
magisk
.
utils
;
package
com
.
topjohnwu
.
magisk
.
utils
;
import
java.lang.ref.WeakReference
;
import
java.lang.ref.WeakReference
;
import
java.util.HashSet
;
import
java.util.Iterator
;
import
java.util.Iterator
;
import
java.util.LinkedList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Set
;
public
class
CallbackEvent
<
Result
>
{
public
class
CallbackEvent
{
public
boolean
isTriggered
=
false
;
public
boolean
isTriggered
=
false
;
private
Result
result
;
private
List
<
WeakReference
<
Listener
>>
listeners
;
private
List
<
WeakReference
<
Listener
<
Result
>>>
listeners
;
public
void
register
(
Listener
<
Result
>
l
)
{
public
void
register
(
Listener
l
)
{
if
(
listeners
==
null
)
{
if
(
listeners
==
null
)
{
listeners
=
new
LinkedList
<>();
listeners
=
new
LinkedList
<>();
}
}
listeners
.
add
(
new
WeakReference
<>(
l
));
listeners
.
add
(
new
WeakReference
<>(
l
));
}
}
public
void
un
R
egister
()
{
public
void
un
r
egister
()
{
listeners
=
null
;
listeners
=
null
;
}
}
public
void
un
Register
(
Listener
<
Result
>
l
)
{
public
void
un
register
(
Listener
l
)
{
for
(
Iterator
<
WeakReference
<
Listener
<
Result
>
>>
i
=
listeners
.
iterator
();
i
.
hasNext
();)
{
for
(
Iterator
<
WeakReference
<
Listener
>>
i
=
listeners
.
iterator
();
i
.
hasNext
();)
{
WeakReference
<
Listener
<
Result
>
>
listener
=
i
.
next
();
WeakReference
<
Listener
>
listener
=
i
.
next
();
if
(
listener
.
get
()
==
null
||
listener
.
get
()
==
l
)
{
if
(
listener
.
get
()
==
null
||
listener
.
get
()
==
l
)
{
i
.
remove
();
i
.
remove
();
}
}
...
@@ -34,25 +31,38 @@ public class CallbackEvent<Result> {
...
@@ -34,25 +31,38 @@ public class CallbackEvent<Result> {
}
}
public
void
trigger
()
{
public
void
trigger
()
{
trigger
(
null
);
trigger
(
true
);
}
}
public
void
trigger
(
Result
r
)
{
public
void
trigger
(
boolean
b
)
{
result
=
r
;
isTriggered
=
b
;
isTriggered
=
true
;
if
(
listeners
!=
null
)
{
if
(
listeners
!=
null
)
{
for
(
WeakReference
<
Listener
<
Result
>
>
listener
:
listeners
)
{
for
(
WeakReference
<
Listener
>
listener
:
listeners
)
{
if
(
listener
.
get
()
!=
null
)
if
(
listener
.
get
()
!=
null
)
listener
.
get
().
onTrigger
(
this
);
listener
.
get
().
onTrigger
(
this
);
}
}
}
}
}
}
public
Result
getResult
()
{
return
result
;
}
public
interface
Listener
<
R
>
{
public
interface
Listener
{
void
onTrigger
(
CallbackEvent
<
R
>
event
);
default
void
registerEvents
()
{
for
(
CallbackEvent
event
:
getRegisterEvents
())
{
if
(
event
.
isTriggered
)
{
onTrigger
(
event
);
}
event
.
register
(
this
);
}
}
default
void
unregisterEvents
()
{
for
(
CallbackEvent
event
:
getRegisterEvents
())
{
event
.
unregister
(
this
);
}
}
default
void
onTrigger
()
{
onTrigger
(
null
);
}
void
onTrigger
(
CallbackEvent
event
);
CallbackEvent
[]
getRegisterEvents
();
}
}
}
}
app/src/main/java/com/topjohnwu/magisk/utils/Utils.java
View file @
36124ddc
...
@@ -11,14 +11,12 @@ import android.content.IntentFilter;
...
@@ -11,14 +11,12 @@ import android.content.IntentFilter;
import
android.content.SharedPreferences
;
import
android.content.SharedPreferences
;
import
android.content.pm.PackageManager
;
import
android.content.pm.PackageManager
;
import
android.content.res.Configuration
;
import
android.content.res.Configuration
;
import
android.content.res.Resources
;
import
android.database.Cursor
;
import
android.database.Cursor
;
import
android.net.ConnectivityManager
;
import
android.net.ConnectivityManager
;
import
android.net.NetworkInfo
;
import
android.net.NetworkInfo
;
import
android.net.Uri
;
import
android.net.Uri
;
import
android.os.Environment
;
import
android.os.Environment
;
import
android.provider.OpenableColumns
;
import
android.provider.OpenableColumns
;
import
android.support.annotation.IdRes
;
import
android.support.annotation.StringRes
;
import
android.support.annotation.StringRes
;
import
android.support.design.widget.Snackbar
;
import
android.support.design.widget.Snackbar
;
import
android.support.v4.app.ActivityCompat
;
import
android.support.v4.app.ActivityCompat
;
...
@@ -26,7 +24,6 @@ import android.support.v4.app.FragmentActivity;
...
@@ -26,7 +24,6 @@ import android.support.v4.app.FragmentActivity;
import
android.support.v4.app.TaskStackBuilder
;
import
android.support.v4.app.TaskStackBuilder
;
import
android.support.v7.app.NotificationCompat
;
import
android.support.v7.app.NotificationCompat
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
android.util.DisplayMetrics
;
import
android.widget.Toast
;
import
android.widget.Toast
;
import
com.topjohnwu.magisk.MagiskManager
;
import
com.topjohnwu.magisk.MagiskManager
;
...
@@ -40,7 +37,6 @@ import com.topjohnwu.magisk.receivers.ManagerUpdate;
...
@@ -40,7 +37,6 @@ import com.topjohnwu.magisk.receivers.ManagerUpdate;
import
java.io.File
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Collections
;
import
java.util.Comparator
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Locale
;
import
java.util.Locale
;
...
...
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