mirror of
				https://github.com/commons-app/apps-android-commons.git
				synced 2025-10-30 22:34:02 +01:00 
			
		
		
		
	Fixed merge conflicts
This commit is contained in:
		
							parent
							
								
									fece67e0f9
								
							
						
					
					
						commit
						7dd3dced35
					
				
					 42 changed files with 138 additions and 64 deletions
				
			
		|  | @ -2,8 +2,10 @@ package fr.free.nrw.commons.contributions; | |||
| 
 | ||||
| import android.content.Intent; | ||||
| import android.content.SharedPreferences; | ||||
| import android.content.pm.PackageManager; | ||||
| import android.os.Build; | ||||
| import android.os.Bundle; | ||||
| import android.preference.PreferenceManager; | ||||
| import android.support.annotation.NonNull; | ||||
| import android.support.v4.app.Fragment; | ||||
| import android.support.v4.content.ContextCompat; | ||||
|  | @ -27,6 +29,7 @@ import fr.free.nrw.commons.nearby.NearbyActivity; | |||
| import timber.log.Timber; | ||||
| 
 | ||||
| import static android.Manifest.permission.READ_EXTERNAL_STORAGE; | ||||
| import static android.Manifest.permission.WRITE_EXTERNAL_STORAGE; | ||||
| import static android.app.Activity.RESULT_OK; | ||||
| import static android.content.Context.MODE_PRIVATE; | ||||
| import static android.content.pm.PackageManager.PERMISSION_GRANTED; | ||||
|  | @ -34,9 +37,12 @@ import static android.view.View.GONE; | |||
| 
 | ||||
| public class ContributionsListFragment extends Fragment { | ||||
| 
 | ||||
|     @BindView(R.id.contributionsList) GridView contributionsList; | ||||
|     @BindView(R.id.waitingMessage) TextView waitingMessage; | ||||
|     @BindView(R.id.emptyMessage) TextView emptyMessage; | ||||
|     @BindView(R.id.contributionsList) | ||||
|     GridView contributionsList; | ||||
|     @BindView(R.id.waitingMessage) | ||||
|     TextView waitingMessage; | ||||
|     @BindView(R.id.emptyMessage) | ||||
|     TextView emptyMessage; | ||||
|     private ContributionController controller; | ||||
| 
 | ||||
|     @Override | ||||
|  | @ -117,7 +123,7 @@ public class ContributionsListFragment extends Fragment { | |||
|                             // sees the explanation, try again to request the permission. | ||||
| 
 | ||||
|                             new AlertDialog.Builder(getActivity()) | ||||
|                                     .setMessage(getString(R.string.storage_permission_rationale)) | ||||
|                                     .setMessage(getString(R.string.read_storage_permission_rationale)) | ||||
|                                     .setPositiveButton("OK", (dialog, which) -> { | ||||
|                                         requestPermissions(new String[]{READ_EXTERNAL_STORAGE}, 1); | ||||
|                                         dialog.dismiss(); | ||||
|  | @ -149,7 +155,42 @@ public class ContributionsListFragment extends Fragment { | |||
| 
 | ||||
|                 return true; | ||||
|             case R.id.menu_from_camera: | ||||
|                 controller.startCameraCapture(); | ||||
|                 SharedPreferences sharedPref = PreferenceManager | ||||
|                         .getDefaultSharedPreferences(CommonsApplication.getInstance()); | ||||
|                 boolean useExtStorage = sharedPref.getBoolean("useExternalStorage", true); | ||||
|                 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && useExtStorage) { | ||||
|                     // Here, thisActivity is the current activity | ||||
|                     if (ContextCompat.checkSelfPermission(getActivity(), WRITE_EXTERNAL_STORAGE) | ||||
|                             != PackageManager.PERMISSION_GRANTED) { | ||||
|                         if (shouldShowRequestPermissionRationale(WRITE_EXTERNAL_STORAGE)) { | ||||
|                             // Show an explanation to the user *asynchronously* -- don't block | ||||
|                             // this thread waiting for the user's response! After the user | ||||
|                             // sees the explanation, try again to request the permission. | ||||
|                             new AlertDialog.Builder(getActivity()) | ||||
|                                     .setMessage(getString(R.string.write_storage_permission_rationale)) | ||||
|                                     .setPositiveButton("OK", (dialog, which) -> { | ||||
|                                         requestPermissions(new String[]{WRITE_EXTERNAL_STORAGE}, 3); | ||||
|                                         dialog.dismiss(); | ||||
|                                     }) | ||||
|                                     .setNegativeButton("Cancel", null) | ||||
|                                     .create() | ||||
|                                     .show(); | ||||
|                         } else { | ||||
|                             // No explanation needed, we can request the permission. | ||||
|                             requestPermissions(new String[]{WRITE_EXTERNAL_STORAGE}, | ||||
|                                     3); | ||||
|                             // MY_PERMISSIONS_WRITE_EXTERNAL_STORAGE is an | ||||
|                             // app-defined int constant. The callback method gets the | ||||
|                             // result of the request. | ||||
|                         } | ||||
|                     } else { | ||||
|                         controller.startCameraCapture(); | ||||
|                         return true; | ||||
|                     } | ||||
|                 } else { | ||||
|                     controller.startCameraCapture(); | ||||
|                     return true; | ||||
|                 } | ||||
|                 return true; | ||||
|             default: | ||||
|                 return super.onOptionsItemSelected(item); | ||||
|  | @ -180,6 +221,12 @@ public class ContributionsListFragment extends Fragment { | |||
|                 } | ||||
|             } | ||||
|             break; | ||||
|             case 3: { | ||||
|                 if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { | ||||
|                     Timber.d("Call controller.startCameraCapture()"); | ||||
|                     controller.startCameraCapture(); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Paul Hawke
						Paul Hawke