* Fix log reporting for release builds
* Fix logs for release builds
* wip
* Clean up the branch to exclude unrelated changes
* With java docs
* Uncomment quiz checker
* Check for external storage permissions before sending logs
* With more java docs
* Fix crash while zipping log files
* Do not log token and cookies
* Add instruction to restart app
* improve the algorithm for checking if the image is dark.
ImageUtils.java: algorithm used previously gave the 'TOO DARK' message for images that were perfectly valid.
The modified algorithm solves this problem.
* Clean up the code
* Added permission for Dexter, the runtime permission handling library
* [Preparing fir issue #1773] Added a utility function which would take the user to app settings screen where he could manually give us the required permission
* Added an alert dialog with positive and negative callback [Preparing fir issue #1773]
* Improvements in the way External Storage Permission is handled in MultipleShareActivity[Bug fix#1697]
1. Used dexter to handle the external storage permission
2. Behaviour changes : When user tries to share(uppload) images to commons via MultipleShareActivity, following decision tree is followed
a. If the app has permission for external storage, normal upload operation is followed
b. If the app does not has the permission for external storage, dexter is used to ask for the same
c. If the user gives us the required permission, normal upload flow is proceeded
d. If the doesnot gives us the required permission a rationale dialog is shown with the appropriate message to let him know why we need the permission
e. If he presses okay, steps a-c are followed and if he presses cancel, we close the app.
f. If while asking for permission, the user chooses never ask again, then next time he tries to upload an image via MSA, the rational dialog follows the app setting screen where he could manually give us the required permission and the onActivityResult of same is handled
* Added a Constants class to handle request and result codes from one place and other related constants common to the all app elements
* replaced hardcoded strings ok and cancel in DialogUtil to string resources
* init permission rationale dialog in activities onCreate
* Code formatting, updated access modifiers wherever required, added javadocs for new methods created
* *shifted constants to app class
*Added JavaDocs in PermissionUtils
* removed class REQUEST_CODES from CommonsApplication and instead put the enclosing constants in the App class itself
* Create utility class for contribution process
* implement method to save five from given URİ
* Add file utilities for directory checks
* Add ContributionUtils for saving file during upload
* Change method call acordingly with handleImagePicked() method
* Call method to save file temproarily when a photo to upload is chosen from contributions list.
* Call method to save file temproarily when a photo to upload is chosen from nearby list and map
* Arrange method call
* Write a method to save file temporarily during upload process. It will save the file to a internal path and it will be deleted by another method after upload process is done.
* Add a method to save a file to a given path from a content provider Uri
* On openAssetFileDescriptor method, use URi from temporarily saved file, instead of Contributions.getLocalUri which was Uri from content provider
* Edit uploadContribution method so that it will use FileInputStream from temporarily saved file, insdeat of the Uri from content provider.
* Make it work
* Code cleanup
* Add directory cleaner method
* Call temp directory cleaner method at the end of uplpoad process
* Use FileInputStream insted
* Add directory cleaner method
* Add file removal method
* Use external directory instead
* Make destination file name flexible
* Make it work with share action coming from another activity
* Make it work for Multiple hare Activity
* Code cleanup
* Solve camera issue
* Fix camera crash
* Cleanup
* Revert change of commenting out posibly useles code, because I am not sure if it is useless or not. Requires discussion
* Use timestamp in temoorary file names, so that we wont never create same file and access old file reference. It was a weird problem though
* Code cleanup
* Add nullable annotation to handleImagePicked method uri parameter
* Add Nullable anotation to method
* Code cleanup
* Bugfix: use uri.getPath() instead uri.toString
* Remove unecesarry file saving operation, which was added accidentally
* Fix travis fail
* Remove temp file if upload gets failed and file is still there
* Code cleanup:Remove unused parameters from removeTempFile method
* Empty temp directory on app create, in case some of files are still there
* Add null check to array to prevent NPE on first run
* Fix multiple uploads bug
* Remove file if upload is succeed
* Add external storage utility methods
* Check external file permission before saving files temporarily
* finish activity if permission is not granted
* Add log lines
* Remove files even if user decides to go back without sharing
* Add easy null check
* Change storage permission settings in singe upload fragment too
* Finish app if permission is not granted
* Code optimisation
* Remove temp file if upload process never is finalised on activity stop
* Bugfix maybe contribution is never created
* Fix travis build
* Add new activity to manifest
* Create review activity layout base
* Add a new menu item to drawer for peer review
* Add a top menu with randomizer icon to review activity
* Add strings for review button
* Add activity to ActivityBuilderModule for injection
* Add a new drawer item to start review acitivty
* Create base of the Review Activity
* Add fragment pager
* Add new fragment for injection
* Create a fragment pager layout
* Wikimedia hackathon 2018 (#1533)
* First draft of fn to get random recent image
* Use log entries for requests to beta, try to connect refresh button
FIXME: runs http request on main thread, breaks
* Tweak button connection
* Add ReviewController class
* Fix fragments
* Wmhack2018 (#1534)
* tiny fixes
* Load pictures into activities
* Re-use same class for all review fragments (#1537)
And try to add pager indicator
* [WIP] category check
* [WIP] add on-click actions to ReviewActivity
* [WIP] add SendThankTask
* Make it beautiful
* Use standalone category extraction code in MediaDataExtractor
* Add categories to category review page
* Add dependency for MaterialShowcase
* Add actionview class to get a reference to material showcase
* Create a NearbyMaterialShowcaseSequence class
* Apply sequence steps
* Add first three steps of nearby showcase
* Add sequence id constants to make sure they will be displayed only once
* Add last step of sequence to explain plus fab
* Create an object to prevent customize all sequences every time
* Fix typo
* Code cleanup
* Add strings to strings.xml
* Code cleanup
* Revert irrelevant change
* Revert irrelevant change
* Remove showcaseview for recenter button
* Use single showcaseView instead of sequence
* Add single showcase view insted of sequence to be able to edit text style
* Make sure it will be displayed only once
* Cleanup
* Update strings
* Change dismiss text style
* Integrate API for displaying featured images
* Add pagination and refactor code so that it can be reused for category images
* Add license info to the images
* Fix author view
* Remove unused values
* Fix minor issues with featured images
* Fix null license url issue
* Remove some log lines
* Fix back navigation issue
* fix tests
* fix test inits
* Gracefully handling various error situations
* Added java docs
* Fixed bug #1399
* Changed visibility from visible to gone
* Changed behaviour according to review
* Changed bottom sheet visibility from visible to gone
* Fix memory leak causing usage of activity as context
* Made the following changes:
->Added OpenCV library to the project
->Added functionality to detect if an image being uploaded is too dark
->Added functionality to detect if an image being uploaded is blurred
* Made corrections and changes based on gradle checkstyle requirements
* Updated gitignore to remove binary files related to OpenCV from project
* Image blurriness detection was undone. Images are checked only for being too dark now
* Removed OpenCV documentation folder containing a lot of html files
* Removed unnecessary buildScript usage in build.gradle file for opencv library and also added abi splits
* Removed OpenCV library usages and references from project
* Removed OpenCV library folder from project