diff options
author | Deepak Kundra <deepakkundra@gmail.com> | 2016-05-27 20:18:17 -0700 |
---|---|---|
committer | Gerrit Code Review <gerrit@cyanogenmod.org> | 2016-06-03 19:22:34 -0700 |
commit | f6744a9b6493b172744deaf382a672699ac4730d (patch) | |
tree | 5acf5ddde639f1b864197cf0408206c2047cbc1d /src/com/android | |
parent | d6715b97696f84c0fbd84fac416cafac80900a9a (diff) | |
download | packages_apps_Settings-f6744a9b6493b172744deaf382a672699ac4730d.zip packages_apps_Settings-f6744a9b6493b172744deaf382a672699ac4730d.tar.gz packages_apps_Settings-f6744a9b6493b172744deaf382a672699ac4730d.tar.bz2 |
Radio info to control QC dbg prop's
Issue-id:FEIJ-679
Change-Id: Ia1c9e5d5899ae173d4fd7fa9b2339013b42f115b
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/settings/CmRadioInfo.java | 217 |
1 files changed, 217 insertions, 0 deletions
diff --git a/src/com/android/settings/CmRadioInfo.java b/src/com/android/settings/CmRadioInfo.java new file mode 100644 index 0000000..112f4d8 --- /dev/null +++ b/src/com/android/settings/CmRadioInfo.java @@ -0,0 +1,217 @@ +/* + * Copyright (C) 2016 The CyanogenMod Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.settings; + +import android.app.Activity; +import android.os.Bundle; +import android.os.SystemProperties; +import android.util.Log; +import android.view.View; +import android.view.View.OnClickListener; +import android.widget.Button; + +public class CmRadioInfo extends Activity { + private final String TAG = "CmRadioInfo"; + + private Button mbnAutoLoadButton; + private Button volteAvailOvrButton; + private Button vtAvailOvrButton; + private Button wfcAvailOvrButton; + private Button adbRadioLog; + private Button diagLog; + + static final String PROPERTY_SW_MBN_UPDATE = "persist.radio.sw_mbn_update"; + static final String PROPERTY_SW_MBN_VOLTE = "persist.radio.sw_mbn_volte"; + static final String PROPERTY_VOLTE_AVAIL_OVR = "persist.dbg.volte_avail_ovr"; + static final String PROPERTY_VT_AVAIL_OVR = "persist.dbg.vt_avail_ovr"; + static final String PROPERTY_DATA_IWLAN_ENABLE = "persist.data.iwlan.enable"; + static final String PROPERTY_WFC_AVAIL_OVR = "persist.dbg.wfc_avail_ovr"; + static final String PROPERTY_ADB_LOG_ON = "persist.radio.adb_log_on"; + static final String PROPERTY_DIAG_LOG_ON = "persist.radio.diag_log_on"; + + @Override + public void onCreate(Bundle icicle) { + super.onCreate(icicle); + + setContentView(R.layout.cm_radio_info); + + mbnAutoLoadButton = (Button) findViewById(R.id.mbn_auto_load); + mbnAutoLoadButton.setOnClickListener(mMbnAutoLoadHandler); + + volteAvailOvrButton = (Button) findViewById(R.id.volte_avail_ovr); + volteAvailOvrButton.setOnClickListener(mVolteAvailOvrHandler); + + vtAvailOvrButton = (Button) findViewById(R.id.vt_avail_ovr); + vtAvailOvrButton.setOnClickListener(mVtAvailOvrHandler); + + wfcAvailOvrButton = (Button) findViewById(R.id.wfc_avail_ovr); + wfcAvailOvrButton.setOnClickListener(mWfcAvailOvrHandler); + + adbRadioLog = (Button) findViewById(R.id.adb_radio_log); + adbRadioLog.setOnClickListener(mAdbRadioLogHandler); + + diagLog = (Button) findViewById(R.id.diag_log); + diagLog.setOnClickListener(mDiagLogHandler); + } + + @Override + protected void onResume() { + super.onResume(); + + updateMbnAutoLoadState(); + updateVolteAvailOvrState(); + updateVtAvailOvrState(); + updateWfcAvailOvrState(); + updateAdbRadioLogState(); + updateDiagLogState(); + + log("onResume: update cm radio info"); + } + + @Override + public void onPause() { + super.onPause(); + + log("onPause: cm radio info"); + } + + OnClickListener mMbnAutoLoadHandler = new OnClickListener() { + @Override + public void onClick(View v) { + SystemProperties.set(PROPERTY_SW_MBN_UPDATE, (isMbnAutoLoad() ? "0" : "1")); + updateMbnAutoLoadState(); + } + }; + + private boolean isMbnAutoLoad() { + return SystemProperties.getBoolean(PROPERTY_SW_MBN_UPDATE, false); + } + + private void updateMbnAutoLoadState() { + log("updateMbnAutoLoadState isMbnAutoLoad()=" + isMbnAutoLoad()); + String buttonText = isMbnAutoLoad() ? + getString(R.string.cm_radio_info_mbn_auto_load_on_label) : + getString(R.string.cm_radio_info_mbn_auto_load_off_label); + mbnAutoLoadButton.setText(buttonText); + } + + OnClickListener mVolteAvailOvrHandler = new OnClickListener() { + @Override + public void onClick(View v) { + SystemProperties.set(PROPERTY_SW_MBN_VOLTE, (isVolteAvailOvr() ? "0" : "1")); + SystemProperties.set(PROPERTY_VOLTE_AVAIL_OVR, (isVolteAvailOvr() ? "0" : "1")); + updateVolteAvailOvrState(); + } + }; + + private boolean isVolteAvailOvr() { + return SystemProperties.getBoolean(PROPERTY_VOLTE_AVAIL_OVR, false); + } + + private void updateVolteAvailOvrState() { + log("updateVolteAvailOvrState isVolteAvailOvr()=" + isVolteAvailOvr()); + String buttonText = isVolteAvailOvr() ? + getString(R.string.cm_radio_info_volte_avail_ovr_on_label) : + getString(R.string.cm_radio_info_volte_avail_ovr_off_label); + volteAvailOvrButton.setText(buttonText); + } + + OnClickListener mVtAvailOvrHandler = new OnClickListener() { + @Override + public void onClick(View v) { + SystemProperties.set(PROPERTY_VT_AVAIL_OVR, (isVtAvailOvr() ? "0" : "1")); + updateVtAvailOvrState(); + } + }; + + private boolean isVtAvailOvr() { + return SystemProperties.getBoolean(PROPERTY_VT_AVAIL_OVR, false); + } + + private void updateVtAvailOvrState() { + log("updateVtAvailOvrState isVtAvailOvr()=" + isVtAvailOvr()); + String buttonText = isVtAvailOvr() ? + getString(R.string.cm_radio_info_vt_avail_ovr_on_label) : + getString(R.string.cm_radio_info_vt_avail_ovr_off_label); + vtAvailOvrButton.setText(buttonText); + } + + OnClickListener mWfcAvailOvrHandler = new OnClickListener() { + @Override + public void onClick(View v) { + SystemProperties.set(PROPERTY_DATA_IWLAN_ENABLE, (isWfcAvailOvr() ? "false" : "true")); + SystemProperties.set(PROPERTY_WFC_AVAIL_OVR, (isWfcAvailOvr() ? "0" : "1")); + updateWfcAvailOvrState(); + } + }; + + private boolean isWfcAvailOvr() { + return SystemProperties.getBoolean(PROPERTY_WFC_AVAIL_OVR, false); + } + + private void updateWfcAvailOvrState() { + log("updateWfcAvailOvrState isWfcAvailOvr()=" + isWfcAvailOvr()); + String buttonText = isWfcAvailOvr() ? + getString(R.string.cm_radio_info_wfc_avail_ovr_on_label) : + getString(R.string.cm_radio_info_wfc_avail_ovr_off_label); + wfcAvailOvrButton.setText(buttonText); + } + + OnClickListener mAdbRadioLogHandler = new OnClickListener() { + @Override + public void onClick(View v) { + SystemProperties.set(PROPERTY_ADB_LOG_ON, (isAdbRadioLog() ? "0" : "1")); + updateAdbRadioLogState(); + } + }; + + private boolean isAdbRadioLog() { + return SystemProperties.getBoolean(PROPERTY_ADB_LOG_ON, false); + } + + private void updateAdbRadioLogState() { + log("updateAdbRadioLogState isAdbRadioLog()=" + isAdbRadioLog()); + String buttonText = isAdbRadioLog() ? + getString(R.string.cm_radio_info_adb_log_on_label) : + getString(R.string.cm_radio_info_adb_log_off_label); + adbRadioLog.setText(buttonText); + } + + OnClickListener mDiagLogHandler = new OnClickListener() { + @Override + public void onClick(View v) { + SystemProperties.set(PROPERTY_DIAG_LOG_ON, (isDiagLog() ? "0" : "1")); + updateDiagLogState(); + } + }; + + private boolean isDiagLog() { + return SystemProperties.getBoolean(PROPERTY_DIAG_LOG_ON, false); + } + + private void updateDiagLogState() { + log("updateDiagLogState isDiagLog()=" + isDiagLog()); + String buttonText = isDiagLog() ? + getString(R.string.cm_radio_info_diag_log_on_label) : + getString(R.string.cm_radio_info_diag_log_off_label); + diagLog.setText(buttonText); + } + + private void log(String s) { + Log.d(TAG, "[Phone] " + s); + } +} |