Browse Source

Add Network Not found toast message.

pull/12/head
Mushegh Sahakyan 4 years ago
parent
commit
e78af60fb4
5 changed files with 66 additions and 4 deletions
  1. +17
    -4
      ui/src/main/java/com/wireguard/android/repository/DataRepository.java
  2. +10
    -0
      ui/src/main/res/drawable/custom_toast.xml
  3. +37
    -0
      ui/src/main/res/layout/toast_layout.xml
  4. +1
    -0
      ui/src/main/res/values/colors.xml
  5. +1
    -0
      ui/src/main/res/values/dimens.xml

+ 17
- 4
ui/src/main/java/com/wireguard/android/repository/DataRepository.java View File

@@ -6,10 +6,13 @@ import android.os.Build;
import android.provider.Settings;
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 com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.activity.LoginActivity;
import com.wireguard.android.activity.MainActivity;
import com.wireguard.android.api.ApiConstants;
import com.wireguard.android.api.network.ClientApi;
@@ -382,6 +385,7 @@ public class DataRepository {
.build();
client.newCall(request).enqueue(new Callback() {
@Override public void onFailure(final okhttp3.Call call, final IOException e) {
showNetworkNotAvailableMessage(e,context);
liveData.postValue(new byte[]{});
}

@@ -458,9 +462,18 @@ public class DataRepository {

private void showNetworkNotAvailableMessage(Throwable throwable , Context context){
if( throwable instanceof UnknownHostException || throwable instanceof ConnectException){
Toast toast = Toast.makeText(context,context.getString(R.string.network_not_found),Toast.LENGTH_LONG);
toast.setGravity(Gravity.TOP | Gravity.START,90,60);
toast.show();
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();
}
});
}
}
}
}

+ 10
- 0
ui/src/main/res/drawable/custom_toast.xml View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item>
<shape android:shape="rectangle">
<gradient android:endColor="@color/toast_color" android:startColor="@color/toast_color" />
<corners android:radius="100dp" />
</shape>
</item>
</selector>

+ 37
- 0
ui/src/main/res/layout/toast_layout.xml View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>

<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">

<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/custom_toast_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/custom_toast"
android:padding="8dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">

<TextView
android:id="@+id/text"
android:textSize="@dimen/toast_text_size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_top"
android:layout_marginTop="@dimen/margin_start_and_end"
android:layout_marginEnd="@dimen/margin_top"
android:paddingBottom="10dp"
android:layout_marginBottom="@dimen/margin_top"
android:text="@string/network_not_found"
android:textColor="#FFF"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

+ 1
- 0
ui/src/main/res/values/colors.xml View File

@@ -42,4 +42,5 @@
<color name="sign_in_disable_end_color">#DF9BDF</color>
<color name="sign_in_enable_start_color">#EC2F91</color>
<color name="sign_in_enable_end_color">#C037C0</color>
<color name="toast_color">#4E4E4E</color>
</resources>

+ 1
- 0
ui/src/main/res/values/dimens.xml View File

@@ -16,4 +16,5 @@
<dimen name="edit_text_height">55dp</dimen>
<dimen name="bubble_connection_title_text_size">30sp</dimen>
<dimen name="icons_size">90dp</dimen>
<dimen name="toast_text_size">14sp</dimen>
</resources>

Loading…
Cancel
Save