diff --git a/app/src/main/java/com/utsmm/kbz/ui/navigation/NaviMainFragment.java b/app/src/main/java/com/utsmm/kbz/ui/navigation/NaviMainFragment.java index 07d9709..6ffd8df 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/navigation/NaviMainFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/navigation/NaviMainFragment.java @@ -4,6 +4,8 @@ import android.content.Context; import android.text.TextUtils; import android.util.Log; +import androidx.databinding.ObservableBoolean; + import com.nexgo.oaf.apiv3.APIProxy; import com.nexgo.oaf.apiv3.DeviceEngine; import com.nexgo.oaf.apiv3.DeviceInfo; @@ -12,6 +14,7 @@ import com.nexgo.oaf.apiv3.device.printer.AlignEnum; import com.nexgo.oaf.apiv3.device.printer.GrayLevelEnum; import com.nexgo.oaf.apiv3.device.printer.LineOptionEntity; import com.nexgo.oaf.apiv3.device.printer.Printer; +import com.utsmyanmar.baselib.BaseApplication; import com.utsmyanmar.baselib.fragment.DataBindingFragment; import com.utsmyanmar.baselib.network.model.sirius.SiriusHost; import com.utsmyanmar.baselib.network.model.sirius.SiriusMerchant; @@ -20,12 +23,14 @@ import com.utsmyanmar.baselib.util.DataBindingConfig; import com.utsmyanmar.paylibs.Constant; import com.utsmyanmar.paylibs.sign_on.EchoTestProcess; import com.utsmyanmar.paylibs.sign_on.SignOnListener; +import com.utsmyanmar.paylibs.utils.LogUtil; import com.utsmyanmar.paylibs.utils.core_utils.SystemParamsOperation; import com.utsmm.kbz.BR; import com.utsmm.kbz.R; import com.utsmm.kbz.ui.core_viewmodel.SharedViewModel; import java.util.List; +import java.util.Observable; public class NaviMainFragment extends DataBindingFragment { @@ -114,6 +119,36 @@ public class NaviMainFragment extends DataBindingFragment { } public class ClickEvent { + + private static final String PREF_NAME = "pinpad_prefs"; + private static final String KEY_PINPAD_SOUND = "pinpad_sound_enabled"; + + public final ObservableBoolean pinpadSoundEnabled; + + public ClickEvent() { + boolean savedValue = loadPinpadSoundState(); + this.pinpadSoundEnabled = new ObservableBoolean(savedValue); + + BaseApplication.getInstance().deviceEngine.getPlatform().enablePinpadBeep(savedValue); + } + + public boolean loadPinpadSoundState(){ + return BaseApplication.getInstance().getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE).getBoolean(KEY_PINPAD_SOUND, true); + } + + public void savePinpadSoundState(boolean enabled){ + BaseApplication.getInstance().getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE).edit().putBoolean(KEY_PINPAD_SOUND, enabled).apply(); + } + + public void onClickPinpadSound(){ + boolean newState = !pinpadSoundEnabled.get(); + int result = BaseApplication.getInstance().deviceEngine.getPlatform().enablePinpadBeep(newState); + if(result == SdkResult.Success){ + pinpadSoundEnabled.set(newState); + savePinpadSoundState(newState); +// LogUtil.d("NaviMainFragment", "pinpad enabled"); + } + } public void onClickEcho() { showLoadingDialog("Sending Echo!"); diff --git a/app/src/main/res/layout/navi_main_layout.xml b/app/src/main/res/layout/navi_main_layout.xml index 0c654e1..2826727 100644 --- a/app/src/main/res/layout/navi_main_layout.xml +++ b/app/src/main/res/layout/navi_main_layout.xml @@ -5,6 +5,7 @@ + @@ -376,6 +377,84 @@ android:textSize="16sp" android:textStyle="bold" tools:fontFamily="sans-serif-medium" /> + + + + + + + + + + + + + + + + + + + + + + + +