diff --git a/universal7885-common/apps/CameraLightSensor/src/com/eurekateam/cameralightsensor/CameraLightSensorService.kt b/universal7885-common/apps/CameraLightSensor/src/com/eurekateam/cameralightsensor/CameraLightSensorService.kt index 7169960..98a1bd6 100755 --- a/universal7885-common/apps/CameraLightSensor/src/com/eurekateam/cameralightsensor/CameraLightSensorService.kt +++ b/universal7885-common/apps/CameraLightSensor/src/com/eurekateam/cameralightsensor/CameraLightSensorService.kt @@ -152,7 +152,7 @@ class CameraLightSensorService : Service() { Log.w(TAG, "onReady: Session is NULL") } cameraDevice!!.close() - session.close() + session.close() } catch (e: Exception) { Log.e(TAG, "Camera is in use") e.printStackTrace() diff --git a/universal7885-common/apps/SamsungParts/AndroidManifest.xml b/universal7885-common/apps/SamsungParts/AndroidManifest.xml index d39f6d8..f48ed80 100644 --- a/universal7885-common/apps/SamsungParts/AndroidManifest.xml +++ b/universal7885-common/apps/SamsungParts/AndroidManifest.xml @@ -34,9 +34,6 @@ - diff --git a/universal7885-common/apps/SamsungParts/jni/FlashlightBridge.cpp b/universal7885-common/apps/SamsungParts/jni/FlashlightBridge.cpp index 3dfe65d..28131d4 100644 --- a/universal7885-common/apps/SamsungParts/jni/FlashlightBridge.cpp +++ b/universal7885-common/apps/SamsungParts/jni/FlashlightBridge.cpp @@ -14,7 +14,8 @@ using vendor::eureka::hardware::parts::V1_0::Value; static android::sp service = IFlashBrightness::getService(); extern "C" JNIEXPORT void JNICALL -Java_com_eurekateam_samsungextras_interfaces_Flashlight_setFlash(JNIEnv *env, __unused jobject obj, jboolean enabled) { +Java_com_eurekateam_samsungextras_interfaces_Flashlight_setEnabled +(JNIEnv *env, __unused jobject obj, jboolean enabled) { if (enabled) { service->setFlashlightEnable(Number::ENABLE); } else { diff --git a/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_minus.xml b/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_minus.xml deleted file mode 100644 index 28777b8..0000000 --- a/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_minus.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - diff --git a/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_plus.xml b/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_plus.xml deleted file mode 100644 index a1873f4..0000000 --- a/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_plus.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - diff --git a/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_reset.xml b/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_reset.xml deleted file mode 100644 index 3c6dbc9..0000000 --- a/universal7885-common/apps/SamsungParts/res/drawable/ic_custom_seekbar_reset.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - diff --git a/universal7885-common/apps/SamsungParts/res/layout/preference_custom_seekbar.xml b/universal7885-common/apps/SamsungParts/res/layout/preference_custom_seekbar.xml deleted file mode 100644 index 6308ef8..0000000 --- a/universal7885-common/apps/SamsungParts/res/layout/preference_custom_seekbar.xml +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/universal7885-common/apps/SamsungParts/res/layout/switch_bar.xml b/universal7885-common/apps/SamsungParts/res/layout/switch_bar.xml deleted file mode 100644 index ec75f84..0000000 --- a/universal7885-common/apps/SamsungParts/res/layout/switch_bar.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - diff --git a/universal7885-common/apps/SamsungParts/res/values/arrays.xml b/universal7885-common/apps/SamsungParts/res/values/arrays.xml deleted file mode 100644 index bd6594e..0000000 --- a/universal7885-common/apps/SamsungParts/res/values/arrays.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - @string/battery_max_capa - @string/battery_chrged_up_to - @string/battery_chrged_up_to_mah - @string/battery_current - @string/battery_status - @string/battery_temp - - - @string/dolby_profile_auto - @string/dolby_profile_movie - @string/dolby_profile_music - @string/dolby_profile_voice - - diff --git a/universal7885-common/apps/SamsungParts/res/values/attrs.xml b/universal7885-common/apps/SamsungParts/res/values/attrs.xml deleted file mode 100644 index 44f9b1b..0000000 --- a/universal7885-common/apps/SamsungParts/res/values/attrs.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/universal7885-common/apps/SamsungParts/res/values/colors.xml b/universal7885-common/apps/SamsungParts/res/values/colors.xml deleted file mode 100644 index 42d9a63..0000000 --- a/universal7885-common/apps/SamsungParts/res/values/colors.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - #66000000 - #FFFF6700 - #FF0000 - #00FF00 - #0000FF - diff --git a/universal7885-common/apps/SamsungParts/res/values/strings.xml b/universal7885-common/apps/SamsungParts/res/values/strings.xml index 9a7105a..dccf73c 100644 --- a/universal7885-common/apps/SamsungParts/res/values/strings.xml +++ b/universal7885-common/apps/SamsungParts/res/values/strings.xml @@ -17,7 +17,8 @@ SamsungParts Device specific tweaks - + Not shown due to user settings + Show the battery data Display @@ -26,7 +27,7 @@ Audio - + Enable Eureka flash control feature Clear speaker Play a 30-second audio to clear the speaker @@ -94,11 +95,4 @@ Off - - - Value: %s - Default - Default value: %s\nLong press to set - Default value is set - diff --git a/universal7885-common/apps/SamsungParts/res/xml/battery_settings.xml b/universal7885-common/apps/SamsungParts/res/xml/battery_settings.xml index 7f2e72b..475ecfa 100644 --- a/universal7885-common/apps/SamsungParts/res/xml/battery_settings.xml +++ b/universal7885-common/apps/SamsungParts/res/xml/battery_settings.xml @@ -3,7 +3,11 @@ xmlns:android="http://schemas.android.com/apk/res/android" android:title="@string/fastcharge_title"> - + + - + + + + + + + + + + + ( - Battery.getGeneralBatteryStats(1).toString() + " mAh", - Battery.getGeneralBatteryStats(2).toString() + " %", - Battery.getGeneralBatteryStats(3).toString() + " mAh", - Battery.getGeneralBatteryStats(6).toString() + " mAh", - if (Battery.getGeneralBatteryStats(4) == 1) "Charging" else "Discharging", - Battery.getGeneralBatteryStats(5).toString() + " \u2103" - ) - mBatteryInfo.entryValues = items - mBatteryInfo.onPreferenceChangeListener = - Preference.OnPreferenceChangeListener { _: Preference?, newValue: Any? -> - Toast.makeText( - context, newValue as String, Toast.LENGTH_SHORT - ).show() - true - } + mShowDataPref = findPreference(PREF_SHOW_DATA)!! + mShowDataPref.isChecked = mSharedPreferences.getBoolean(PREF_SHOW_DATA, true) + mShowDataPref.addOnSwitchChangeListener(this) + if (mShowDataPref.isChecked) { + mPoolExecutor = ScheduledThreadPoolExecutor(3) + mPoolExecutor!!.scheduleWithFixedDelay(mScheduler, 0, 2, TimeUnit.SECONDS) + } } override fun onPreferenceChange(preference: Preference, newValue: Any): Boolean { - if (preference === mChargePref) { + if (preference == mChargePref) { val value = newValue as Boolean Battery.chargeSysfs = if (value) 0 else 1 mChargePref.isChecked = Battery.chargeSysfs == 0 mSharedPreferences.edit().putBoolean(PREF_CHARGE, Battery.chargeSysfs == 0).apply() return true + } else if (preference == mFastChargePref) { + Battery.setFastCharge(if (newValue as Boolean) 0 else 1) + mFastChargePref.isChecked = Battery.fastChargeSysfs == 0 + mSharedPreferences.edit().putBoolean(PREF_FASTCHARGE, Battery.fastChargeSysfs == 0).apply() } return false } + private val mScheduler = Runnable { + requireActivity().runOnUiThread { + findPreference(INFO_MAX_CAP)!!.summary = Battery.getGeneralBatteryStats(1).toString() + " mAh" + findPreference(INFO_CHARGED_UP_TO)!!.summary = Battery.getGeneralBatteryStats(2).toString() + " %" + findPreference(INFO_CHARGED_MAH)!!.summary = Battery.getGeneralBatteryStats(3).toString() + " mAh" + findPreference(INFO_CURRENT)!!.summary = Battery.getGeneralBatteryStats(6).toString() + " mA" + findPreference(INFO_STATUS)!!.summary = if (Battery.getGeneralBatteryStats(4) == 1) "Charging" else "Discharging" + findPreference(INFO_TEMP)!!.summary = Battery.getGeneralBatteryStats(5).toString() + " \u2103" + } + } override fun onSwitchChanged(switchView: Switch, isChecked: Boolean) { - Battery.setFastCharge(if (isChecked) 0 else 1) - mFastChargePref.isChecked = Battery.fastChargeSysfs -== 0 - mSharedPreferences.edit().putBoolean(PREF_FASTCHARGE, Battery.fastChargeSysfs == 0).apply() + if (isChecked) { + if (mPoolExecutor == null) { + mPoolExecutor = ScheduledThreadPoolExecutor(2) + mPoolExecutor!!.scheduleWithFixedDelay( + mScheduler, 0, 2, TimeUnit.SECONDS + ) + } + } else { + if (mPoolExecutor != null) { + mPoolExecutor!!.shutdown() + mPoolExecutor = null + } + val mNotShown = requireContext().getString(R.string.not_shown) + findPreference(INFO_MAX_CAP)!!.summary = mNotShown + findPreference(INFO_CHARGED_UP_TO)!!.summary = mNotShown + findPreference(INFO_CHARGED_MAH)!!.summary = mNotShown + findPreference(INFO_CURRENT)!!.summary = mNotShown + findPreference(INFO_STATUS)!!.summary = mNotShown + findPreference(INFO_TEMP)!!.summary = mNotShown + } + mSharedPreferences.edit().putBoolean(PREF_SHOW_DATA, isChecked).apply() } companion object { const val PREF_FASTCHARGE = "fastcharge_pref" const val PREF_CHARGE = "charge_pref" + const val INFO_MAX_CAP = "battery_capacity" + const val INFO_CHARGED_UP_TO = "battery_charged_up_to" + const val INFO_CHARGED_MAH = "battery_charged_up_to_mah" + const val INFO_CURRENT = "battery_current" + const val INFO_STATUS = "battery_status" + const val INFO_TEMP = "battery_temp" + const val PREF_SHOW_DATA = "show_data" private const val BATTERY_INFO = "battery_info" } } 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 6ec402c..9512828 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 @@ -16,15 +16,16 @@ package com.eurekateam.samsungextras.dolby +import android.os.Bundle import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R class DolbyActivity : CollapsingToolbarBaseActivity() { public override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - fragmentManager.beginTransaction().replace( - R.id.content_frame, - DolbyFragment() + supportFragmentManager.beginTransaction().replace( + R.id.content_frame, + DolbyFragment() ).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 1792963..9754097 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 @@ -16,7 +16,6 @@ package com.eurekateam.samsungextras.flashlight import android.os.Bundle - import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R @@ -24,8 +23,8 @@ class FlashLightActivity : CollapsingToolbarBaseActivity() { public override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) supportFragmentManager.beginTransaction().replace( - R.id.content_frame, - FlashLightFragment() + R.id.content_frame, + FlashLightFragment() ).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 fef0882..2ff363c 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 @@ -18,18 +18,20 @@ package com.eurekateam.samsungextras.flashlight import android.content.SharedPreferences import android.os.Build import android.os.Bundle +import android.widget.Switch import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import androidx.preference.PreferenceManager -import com.eurekateam.samsungextras.R +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 class FlashLightFragment : PreferenceFragmentCompat(), Preference.OnPreferenceChangeListener, OnMainSwitchChangeListener { private lateinit var mFlashLightPref: SeekBarPreference private lateinit var mSharedPreferences: SharedPreferences - private lateinit var mFlashLightEnable : MainSwitchPreference + private lateinit var mFlashLightEnable: MainSwitchPreference override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { addPreferencesFromResource(R.xml.flashlight_settings) mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(requireContext()) @@ -38,10 +40,10 @@ class FlashLightFragment : PreferenceFragmentCompat(), Preference.OnPreferenceCh mFlashLightPref.setMax(10) mFlashLightPref.setMin(1) mFlashLightPref.value = Flashlight.getFlash(if (Build.DEVICE.contains("a10")) 1 else 0) - mFlashLightEnable = findPreference(PREF_FLASHLIGHT_ENABLE)!! - mFlashLightEnable.isChecked = mSharedPreferences.getBoolean(PREF_FLASHLIGHT_ENABLE, true) - mFlashLightEnable.addOnSwitchChangeListener(this) - mFlashLightPref.isEnabled = mFlashLightEnable.isChecked + mFlashLightEnable = findPreference(PREF_FLASHLIGHT_ENABLE)!! + mFlashLightEnable.isChecked = mSharedPreferences.getBoolean(PREF_FLASHLIGHT_ENABLE, true) + mFlashLightEnable.addOnSwitchChangeListener(this) + mFlashLightPref.isEnabled = mFlashLightEnable.isChecked } override fun onPreferenceChange(preference: Preference, newValue: Any): Boolean { @@ -51,17 +53,15 @@ class FlashLightFragment : PreferenceFragmentCompat(), Preference.OnPreferenceCh mSharedPreferences.edit().putInt(PREF_FLASHLIGHT, value).apply() return true } - return false + return false } override fun onSwitchChanged(switchView: Switch, isChecked: Boolean) { - Flashlight.setEnabled(isChecked) - mSharedPreferences.edit().putBoolean(PREF_FLASHLIGHT_ENABLE, isChecked) - mFlashLightPref.isEnabled = isChecked - } - - companion object { + Flashlight.setEnabled(isChecked) + mSharedPreferences.edit().putBoolean(PREF_FLASHLIGHT_ENABLE, isChecked) + mFlashLightPref.isEnabled = isChecked + } companion object { const val PREF_FLASHLIGHT = "flashlight_pref" - const val PREF_FLASHLIGHT_ENABLE = "flashlight_enable" + 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 index 5e8b043..b373978 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,5 +19,4 @@ package com.eurekateam.samsungextras.interfaces object Flashlight { external fun setFlash(value: Int) external fun getFlash(isA10: Int): Int - external fun setEnabled(enable: Boolean) -} + external fun setEnabled(enable: Boolean) } 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 53e6972..627c523 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 @@ -15,6 +15,7 @@ */ package com.eurekateam.samsungextras.speaker +import android.os.Bundle import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity import com.android.settingslib.collapsingtoolbar.R @@ -22,8 +23,8 @@ class ClearSpeakerActivity : CollapsingToolbarBaseActivity() { public override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) supportFragmentManager.beginTransaction().replace( - R.id.content_frame, - ClearSpeakerFragment() + R.id.content_frame, + ClearSpeakerFragment() ).commit() } } diff --git a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerFragment.kt b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerFragment.kt index cd247f1..2fbad7a 100644 --- a/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerFragment.kt +++ b/universal7885-common/apps/SamsungParts/src/com/eurekateam/samsungextras/speaker/ClearSpeakerFragment.kt @@ -15,16 +15,18 @@ */ package com.eurekateam.samsungextras.speaker +import android.media.AudioManager import android.media.MediaPlayer import android.os.Bundle import android.os.Handler import android.os.Looper import android.util.Log +import android.widget.Switch import androidx.preference.PreferenceFragmentCompat -import com.eurekateam.samsungextras.R -import java.io.IOException import com.android.settingslib.widget.MainSwitchPreference import com.android.settingslib.widget.OnMainSwitchChangeListener +import com.eurekateam.samsungextras.R +import java.io.IOException class ClearSpeakerFragment : PreferenceFragmentCompat(), OnMainSwitchChangeListener { private lateinit var mHandler: Handler @@ -33,18 +35,17 @@ class ClearSpeakerFragment : PreferenceFragmentCompat(), OnMainSwitchChangeListe override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { addPreferencesFromResource(R.xml.clear_speaker_settings) mClearSpeakerPref = findPreference(PREF_CLEAR_SPEAKER)!! - mClearSpeakerPref.onPreferenceChangeListener = this + mClearSpeakerPref.addOnSwitchChangeListener(this) mHandler = Handler(Looper.getMainLooper()) } override fun onSwitchChanged(switchView: Switch, isChecked: Boolean) { - if (isChecked) { - if (startPlaying()) { - mHandler.removeCallbacksAndMessages(null) - mHandler.postDelayed({ stopPlaying() }, 30000) - } + if (isChecked) { + if (startPlaying()) { + mHandler.removeCallbacksAndMessages(null) + mHandler.postDelayed({ stopPlaying() }, 30000) } - return false + } } override fun onStop() { diff --git a/universal7885-common/hardware/interfaces/hardware/parts/1.0/default/FlashLight.cpp b/universal7885-common/hardware/interfaces/hardware/parts/1.0/default/FlashLight.cpp index 945cfb9..7430348 100644 --- a/universal7885-common/hardware/interfaces/hardware/parts/1.0/default/FlashLight.cpp +++ b/universal7885-common/hardware/interfaces/hardware/parts/1.0/default/FlashLight.cpp @@ -41,7 +41,7 @@ Return FlashBrightness::setFlashlightEnable(parts::V1_0::Number enable) { Return FlashBrightness::setFlashlightWritable(parts::V1_0::Value value) { std::ofstream file; - std::string writevalue = std::to_string((int) value); + std::string writevalue = std::to_string((int)value); file.open("/sys/class/camera/flash/torch_brightness_lvl"); file << writevalue; file.close();