@@ -71,18 +71,13 @@ public class BaseActivityBubble extends AppCompatActivity { | |||||
} | } | ||||
} | } | ||||
protected void showNetworkNotAvailableMessage(Context context) { | |||||
if (context instanceof LoginActivity) { | |||||
((LoginActivity) context).runOnUiThread(new Runnable() { | |||||
@Override public void run() { | |||||
final LayoutInflater inflater = ((LoginActivity) context).getLayoutInflater(); | |||||
final View layout = inflater.inflate(R.layout.toast_layout, (ViewGroup) ((LoginActivity) context).findViewById(R.id.custom_toast_container)); | |||||
final Toast toast = new Toast(context); | |||||
toast.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTAL, 0, 60); | |||||
toast.setView(layout); | |||||
toast.show(); | |||||
} | |||||
}); | |||||
} | |||||
protected void showNetworkNotAvailableMessage() { | |||||
final LayoutInflater inflater = getLayoutInflater(); | |||||
final View layout = inflater.inflate(R.layout.toast_layout, findViewById(R.id.custom_toast_container)); | |||||
final Toast toast = new Toast(this); | |||||
toast.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTAL, 0, 60); | |||||
toast.setView(layout); | |||||
toast.show(); | |||||
} | } | ||||
} | } |
@@ -41,6 +41,7 @@ public class LoginActivity extends BaseActivityBubble { | |||||
private static final String BUBBLE_NAME_KEY = "bubbleName"; | private static final String BUBBLE_NAME_KEY = "bubbleName"; | ||||
private static final String USER_NAME_KEY = "userName"; | private static final String USER_NAME_KEY = "userName"; | ||||
private static final String PASSWORD_KEY = "password"; | private static final String PASSWORD_KEY = "password"; | ||||
private static final String NO_INTERNET_CONNECTION = "no internet connection"; | |||||
@Override | @Override | ||||
@@ -175,11 +176,12 @@ public class LoginActivity extends BaseActivityBubble { | |||||
loginViewModel.getCertificate(LoginActivity.this).observe(LoginActivity.this, new Observer<byte[]>() { | loginViewModel.getCertificate(LoginActivity.this).observe(LoginActivity.this, new Observer<byte[]>() { | ||||
@Override public void onChanged(final byte[] encodedCertificate) { | @Override public void onChanged(final byte[] encodedCertificate) { | ||||
closeLoadingDialog(); | closeLoadingDialog(); | ||||
//TODO change implementation login function, function has be return certificate data | |||||
if (encodedCertificate.length == 0) { | if (encodedCertificate.length == 0) { | ||||
Toast.makeText(LoginActivity.this, getString(R.string.failed_bubble), Toast.LENGTH_SHORT).show(); | Toast.makeText(LoginActivity.this, getString(R.string.failed_bubble), Toast.LENGTH_SHORT).show(); | ||||
} | } | ||||
else if(encodedCertificate.length == 1){ | else if(encodedCertificate.length == 1){ | ||||
showNetworkNotAvailableMessage(LoginActivity.this); | |||||
showNetworkNotAvailableMessage(); | |||||
} | } | ||||
else { | else { | ||||
final Intent intent = KeyChain.createInstallIntent(); | final Intent intent = KeyChain.createInstallIntent(); | ||||
@@ -195,8 +197,8 @@ public class LoginActivity extends BaseActivityBubble { | |||||
break; | break; | ||||
case ERROR: | case ERROR: | ||||
closeLoadingDialog(); | closeLoadingDialog(); | ||||
if("no network".equals(userStatusResource.message)){ | |||||
showNetworkNotAvailableMessage(LoginActivity.this); | |||||
if(userStatusResource.message.equals(NO_INTERNET_CONNECTION)){ | |||||
showNetworkNotAvailableMessage(); | |||||
} | } | ||||
Toast.makeText(LoginActivity.this, getString(R.string.login_failed), Toast.LENGTH_SHORT).show(); | Toast.makeText(LoginActivity.this, getString(R.string.login_failed), Toast.LENGTH_SHORT).show(); | ||||
Log.d("TAG", "Error"); | Log.d("TAG", "Error"); | ||||
@@ -5,14 +5,9 @@ import android.content.Intent; | |||||
import android.os.Build; | import android.os.Build; | ||||
import android.provider.Settings; | import android.provider.Settings; | ||||
import android.provider.Settings.Secure; | import android.provider.Settings.Secure; | ||||
import android.view.Gravity; | |||||
import android.view.LayoutInflater; | |||||
import android.view.View; | |||||
import android.view.ViewGroup; | |||||
import android.widget.Toast; | import android.widget.Toast; | ||||
import com.wireguard.android.Application; | import com.wireguard.android.Application; | ||||
import com.wireguard.android.R; | import com.wireguard.android.R; | ||||
import com.wireguard.android.activity.LoginActivity; | |||||
import com.wireguard.android.activity.MainActivity; | import com.wireguard.android.activity.MainActivity; | ||||
import com.wireguard.android.api.ApiConstants; | import com.wireguard.android.api.ApiConstants; | ||||
import com.wireguard.android.api.network.ClientApi; | import com.wireguard.android.api.network.ClientApi; | ||||
@@ -67,7 +62,6 @@ public class DataRepository { | |||||
private TunnelManager tunnelManager; | private TunnelManager tunnelManager; | ||||
private ObservableTunnel pendingTunnel; | private ObservableTunnel pendingTunnel; | ||||
public static final String NO_INTERNET_CONNECTION = "no_internet_connection"; | |||||
private static final String SEPARATOR = ":"; | private static final String SEPARATOR = ":"; | ||||
private static final String SPACE = " "; | private static final String SPACE = " "; | ||||
private static final String DELIMITER = "\\A"; | private static final String DELIMITER = "\\A"; | ||||
@@ -75,6 +69,7 @@ public class DataRepository { | |||||
private static String BASE_URL = ""; | private static String BASE_URL = ""; | ||||
private static final String TUNNEL_NAME = "BubbleVPN"; | private static final String TUNNEL_NAME = "BubbleVPN"; | ||||
private static final int REQUEST_CODE_VPN_PERMISSION = 23491; | private static final int REQUEST_CODE_VPN_PERMISSION = 23491; | ||||
private static final String NO_INTERNET_CONNECTION = "no internet connection"; | |||||
private DataRepository(Context context, String url) { | private DataRepository(Context context, String url) { | ||||
BASE_URL = url; | BASE_URL = url; | ||||
@@ -471,7 +466,7 @@ public class DataRepository { | |||||
private void setErrorMessage(Throwable throwable , NetworkBoundStatusResource<User> liveData){ | private void setErrorMessage(Throwable throwable , NetworkBoundStatusResource<User> liveData){ | ||||
if( throwable instanceof UnknownHostException || throwable instanceof ConnectException){ | if( throwable instanceof UnknownHostException || throwable instanceof ConnectException){ | ||||
liveData.postMutableLiveData(StatusResource.error("no network")); | |||||
liveData.postMutableLiveData(StatusResource.error(NO_INTERNET_CONNECTION)); | |||||
} | } | ||||
} | } | ||||
} | } |