diff options
author | Stefan Niedermann <info@niedermann.it> | 2023-03-01 14:43:53 +0300 |
---|---|---|
committer | Stefan Niedermann <info@niedermann.it> | 2023-03-09 11:53:19 +0300 |
commit | 3ea462ca9e2ae18ba9d869125da8d8d07f2c7854 (patch) | |
tree | 30257c67768325d5972ec499a6eb41e11017ac6d /app/src/main/java/it/niedermann/nextcloud/deck/ui/exception | |
parent | bfab286b0bc6dbfac1211eec64d74b66b2ce1e6d (diff) |
refactor: Unidirectional data flow and single point of truth for current state
Signed-off-by: Stefan Niedermann <info@niedermann.it>
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/ui/exception')
-rw-r--r-- | app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/ExceptionDialogFragment.java | 2 | ||||
-rw-r--r-- | app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/tips/TipsAdapter.java | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/ExceptionDialogFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/ExceptionDialogFragment.java index 58e104973..a69ddf80e 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/ExceptionDialogFragment.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/ExceptionDialogFragment.java @@ -73,7 +73,7 @@ public class ExceptionDialogFragment extends AppCompatDialogFragment { .create(); } - public static DialogFragment newInstance(Throwable throwable, @Nullable Account account) { + public static DialogFragment newInstance(@NonNull Throwable throwable, @Nullable Account account) { final var fragment = new ExceptionDialogFragment(); final var args = new Bundle(); args.putSerializable(KEY_THROWABLE, throwable); diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/tips/TipsAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/tips/TipsAdapter.java index 1e52271e4..c57c80d24 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/tips/TipsAdapter.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/exception/tips/TipsAdapter.java @@ -18,6 +18,7 @@ import androidx.core.util.Consumer; import androidx.recyclerview.widget.RecyclerView; import com.nextcloud.android.sso.exceptions.NextcloudApiNotRespondingException; +import com.nextcloud.android.sso.exceptions.NextcloudFilesAppAccountNotFoundException; import com.nextcloud.android.sso.exceptions.NextcloudFilesAppNotSupportedException; import com.nextcloud.android.sso.exceptions.NextcloudHttpRequestFailedException; import com.nextcloud.android.sso.exceptions.TokenMismatchException; @@ -75,6 +76,11 @@ public class TipsAdapter extends RecyclerView.Adapter<TipsViewHolder> { add(R.string.error_dialog_tip_token_mismatch_retry); add(R.string.error_dialog_tip_clear_storage_might_help); add(R.string.error_dialog_tip_clear_storage, INTENT_APP_INFO); + } else if (throwable instanceof NextcloudFilesAppAccountNotFoundException) { + // TODO we can give better hints here... + add(R.string.error_dialog_tip_token_mismatch_retry); + add(R.string.error_dialog_tip_clear_storage_might_help); + add(R.string.error_dialog_tip_clear_storage, INTENT_APP_INFO); } else if (throwable instanceof NextcloudFilesAppNotSupportedException) { add(R.string.error_dialog_min_version, new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.nextcloud.client")) .putExtra(INTENT_EXTRA_BUTTON_TEXT, R.string.error_action_update_files_app)); |