Fix #478
This commit is contained in:
@@ -150,6 +150,10 @@ class AppManager extends AppCompatActivity with OnCheckedChangeListener with OnC
|
||||
handler.removeCallbacksAndMessages(null)
|
||||
handler = null
|
||||
}
|
||||
if (overlay != null) {
|
||||
getWindowManager.removeViewImmediate(overlay)
|
||||
overlay = null
|
||||
}
|
||||
}
|
||||
|
||||
def onMenuItemClick(item: MenuItem): Boolean = {
|
||||
@@ -210,7 +214,7 @@ class AppManager extends AppCompatActivity with OnCheckedChangeListener with OnC
|
||||
toolbar.inflateMenu(R.menu.app_manager_menu)
|
||||
toolbar.setOnMenuItemClickListener(this)
|
||||
|
||||
this.overlay = View.inflate(this, R.layout.overlay, null).asInstanceOf[TextView]
|
||||
overlay = View.inflate(this, R.layout.overlay, null).asInstanceOf[TextView]
|
||||
getWindowManager.addView(overlay, new
|
||||
WindowManager.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT,
|
||||
WindowManager.LayoutParams.TYPE_APPLICATION,
|
||||
@@ -219,7 +223,7 @@ class AppManager extends AppCompatActivity with OnCheckedChangeListener with OnC
|
||||
|
||||
findViewById(R.id.onSwitch).asInstanceOf[Switch]
|
||||
.setOnCheckedChangeListener((button: CompoundButton, checked: Boolean) => {
|
||||
ShadowsocksApplication.settings.edit().putBoolean(Key.isProxyApps, checked).apply()
|
||||
ShadowsocksApplication.settings.edit().putBoolean(Key.isProxyApps, checked).commit()
|
||||
finish()
|
||||
})
|
||||
|
||||
|
||||
@@ -24,10 +24,6 @@ class ShadowsocksSettings extends PreferenceFragment with OnSharedPreferenceChan
|
||||
getPreferenceManager.getSharedPreferences.registerOnSharedPreferenceChangeListener(this)
|
||||
|
||||
isProxyApps = findPreference(Key.isProxyApps).asInstanceOf[SwitchPreference]
|
||||
isProxyApps.setOnPreferenceChangeListener((preference: Preference, newValue: Any) => {
|
||||
startActivity(new Intent(activity, classOf[AppManager]))
|
||||
newValue.asInstanceOf[Boolean] // keep it ON
|
||||
})
|
||||
|
||||
findPreference("recovery").setOnPreferenceClickListener((preference: Preference) => {
|
||||
ShadowsocksApplication.track(Shadowsocks.TAG, "reset")
|
||||
@@ -67,8 +63,19 @@ class ShadowsocksSettings extends PreferenceFragment with OnSharedPreferenceChan
|
||||
}
|
||||
|
||||
override def onResume {
|
||||
super.onResume
|
||||
super.onResume()
|
||||
isProxyApps.setChecked(ShadowsocksApplication.settings.getBoolean(Key.isProxyApps, false)) // update
|
||||
isProxyApps.setOnPreferenceChangeListener((preference: Preference, newValue: Any) => {
|
||||
if (newValue.asInstanceOf[Boolean] == true) {
|
||||
startActivity(new Intent(activity, classOf[AppManager]))
|
||||
}
|
||||
true
|
||||
})
|
||||
}
|
||||
|
||||
override def onPause {
|
||||
super.onPause()
|
||||
isProxyApps.setOnPreferenceChangeListener(null)
|
||||
}
|
||||
|
||||
def onSharedPreferenceChanged(sharedPreferences: SharedPreferences, key: String) = key match {
|
||||
|
||||
Reference in New Issue
Block a user