From f0f0ae07f3a6caa8aa24a0649d30382f0c7e257d Mon Sep 17 00:00:00 2001 From: roynatech2544 Date: Tue, 13 Dec 2022 17:34:45 +0900 Subject: [PATCH] universal7885: parts: Use cached instances when possible --- .../com/eurekateam/samsungextras/BootReceiver.kt | 6 ++---- .../samsungextras/battery/BatteryActivity.kt | 4 +++- .../samsungextras/battery/BatteryFragment.kt | 7 +++---- .../samsungextras/dolby/DolbyActivity.kt | 6 ++++-- .../flashlight/FlashLightActivity.kt | 6 ++++-- .../flashlight/FlashLightFragment.kt | 15 ++++++++------- .../interfaces/{Flashlight.kt => FlashLight.kt} | 2 +- .../smartcharge/SmartChargeActivity.kt | 4 +++- .../samsungextras/speaker/ClearSpeakerActivity.kt | 6 ++++-- .../eurekateam/samsungextras/swap/SwapActivity.kt | 4 +++- 10 files changed, 35 insertions(+), 25 deletions(-) rename universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/interfaces/{Flashlight.kt => FlashLight.kt} (98%) diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/BootReceiver.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/BootReceiver.kt index 830dd52..fc884ef 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/BootReceiver.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/BootReceiver.kt @@ -12,7 +12,7 @@ import com.eurekateam.samsungextras.flashlight.FlashLightFragment import com.eurekateam.samsungextras.smartcharge.SmartChargeFragment import com.eurekateam.samsungextras.interfaces.Battery import com.eurekateam.samsungextras.interfaces.Display -import com.eurekateam.samsungextras.interfaces.Flashlight +import com.eurekateam.samsungextras.interfaces.FlashLight import com.eurekateam.samsungextras.interfaces.Swap import com.eurekateam.samsungextras.interfaces.SmartCharge import com.eurekateam.samsungextras.swap.SwapFragment @@ -39,15 +39,13 @@ class BootReceiver : BroadcastReceiver() { ) // FlashLight - val mFlash = Flashlight() + val mFlash = FlashLight() mFlash.setFlash(mSharedPreferences.getInt(FlashLightFragment.PREF_FLASHLIGHT, 5)) // ZRAM val mSwap = Swap() if (mSharedPreferences.getBoolean(SwapFragment.PREF_SWAP_ENABLE, false)) { mSwap.setSwapOn(false) - } else { - mSwap.setSwapOff() } // Display diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryActivity.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryActivity.kt index e0cdad1..c549065 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryActivity.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryActivity.kt @@ -20,11 +20,13 @@ import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R class BatteryActivity : CollapsingToolbarBaseActivity() { + private var mInstance : BatteryFragment? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + if (mInstance == null) mInstance = BatteryFragment() supportFragmentManager.beginTransaction().replace( R.id.content_frame, - BatteryFragment() + mInstance!! ).commit() } } diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryFragment.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryFragment.kt index 26a59b4..b12bb1a 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryFragment.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/battery/BatteryFragment.kt @@ -36,6 +36,8 @@ class BatteryFragment : PreferenceFragmentCompat(), Preference.OnPreferenceChang private lateinit var mChargePref: SwitchPreference private lateinit var mShowDataPref: MainSwitchPreference private lateinit var mSharedPreferences: SharedPreferences + private val mBattery = Battery() + override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { addPreferencesFromResource(R.xml.battery_settings) mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(requireContext()) @@ -55,10 +57,8 @@ class BatteryFragment : PreferenceFragmentCompat(), Preference.OnPreferenceChang } override fun onPreferenceChange(preference: Preference, newValue: Any): Boolean { - val mBattery = Battery() if (preference == mChargePref) { - val value = newValue as Boolean - mBattery.Charge = value + mBattery.Charge = newValue as Boolean mChargePref.isChecked = mBattery.Charge mSharedPreferences.edit().putBoolean(PREF_CHARGE, mBattery.Charge).apply() return true @@ -71,7 +71,6 @@ class BatteryFragment : PreferenceFragmentCompat(), Preference.OnPreferenceChang return false } private val mScheduler = Runnable { - val mBattery = Battery() requireActivity().runOnUiThread { findPreference(INFO_MAX_CAP)!!.summary = mBattery.getGeneralBatteryStats(BatteryIds.BATTERY_CAPACITY_MAX).toString() + " mAh" findPreference(INFO_CHARGED_UP_TO)!!.summary = mBattery.getGeneralBatteryStats(BatteryIds.BATTERY_CAPACITY_CURRENT).toString() + " %" diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/dolby/DolbyActivity.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/dolby/DolbyActivity.kt index 9512828..669635b 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/dolby/DolbyActivity.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/dolby/DolbyActivity.kt @@ -21,11 +21,13 @@ import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R class DolbyActivity : CollapsingToolbarBaseActivity() { - public override fun onCreate(savedInstanceState: Bundle?) { + private var mInstance : DolbyFragment? = null + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + if (mInstance == null) mInstance = DolbyFragment() supportFragmentManager.beginTransaction().replace( R.id.content_frame, - DolbyFragment() + mInstance!! ).commit() } } diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightActivity.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightActivity.kt index 9754097..f5d5623 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightActivity.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightActivity.kt @@ -20,11 +20,13 @@ import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R class FlashLightActivity : CollapsingToolbarBaseActivity() { - public override fun onCreate(savedInstanceState: Bundle?) { + private var mInstance : FlashLightFragment? = null + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + if (mInstance == null) mInstance = FlashLightFragment() supportFragmentManager.beginTransaction().replace( R.id.content_frame, - FlashLightFragment() + mInstance!! ).commit() } } diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightFragment.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightFragment.kt index 69cf04e..445d38c 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightFragment.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/flashlight/FlashLightFragment.kt @@ -26,12 +26,14 @@ import androidx.preference.SeekBarPreference import com.android.settingslib.widget.MainSwitchPreference import com.android.settingslib.widget.OnMainSwitchChangeListener import com.eurekateam.samsungextras.R -import com.eurekateam.samsungextras.interfaces.Flashlight +import com.eurekateam.samsungextras.interfaces.FlashLight class FlashLightFragment : PreferenceFragmentCompat(), Preference.OnPreferenceChangeListener, OnMainSwitchChangeListener { private lateinit var mFlashLightPref: SeekBarPreference private lateinit var mSharedPreferences: SharedPreferences private lateinit var mFlashLightEnable: MainSwitchPreference + private val mFlashLight = FlashLight() + override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { addPreferencesFromResource(R.xml.flashlight_settings) mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(requireContext()) @@ -39,7 +41,6 @@ class FlashLightFragment : PreferenceFragmentCompat(), Preference.OnPreferenceCh mFlashLightPref.onPreferenceChangeListener = this mFlashLightPref.setMax(10) mFlashLightPref.setMin(1) - val mFlashLight = Flashlight() mFlashLightPref.value = mFlashLight.getFlash(Build.DEVICE.contains("a10")) mFlashLightPref.showSeekBarValue = true mFlashLightEnable = findPreference(PREF_FLASHLIGHT_ENABLE)!! @@ -51,8 +52,7 @@ class FlashLightFragment : PreferenceFragmentCompat(), Preference.OnPreferenceCh override fun onPreferenceChange(preference: Preference, newValue: Any): Boolean { if (preference == mFlashLightPref) { val value = newValue as Int - val mFlash = Flashlight() - mFlash.setFlash(value) + mFlashLight.setFlash(value) mSharedPreferences.edit().putInt(PREF_FLASHLIGHT, value).apply() return true } @@ -60,11 +60,12 @@ class FlashLightFragment : PreferenceFragmentCompat(), Preference.OnPreferenceCh } override fun onSwitchChanged(switchView: Switch, isChecked: Boolean) { - val mFlash = Flashlight() - mFlash.setEnabled(isChecked) + mFlashLight.setEnabled(isChecked) mSharedPreferences.edit().putBoolean(PREF_FLASHLIGHT_ENABLE, isChecked) mFlashLightPref.isEnabled = isChecked - } companion object { + } + + companion object { const val PREF_FLASHLIGHT = "flashlight_pref" const val PREF_FLASHLIGHT_ENABLE = "flashlight_enable" } diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/interfaces/Flashlight.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/interfaces/FlashLight.kt similarity index 98% rename from universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/interfaces/Flashlight.kt rename to universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/interfaces/FlashLight.kt index 459c9df..3d677d4 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/interfaces/Flashlight.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/interfaces/FlashLight.kt @@ -19,7 +19,7 @@ package com.eurekateam.samsungextras.interfaces import android.os.ServiceManager import vendor.eureka.hardware.parts.IFlashBrightness -class Flashlight { +class FlashLight { private val mFlash: IFlashBrightness init { diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/smartcharge/SmartChargeActivity.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/smartcharge/SmartChargeActivity.kt index dafc48d..32b3c63 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/smartcharge/SmartChargeActivity.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/smartcharge/SmartChargeActivity.kt @@ -20,11 +20,13 @@ import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R class SmartChargeActivity : CollapsingToolbarBaseActivity() { + private var mInstance : SmartChargeFragment? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + if (mInstance == null) mInstance = SmartChargeFragment() supportFragmentManager.beginTransaction().replace( R.id.content_frame, - SmartChargeFragment() + mInstance!! ).commit() } } diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerActivity.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerActivity.kt index 627c523..1de01ec 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerActivity.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerActivity.kt @@ -20,11 +20,13 @@ import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R class ClearSpeakerActivity : CollapsingToolbarBaseActivity() { - public override fun onCreate(savedInstanceState: Bundle?) { + private var mInstance : ClearSpeakerFragment? = null + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + if (mInstance == null) mInstance = ClearSpeakerFragment() supportFragmentManager.beginTransaction().replace( R.id.content_frame, - ClearSpeakerFragment() + mInstance!! ).commit() } } diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/swap/SwapActivity.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/swap/SwapActivity.kt index b2d0f4d..09795b8 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/swap/SwapActivity.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/swap/SwapActivity.kt @@ -20,11 +20,13 @@ import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R class SwapActivity : CollapsingToolbarBaseActivity() { + private var mInstance : SwapFragment? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + if (mInstance == null) mInstance = SwapFragment() supportFragmentManager.beginTransaction().replace( R.id.content_frame, - SwapFragment() + mInstance!! ).commit() } }