* Do not use an image array to store all bitmap pixels at once
* Extract image preprocessing to a different service and use computation thread
* Add java docs
* Cleanup code to remove temp file logic
* Add logs in upload flow
* Fix tests
* Fix more tests
* Use wrapper for accessing shared preferences across the app
* Use Json kv store for storing place object
* Fix tests
* Fix test failure
* Fix UI tests
* Added new upload activity that receives shared files from the gallery. Cards show and hide, plus titles are correct. Displayed thumbnails for the shared images
* Better handling of the view paging plus error handling for required fields.
* Code cleanup to make things more readable.
* Extracted a model from the category search fragment that can possibly be shared with the new upload activity.
* Added category selection to the combined upload screen.
* Cleanup before the home-stretch on the GUI.
* Adding license selection.
* Fixed build warnings + cleanup
* Start to support the dark theme.
* Work in progress to add quality checking.
* Fixing merge.
* GPSExtractor: optimized away the EXifInterface object
* Implemented submit functionality, temporarily fixed jacoco crash by disabling DUMMY UploadView object.
* Implemented uploading of categories along with the picture. The category screen now displays GPS and recent categories when nothing is searched.
* Implemented caching of files. Did some work on picture quality detection.
* Implemented too dark picture detection.
* Added a side card for zoom and map buttons along with pretty animations for stuff.
* Added duplicate image on commons checking and fixed files not getting proper file extensions in several places.
* Added support for map button and switched in-app upload buttons to UploadActivity
* Pretty pretty animations!
* Implemented zoom functionality for th background image. Just pinching on the image works instead of requiring buttons.
* Added multi-language descriptions with categories by region.
* Reimplemented the duplicate title checker and implemented a check against putting the same language twice in the description.
* Javadocs for Description and UploadPresenter, plus some general cleanup.
* Small code changes.
* Implemented login checks for the Upload screen.
* Implement receiving data from Nearby.
* Feature/permissions library (#1855)
* 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
* Made Codacy happy.
* Abstarcted permission acquisition into new class DexterPermissionObtainer
* Fixed Nearby upload detection
* Migrated bad picture detection from AsyncTask to RxJava.
* Removed ShareActivity and related dead code
* Removed dead or duplicate code from FileProcessor
* Added info button to title EditText
* Fixed the add description button not disappearing.
Added "Starting Upload" toast.
Added link to the license on final screen.
Made it so that the map button is hidden when image lacks gps coords.
* Support in app multiple uploads
* Minor changes to fix build
* Changes to fix pending issues with upload flow
* Fix display of similar image fragment
* When uploading several files at once the date is missing #1854 (#2)
* Bug fix issue #1854
* updated ContributionsDao to save create date, which it was not doing currently [it was instead saving current date]
* UploadItem accepts are dateCreated param
* Added a function in UploadModel, getFileCreatedDate which tries to fetched the file creaction date from all possible content providers.
* Fix pending issues in upload flow
* Make multiple uploads work for Google Photos
* Fix default state for upload activity
* Fix keyboard state for license screen
* Fix descriptions for uploads
* wip
* Fix language spinner
* Add bookmark star images
* Add bookmark item in navigation menu
* Add Activity for bookmarks
* Implement bookmarks viewpager
* Bookmark object and bookmarkDao
* Implement Bookmark Picture Fragment and Controller
* Implement image detail bookmark menu action UI
* contentProvider + config + dao rework
* Fix Dao and Content Provider crashes
* Link bookmark controllers and dao
* Implement bookmark location fragment, controller
* Add bookmark icon to location items
* Add empty bookmark list behavior and refactoring
* bookmarkLocation dao and contentProvider
* Fix bookmarks location crashes
* Rename and refactor classes
* Implement location list refresh
* Fix picture list update
When user come back from detail picture fragment, it solve the refresh bug.
* full test coverage
* Refactor bookmarks classes
* Fix bookmarks pictures loading
* Fix bookmark locations list display
* Java Documetation
* Fix Code review quality
* Fix DB version update
* Remove forgotten todo
* Update bookmark activity base class
Change from AuthenticatedActivity to BaseNavigationActivity
* Sweeping update of gradle and library versions.
This updates all of the dependencies of the project to their latest
versions. Everyone should please upgrade to the latest version of Android
Studio, update your build tools, and keep your version of Gradle and the
Kotlin plugin up to date.
* Update build tools in travis.
* Remove cruft and fix tests.
* Remove even more stuff.
* Reinstate instrumented tests.
* Update emulator image in travis.
* Localisation updates from https://translatewiki.net.
* Work towards eliminating string literals from code. (#1861)
String literals are being used in many places in the code, instead of
proper string resources which are automatically localized. This PR
replaces many of the string literals with pre-packaged resources, or will
add the appropriate string if necessary.
* Add button on image details to copy wikicode to clipboard (#1849)
* Add button on image details to copy wikicode to clipboard
* Make copy wikicode button width the same as the nominate deletion button width by filling in background
* Build fix
* Enable ProGuard for Debug and Release builds.
This enables ProGuard minification, which significantly shrinks the APK
(for both debug and release configurations) and vastly decreases the
method count.
* Add ProGuard rules for test builds.
* Add Traceur for getting meaningful RxJava stack traces (#1832)
* Hotfix for overwrite issue in 2.8.0 (#1838)
* This solution is an hotfix for overrite issue came back on 2.8.0 version. What I did is checking the extension, and if it is null, adding .jpg suffix. Because commons files always have suffixes, and we should compare file names after adding suffixes. Othervise overrides are possible.
* Check if file title includes an extension already, by checking if is there any dot in it.
* Fix logic error
* Add uncovered tests
* Remove unecessary line breaks
* Make Javadocs more explicit
* Versioning and changelog for v2.8.2 (#1842)
* Versioning for v2.8.2
* Changelog for v2.8.2
* Add logs in wiki data edit and session refresh flow (#1874)
* Fix logout (#1875)
* [WIP] Refactor feedback and quiz to reduce possibility of NPE (#1881)
* Refactor feedback and quiz to reduce possibility of NPE
* Handle throwables in quiz checker
* Minor refactoring
* Set Traceur to only work in DEBUG mode (#1884)
* Bug fix for uploaded images count in achievements activity (#1885)
* Versioning and changelog for v2.8.3 (#1886)
* Update changelog.md
* Versioning for v2.8.3
* Search activity, image search fragment added
* Removed explore icon xml
* Updated Javadocs for search Activity and Navigation Base Activity
* SearchImageItem class updated
* Javadocs added for search activity
* removed redundant code and added javadocs for search image modules
* Javadocs added for updateImageList method
* Rename featuredImage to explore
* Fixed null query issue
* changed cisibility to gone in case of successful Fetch
* Consolidate the networking libraries - drop volley in favor of OkHttp
* Extracted a few networking related items into a new Dagger module and finished the process of mocking the main component for tests.
* Refactoring to extract GpsCategoryModel and ensure single-responsibility-principle is maintained in CategoryApi.
* fixed featured image back bug
* Localisation updates from https://translatewiki.net.
* Javadocs added
* Add option to set image as wallpaper (#1535)
* Add option to set image as wallpaper
* Added java docs
* Toast message on setting the wallpaper successfully
* Localisation updates from https://translatewiki.net.
* SearchHistory Fragment added
* Search History Item added
* Content Provider, RecentSearchesDao added
* Database version changed to 7 and added methods for find, save ,..
* Delete icon deleted
* Reverted changes in gradle files
* Reverted changes in gradle files 2
* Optimized Improts
* reverted refractor for container name
* Refactored packagename, changed name to query in POJO class.
* Updated lastUsed to lastSearched
* Javadocs updated
* Check if user has been in search page for 5 seconds if yes then save it to history
* If else indentation updated
* added import in test
* edittext replaced with Searchview
* RxSearchview added
* Added support for API 21+
* Snackbar removed on success
* Improved code
* Pagination added
* Removed unnecessary toast
* Comment added in method
* Support for landscape mode added
* Fixed screen rotation issue on Explore and Search activity
* Clear focus added
* Delete all function added in Content Provider and called from fragment
* Scrollbar Recyclerview added
* Share Icon changed to 32 dp and back button added in explore, search activity.
* Removed unnecessary code
* Wrote and run tests for Recent Searches
(creating db, migrating from versions, deletion, finding,..
* Category Search Fragment added
* Adapter factory added
* Renderer added
* Improvements
* Viewpager adapter added
* Updated XML
* Improvements in category card design
* tabs colors changed
* renamed images to media
* Java docs improved
* Javadoc added for setTabs
* JavaDoc for ViewPagerAdapter added
* Refreshed listview after delete
* Added mediaContainer
* Fixed ghost issue in image search fragment
* Ghost issue for categories fixed
* Removed Calling API call onback press
* Category Details activity added
* Menu added in category details activity
* back button added
* back button bugs
* Improvements in category images fragment
* JavaDoc added for some methods
* trimming added, Tab layout hided, recent searches refreshed
* SubCategory list fragment added, API added to extract subCategory Details
* API params updated to get more precise results
* Javadocs added for MWAPI method
* Pagination removed
* Fix API for fetching images inside category
* Parent category API added
* Fix#1704
* Fix#1704 corrected
* Fix#1702
* Fix#1702 and #1704
* added try catch statements
* Optimimzed imports
* loops replaced with Functions
* Javadocs for various methods added
* Fix java docs for Dao
* Javadocs for various methods added
* Fix java docs for Dao
* More javadocs added for explore Feature
* Javadocs added
* Javadocs added
* Improvements in indentation (#1739)
* Try to get the localized version of the wikipedia article before defaulting to the English version.
Tested with Spanish on physical Android device.
Other notes:
Difficulties building with gradle due to dexcount plugin: https://github.com/KeepSafe/dexcount-gradle-plugin/issues/234. In testing, disabled the plugin.
* Update article fetch to not include unnecessary SERVICE line
* Add checks for local file, check for string length
* Localisation updates from https://translatewiki.net.
* Integrate API for displaying featured images (#1456)
* 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
* Update pull_request_template.md (#1476)
* Update pull_request_template.md
* Remove Javadocs mention
* Added required/optional notes
* resolves#1464 : MediaDataExtractor is making inefficient (redundant) server calls (#1496)
* Open map of place where picture was taken (#1360)
* Intent to map added
* Merge conflicts resolved
* Added the functionality to hide FAB incase of null coordinate
* Merge Conflict resolved
* Improve pr quality
* Improve Quality
* Added nested FAB animations
* Nested FAB implemented
* Improve Quality
* Added up arrow
* Javadocs Added
* Add nearby tutorial (#1467)
* 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
* CONTRIBUTING: fix formatting of the gist of the guidelines (#1453)
* CONTRIBUTING: fix formatting of the gist of the guidelines
First level headings for a gist seems to be overkill.
So, replace first level headings with an ordered-list which
sounds more meaningful.
* CONTRIBUTING: specify clearly that 'blame' is a feature of "Git"
The contributing file specifies about the ability to know who wrote
something without the need of @author javadoc tags but incorrectly
attributes the feature to GitHub.
Correctly attribute the feature to where it belongs, Git, and specify
the name of the feature to help users easily take advantage of it.
* Feature/switch to butterknife (#1494)
* Implemented butterknife in MediaDetailFragment [issue #1491]
* Implemented butterknife in MediaDetailPagerFragment [[issue #1491]]
* post merge upstream master wip [[issue #1491]]
* Localisation updates from https://translatewiki.net.
* Bug fix#1504 (#1506)
* Bug fix#1504
* Filtered messages with ConnectException [issue #1504]
* A generalised message for exceptions in Nearby Activity [issue #1504]
* Localisation updates from https://translatewiki.net.
* Fix security exception crash while accessing network location provider (#1498)
* Fix security exception crash while accessing network location provider
* Added java docs
* Localisation updates from https://translatewiki.net.
* Log P18 edits to wikidata corresponding wikidata entity on uploading a nearby image
* Added java docs
* Fix test build
* Refresh nearby
* Refresh nearby list on successful edit
* Java docs
* Make authenticated wikidata edits
* Updated toast message to show entity name that was edited
* 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
* 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