From a9fc78581c964725047f37159218ec23155846cb Mon Sep 17 00:00:00 2001 From: O01eg Date: Wed, 10 Jul 2019 21:26:47 +0300 Subject: [PATCH] Show different error if failed to connect to instance domain. --- .../java/app/fedilab/android/activities/LoginActivity.java | 2 ++ app/src/main/java/app/fedilab/android/client/API.java | 2 ++ .../fedilab/android/client/Entities/InstanceNodeInfo.java | 7 +++++++ app/src/main/res/values/strings.xml | 1 + 4 files changed, 12 insertions(+) diff --git a/app/src/main/java/app/fedilab/android/activities/LoginActivity.java b/app/src/main/java/app/fedilab/android/activities/LoginActivity.java index 4caf3b5c1..595d4b2fc 100644 --- a/app/src/main/java/app/fedilab/android/activities/LoginActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/LoginActivity.java @@ -337,6 +337,8 @@ public class LoginActivity extends BaseActivity { instance_chosen.setText(instance); } } + }else if(instanceNodeInfo != null && instanceNodeInfo.isConnectionError()){ + Toasty.error(LoginActivity.this,getString(R.string.connect_error), Toast.LENGTH_LONG).show(); }else{ Toasty.error(LoginActivity.this,getString(R.string.client_error), Toast.LENGTH_LONG).show(); } diff --git a/app/src/main/java/app/fedilab/android/client/API.java b/app/src/main/java/app/fedilab/android/client/API.java index 4a94da019..e1262c07e 100644 --- a/app/src/main/java/app/fedilab/android/client/API.java +++ b/app/src/main/java/app/fedilab/android/client/API.java @@ -650,6 +650,7 @@ public class API { setDefaultError(e); } } catch (IOException e) { + instanceNodeInfo.setConnectionError(true); e.printStackTrace(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); @@ -663,6 +664,7 @@ public class API { instanceNodeInfo.setVersion(jsonObject.getString("version")); instanceNodeInfo.setOpenRegistrations(true); } catch (IOException e1) { + instanceNodeInfo.setConnectionError(true); e1.printStackTrace(); } catch (NoSuchAlgorithmException e1) { e1.printStackTrace(); diff --git a/app/src/main/java/app/fedilab/android/client/Entities/InstanceNodeInfo.java b/app/src/main/java/app/fedilab/android/client/Entities/InstanceNodeInfo.java index 79fd2efb1..cba5e3d9f 100644 --- a/app/src/main/java/app/fedilab/android/client/Entities/InstanceNodeInfo.java +++ b/app/src/main/java/app/fedilab/android/client/Entities/InstanceNodeInfo.java @@ -19,6 +19,7 @@ public class InstanceNodeInfo { private String name; private String version; private boolean openRegistrations; + private boolean connectionError; public String getName() { return name; @@ -43,4 +44,10 @@ public class InstanceNodeInfo { public void setOpenRegistrations(boolean openRegistrations) { this.openRegistrations = openRegistrations; } + + public boolean isConnectionError() { return connectionError; } + + public void setConnectionError(boolean connectionError) { + this.connectionError = connectionError; + } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 581c7bd17..4a5664f6c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -268,6 +268,7 @@ Pinned Unable to get client id! + Unable to connect to instance domain! No Internet connection! The account was blocked! The account is no longer blocked!