diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index ac0b676f..5cea095c 100644 Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ diff --git a/app/build.gradle b/app/build.gradle index a0aaa050..f993e6ab 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -87,7 +87,7 @@ android { manifestPlaceholders.fileProvider = "com.gmeremit.online.gmeremittance_native.fileprovider" // applicationIdSuffix ".uat" signingConfig signingConfigs.debug - buildConfigField 'String', 'BASE_URL', '"http://gmeuat.gmeremit.com:5008/api/"' + buildConfigField 'String', 'BASE_URL', '"http://gmeuat.gmeremit.com:5012/api/"' buildConfigField 'String', 'API_VERSION', '"v1"' buildConfigField 'String', 'BASE_URL_SOCIAL', '"http://10.1.1.171:8080/v1/"' debuggable true diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseActivity.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseActivity.java index 41216a1a..a9709396 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseActivity.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseActivity.java @@ -42,6 +42,7 @@ public class BaseActivity extends AppCompatActivity implements BaseContractInter private boolean shouldEnableAppScreenShot = true; private boolean shouldallowDefaultActivityTransition = false; + @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -80,13 +81,8 @@ public class BaseActivity extends AppCompatActivity implements BaseContractInter dialog = null; } } - } catch (Exception e) { - if(e instanceof IllegalStateException) - { - isProgressBarShowing=false; - dialog=null; - new Handler().post(()->showProgressBar(action,message)); - } + } catch (IllegalStateException e) { + } diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseFragment.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseFragment.java index ab553db4..f095781c 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseFragment.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/base/BaseFragment.java @@ -16,9 +16,6 @@ public class BaseFragment extends android.support.v4.app.Fragment implements Bas private boolean isUIReady; - - - @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/CustomProgressDialog.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/CustomProgressDialog.java index f445dc77..9cc13f95 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/CustomProgressDialog.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/CustomProgressDialog.java @@ -1,7 +1,6 @@ package com.gmeremit.online.gmeremittance_native.customwidgets; import android.app.Dialog; -import android.app.DialogFragment; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.app.AlertDialog; @@ -9,22 +8,25 @@ import android.view.View; import android.widget.TextView; import com.gmeremit.online.gmeremittance_native.R; +import com.gmeremit.online.gmeremittance_native.base.UIStateHandler; -public class CustomProgressDialog extends android.support.v4.app.DialogFragment{ +public class CustomProgressDialog extends android.support.v4.app.DialogFragment { - private String message=""; + private String message = ""; TextView progressBarTxt; + UIStateHandler uiStateHandler; + private boolean isViewValid = false; @Override public Dialog onCreateDialog(Bundle savedInstanceState) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); - View view=getActivity().getLayoutInflater().inflate(R.layout.dialog_progressbar,null); - progressBarTxt=view.findViewById(R.id.customProgressDialogTextView); + View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_progressbar, null); + progressBarTxt = view.findViewById(R.id.customProgressDialogTextView); progressBarTxt.setText(message); builder.setView(view); setCancelable(false); - + uiStateHandler = new UIStateHandler(); return builder.create(); } @@ -34,15 +36,40 @@ public class CustomProgressDialog extends android.support.v4.app.DialogFragment{ progressBarTxt.setText(message); } - public void setMessage(String message) - { - this.message=message; + public void setMessage(String message) { + this.message = message; } @Override public void onDestroyView() { super.onDestroyView(); - this.message=""; + this.message = ""; + } + + @Override + public void onPause() { + super.onPause(); + isViewValid = false; + } + + @Override + public void onResume() { + super.onResume(); + isViewValid = true; + if (uiStateHandler != null) { + uiStateHandler.performPendingUITask(); + uiStateHandler.clearPendingTask(); + } + } + + @Override + public void dismiss() { + if (isViewValid) + super.dismiss(); + else { + if(uiStateHandler!=null) + uiStateHandler.enqueueUITask(super::dismiss); + } } public void updateMessage(String message) { diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/presenter/WalletStatementV2Presenter.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/presenter/WalletStatementV2Presenter.java index 3f5ac0e4..a32700ef 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/presenter/WalletStatementV2Presenter.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/presenter/WalletStatementV2Presenter.java @@ -8,6 +8,8 @@ import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverRe import com.gmeremit.online.gmeremittance_native.walletstatementV2.gateway.WalletStatmentV2Gateway; import com.gmeremit.online.gmeremittance_native.walletstatementV2.model.WalletStatementV2APIResponse; +import java.util.concurrent.TimeUnit; + import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.CompositeDisposable; import io.reactivex.schedulers.Schedulers; @@ -33,10 +35,11 @@ public class WalletStatementV2Presenter extends BasePresenter implements WalletS endDate=""; compositeDisposables.add( this.gateway.getWalletStatements(this.gateway.getAuth(), this.gateway.getUserID(),startDate,endDate) + .delaySubscription(2, TimeUnit.SECONDS) .doOnSubscribe(subs->view.showProgressBar(true,getStringfromStringId(R.string.processing_request_text))) - .doFinally(()->view.showProgressBar(false,"")) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) + .doFinally(()->view.showProgressBar(false,"")) .subscribeWith(new WalletStatementObserver())); } diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/view/WalletStatementV2Activity.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/view/WalletStatementV2Activity.java index 7cb33288..c7271545 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/view/WalletStatementV2Activity.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/walletstatementV2/view/WalletStatementV2Activity.java @@ -75,11 +75,9 @@ public class WalletStatementV2Activity extends BaseActivity implements WalletSta private void performDefaultAction(Bundle savedInstanceState) { - if (savedInstanceState == null) { + presenter.getWalletStatement(null,null); - } else { - } } @Override