Fix su open e close del dialog progress

This commit is contained in:
Giuseppe Scorrano 2022-02-28 17:01:11 +01:00
parent 6071b3eb44
commit 0a6d01628f
2 changed files with 25 additions and 18 deletions

View File

@ -21,6 +21,8 @@ public class BaseActivity extends AppCompatActivity {
@Inject
public DialogProgressView mCurrentProgress;
private boolean progressOpened;
@Nullable
@Override
public View onCreateView(@Nullable View parent, @NonNull String name, @NonNull Context context, @NonNull AttributeSet attrs) {
@ -56,21 +58,23 @@ public class BaseActivity extends AppCompatActivity {
protected void openProgress() {
runOnUiThread(() -> {
BarcodeManager.disable();
if (!this.mCurrentProgress.isVisible() && !this.mCurrentProgress.isAdded()) {
BarcodeManager.disable();
if (!progressOpened) {
this.progressOpened = true;
runOnUiThread(() -> {
this.mCurrentProgress.show(getSupportFragmentManager(), "tag");
}
});
});
}
}
protected void closeProgress() {
runOnUiThread(() -> {
BarcodeManager.enable();
if (mCurrentProgress.isVisible()) {
BarcodeManager.enable();
if (progressOpened) {
this.progressOpened = false;
runOnUiThread(() -> {
mCurrentProgress.dismiss();
}
});
});
}
}

View File

@ -29,6 +29,7 @@ public abstract class BaseFragment extends Fragment {
protected ElevatedToolbar mToolbar;
protected final List<Runnable> mOnPreDestroyList = new ArrayList<>();
private boolean progressOpened;
public void setScrollToolbar(ElevatedToolbar toolbar) {
@ -81,19 +82,21 @@ public abstract class BaseFragment extends Fragment {
}
protected void openProgress() {
requireActivity().runOnUiThread(() -> {
if (!this.mCurrentProgress.isVisible() && !this.mCurrentProgress.isAdded()) {
if (!progressOpened) {
this.progressOpened = true;
requireActivity().runOnUiThread(() -> {
this.mCurrentProgress.show(requireActivity().getSupportFragmentManager(), "tag");
}
});
});
}
}
protected void closeProgress() {
requireActivity().runOnUiThread(() -> {
if (mCurrentProgress.isVisible()) {
if (progressOpened) {
this.progressOpened = false;
requireActivity().runOnUiThread(() -> {
mCurrentProgress.dismiss();
}
});
});
}
}
protected void popMe() {