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!