Full mode R8 configurations are hindering the working of the app severly.
So, disable the same.
Also, ensure the POJO classes used to hold the API responses aren't optimized
so that we could use the response properly without any issues.
* Makes depicted place and category items unselectable for nearby place
* UploadCategoriesFragmentUnitTests.kt fixes and javadoc addition
* comment fix
* Fixes tests and hidden category appearing and dissapearing issue
* bug fix 5240
Signed-off-by: Zeeshan Alam <zeeshan.alam@fmr.com>
* Incorporated review comments. Remove method MediaDetailPagerFragment.newInstance(false, false, 0) which was called only in unit test
* Added Required empty public constructor
---------
Signed-off-by: Zeeshan Alam <zeeshan.alam@fmr.com>
* LocationPickerActivity: fix crash on setting location for pictures with no EXIF location
* strings.xml: remove extra string introduced
* optimise constants
* LocationPickerActivity: request for permission only on tapping target icon
* remove newline
* handle location permissions using LocationPermissionsHelper
* add null check to prevent crash
* LocationPickerActivity: fix crash on setting location for pictures with no EXIF location
* strings.xml: remove extra string introduced
* optimise constants
* LocationPickerActivity: request for permission only on tapping target icon
* remove newline
* handle location permissions using LocationPermissionsHelper
* fix stuck uploads
* automate retries for failed uploads once the user returns to the app
* UploadWorker: modify PendingIntent flag and Android version code
* MainActivity: remove automatic retry logic
* Revert "MainActivity: remove automatic retry logic"
* set work request as expedited
* handle notification for foreground service on older versions of Android
* set backoff criteria for work requests
* enqueue failed uploads for a retry
* revert "enqueue failed uploads for a retry"
* limit the number of retries for a failed upload
* add a popup that suggests users to switch to unrestricted battery usage mode
* take users to the battery settings page on the first big upload
* take users to battery optimisation settings page using the standard intent
* add instructions to the battery optimisation settings popup
* remove the first usage of fr.free.nrw.commons from the popup
* comply with the wording in the OS settings
* modify battery optimisation popup instructions, add comments and rename firstBigUploadSet
* add filename to the retry log statement
* update database version
* make battery optimisation dialog appear only on Android 6 and above
* use foreground service instead of setting work request as expedited
* fix retried uploads stuck in queued state
* use MIN_BACKOFF_MILLIS constant instead of using the number 10 and add comments
* factorise the creation of the new OneTimeWorkRequest at one place
* ensure work requests are in accordance with the unit tests
* forbid retries for images which have got uploaded without caption
* add a TODO for the suggestion related to retries
* revert "forbid retries for images which have got uploaded without caption"
* Revert "Revert a1b6973 until we find out why it uses OPEN_DOCUMENT by default on fresh install"
This reverts commit 7ce3b7ebb1.
* Potential fix for get_content picker being used in first run
The initial state of the 'openDocumentPhotoPickerPref' seems to be incorrect
during a fresh install on some devices.
Try to ensure we always use the proper initial state by propagating the default
to the preference access code.
This hopefully fixes#5274
Merging as this is a great improvement, additional issues/bugs can be filed as GitHub issues.
* fix in-app camera location loss
* fix failing unit tests
* UploadMediaDetailFragmentUnitTest: modify testOnActivityResultAddLocationDialog to have null location
* reintroduce removed variable
* enable prePopulateCategoriesAndDepictionsBy for current user location
* add relevant comment and fix failing test
* modify dialog and disable location tag redaction from EXIF
* modify in-app camera dialog flow and change location to inAppPictureLocation
* change location to inAppPictureLocation
* fix location flow
* preferences.xml: remove redundant default value
* inform users about location loss happening for first upload
* FileProcessor.kt: remove commented-out code
* prevent user location from getting attached to images with no EXIF location in normal and custom selector
* handle onPermissionDenied for location permission
* remove last location when the user turns the GPS off
* disable photo picker and in app camera preferences in settings for logged-out users
* remove debug statements and add toast inside runnables
* photo picker: toggle behaviour of switch and adjust phrasing for better UX
The enable state used to trigger the GET_CONTENT intent. Alter the flow
such that the GET_CONTENT intent is triggered when switch is disabled.
Adjust default value and other parts of code naming to reflect this.
The existing phrasing had a lot of tech jargon in it which could
result in the non-technical users being confused. Tweak the phrasing
to avoid such phrases.
The documentation in the website could also use some follow up
improvements.
* Adjust strings to clearly convey that location loss is a "risk"
* Removed comma separator from file descriptions
* Removed a redundant line that deleted the last comma of the descriptions
* Added a line to formatDescriptions that replaces every instance of "}}, " with "}}" to remove the comma between descriptions.
* Specified separator as an empty string instead of default value ", " for .joinToString method. Deleted previous fix using .replace method.
* Restored buffer.replace() in updateDescription