Use native snackbar on map view
This commit is contained in:
		
							parent
							
								
									b21d948ecb
								
							
						
					
					
						commit
						a7b6d1f1d8
					
				|  | @ -8,11 +8,11 @@ import android.location.LocationListener; | ||||||
| import android.os.Build; | import android.os.Build; | ||||||
| import android.os.Bundle; | import android.os.Bundle; | ||||||
| import android.support.annotation.NonNull; | import android.support.annotation.NonNull; | ||||||
|  | import android.support.design.widget.CoordinatorLayout; | ||||||
| import android.support.design.widget.FloatingActionButton; | import android.support.design.widget.FloatingActionButton; | ||||||
|  | import android.support.design.widget.Snackbar; | ||||||
| import android.view.View; | import android.view.View; | ||||||
| import android.widget.Button; | import android.widget.Button; | ||||||
| import android.widget.RelativeLayout; |  | ||||||
| import android.widget.TextView; |  | ||||||
| 
 | 
 | ||||||
| import org.osmdroid.api.IGeoPoint; | import org.osmdroid.api.IGeoPoint; | ||||||
| import org.osmdroid.util.GeoPoint; | import org.osmdroid.util.GeoPoint; | ||||||
|  | @ -25,7 +25,7 @@ import eu.siacs.conversations.ui.widget.MyLocation; | ||||||
| 
 | 
 | ||||||
| public class ShareLocationActivity extends LocationActivity implements LocationListener { | public class ShareLocationActivity extends LocationActivity implements LocationListener { | ||||||
| 
 | 
 | ||||||
| 	private RelativeLayout snackBar; | 	private Snackbar snackBar; | ||||||
| 	private boolean marker_fixed_to_loc = false; | 	private boolean marker_fixed_to_loc = false; | ||||||
| 	private static final String KEY_FIXED_TO_LOC = "fixed_to_loc"; | 	private static final String KEY_FIXED_TO_LOC = "fixed_to_loc"; | ||||||
| 	private Boolean noAskAgain = false; | 	private Boolean noAskAgain = false; | ||||||
|  | @ -62,10 +62,10 @@ public class ShareLocationActivity extends LocationActivity implements LocationL | ||||||
| 			finish(); | 			finish(); | ||||||
| 		}); | 		}); | ||||||
| 
 | 
 | ||||||
| 		// Setup the snackbar | 		final CoordinatorLayout snackBarCoordinator = findViewById(R.id.snackbarCoordinator); | ||||||
| 		this.snackBar = findViewById(R.id.snackbar); | 		if (snackBarCoordinator != null) { | ||||||
| 		final TextView snackbarAction = findViewById(R.id.snackbar_action); | 			this.snackBar = Snackbar.make(snackBarCoordinator, R.string.location_disabled, Snackbar.LENGTH_INDEFINITE); | ||||||
| 		snackbarAction.setOnClickListener(view -> { | 			snackBar.setAction(R.string.enable, view -> { | ||||||
| 				if (isLocationEnabledAndAllowed()) { | 				if (isLocationEnabledAndAllowed()) { | ||||||
| 					updateUi(); | 					updateUi(); | ||||||
| 				} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && !hasLocationPermissions()) { | 				} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && !hasLocationPermissions()) { | ||||||
|  | @ -74,6 +74,7 @@ public class ShareLocationActivity extends LocationActivity implements LocationL | ||||||
| 					startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS)); | 					startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS)); | ||||||
| 				} | 				} | ||||||
| 			}); | 			}); | ||||||
|  | 		} | ||||||
| 
 | 
 | ||||||
| 		// Setup the share button | 		// Setup the share button | ||||||
| 		final Button shareButton = findViewById(R.id.share_button); | 		final Button shareButton = findViewById(R.id.share_button); | ||||||
|  | @ -223,9 +224,9 @@ public class ShareLocationActivity extends LocationActivity implements LocationL | ||||||
| 	@Override | 	@Override | ||||||
| 	protected void updateUi() { | 	protected void updateUi() { | ||||||
| 		if (!hasLocationFeature || noAskAgain || isLocationEnabledAndAllowed()) { | 		if (!hasLocationFeature || noAskAgain || isLocationEnabledAndAllowed()) { | ||||||
| 			this.snackBar.setVisibility(View.GONE); | 			this.snackBar.dismiss(); | ||||||
| 		} else { | 		} else { | ||||||
| 			this.snackBar.setVisibility(View.VISIBLE); | 			this.snackBar.show(); | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		// Setup the fab button | 		// Setup the fab button | ||||||
|  |  | ||||||
|  | @ -1,5 +1,10 @@ | ||||||
| <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" | <android.support.design.widget.CoordinatorLayout | ||||||
|  |     android:id="@+id/snackbarCoordinator" | ||||||
|  |     xmlns:android="http://schemas.android.com/apk/res/android" | ||||||
|     xmlns:tools="http://schemas.android.com/tools" |     xmlns:tools="http://schemas.android.com/tools" | ||||||
|  |     android:layout_width="match_parent" | ||||||
|  |     android:layout_height="match_parent"> | ||||||
|  |     <RelativeLayout | ||||||
|         android:layout_width="match_parent" |         android:layout_width="match_parent" | ||||||
|         android:layout_height="match_parent" |         android:layout_height="match_parent" | ||||||
|         tools:context=".ui.ShareLocationActivity"> |         tools:context=".ui.ShareLocationActivity"> | ||||||
|  | @ -11,45 +16,6 @@ | ||||||
|             android:layout_height="match_parent" |             android:layout_height="match_parent" | ||||||
|             android:layout_above="@+id/button_bar"/> |             android:layout_above="@+id/button_bar"/> | ||||||
| 
 | 
 | ||||||
|     <RelativeLayout |  | ||||||
|         android:id="@+id/snackbar" |  | ||||||
|         android:layout_width="match_parent" |  | ||||||
|         android:layout_height="wrap_content" |  | ||||||
|         android:layout_marginTop="4dp" |  | ||||||
|         android:layout_marginBottom="4dp" |  | ||||||
|         android:layout_marginLeft="8dp" |  | ||||||
|         android:layout_marginRight="8dp" |  | ||||||
|         android:layout_above="@+id/button_bar" |  | ||||||
|         android:background="@drawable/snackbar" |  | ||||||
|         android:minHeight="48dp" |  | ||||||
|         android:visibility="visible"> |  | ||||||
| 
 |  | ||||||
|         <TextView |  | ||||||
|             android:layout_width="wrap_content" |  | ||||||
|             android:layout_height="wrap_content" |  | ||||||
|             android:layout_alignParentStart="true" |  | ||||||
|             android:layout_centerVertical="true" |  | ||||||
|             android:layout_toStartOf="@+id/snackbar_action" |  | ||||||
|             android:paddingStart="24dp" |  | ||||||
|             android:text="@string/location_disabled" |  | ||||||
|             tools:ignore="RtlSymmetry" |  | ||||||
|             android:textAppearance="@style/TextAppearance.Conversations.Body1.OnDark"/> |  | ||||||
|         <TextView |  | ||||||
|             android:id="@+id/snackbar_action" |  | ||||||
|             android:layout_width="wrap_content" |  | ||||||
|             android:layout_height="wrap_content" |  | ||||||
|             android:paddingBottom="16dp" |  | ||||||
|             android:paddingLeft="24dp" |  | ||||||
|             android:paddingRight="24dp" |  | ||||||
|             android:paddingTop="16dp" |  | ||||||
|             android:textAllCaps="true" |  | ||||||
|             android:textStyle="bold" |  | ||||||
|             android:text="@string/enable" |  | ||||||
|             android:layout_alignParentTop="true" |  | ||||||
|             android:layout_alignParentEnd="true" |  | ||||||
|             android:textAppearance="@style/TextAppearance.Conversations.Body1.OnDark" /> |  | ||||||
|     </RelativeLayout> |  | ||||||
| 
 |  | ||||||
|         <LinearLayout |         <LinearLayout | ||||||
|             android:id="@+id/button_bar" |             android:id="@+id/button_bar" | ||||||
|             android:layout_width="wrap_content" |             android:layout_width="wrap_content" | ||||||
|  | @ -97,3 +63,4 @@ | ||||||
|             android:layout_margin="16dp" /> |             android:layout_margin="16dp" /> | ||||||
| 
 | 
 | ||||||
|     </RelativeLayout> |     </RelativeLayout> | ||||||
|  | </android.support.design.widget.CoordinatorLayout> | ||||||
		Loading…
	
		Reference in New Issue
	
	 Sam Whited
						Sam Whited