* Feature/refractor uploads [WIP] (#2887)
* Fix duplicate param information (#2515)
* Bug fix issue #2476 (#2526)
* Added wikidataEntityID in all db versions, handled db.execSql via method runQuery
* Versioning and changelog for v2.10.2 (#2531)
* Update changelog.md
* Versioning for v2.10.2
* Update changelog.md
* Bugfix/issue 2580 (#2584)
* Corrected string placedholders in certain string files
* Corrected string placedholders in certain string files[Bug fix#2580]
* Bug Fix#2585 (#2647)
* Bug Fix#2585
* Added null checks on view in SearchImageFragment when updating views from external sources
* Disposed the disposables in SearchActivity and SearchImageFragment when no longer in active lifecycle
* use FragmentUtils to verify fragment active state
* Bug Fix issue #2648 (#2678)
* Bug Fix issue #2648
* Handled external storage permission before file download
* * Removed redudant check for permission in MediaDetailPagerFragment (Dexter already does that)
* Removed duplicate code in PermissionUtil$checkPermissionsAndPerformAction, used the existing function with conditional extra parameters
* string name typo correction
* BugFix issue #2652 (#2706)
* Addded null check on bookmark before operating on it
* BugFix issue #2711 (#2712)
* Added null checks in OkHttpJsonApiClient$searchImages MwQueryResponse
* BugFix #2718 (#2719)
* Handled null auth cookies
* Fix#2791: NPE when nominating for deletion and leaving screen (#2792)
* Bug Fix issue #2789 (#2790)
* Handled Illegal State Exception for non existent appropriate view parents in ViewUtils$showShortSnackbar
* BugFix #2720 (#2831)
BugFix deprecated licenes #2720
* ui fixes, wip, upload
* *Issue #2886, BugFix #2832[wip]
* updated UploadActivity code
* modified ui
* Updated UploadPresenterTest
* * updated interfaces names to follow names suffixed with Contract
* added test cases
* card view elevation
* view pager disabled swipe
* bug fix, duplicate image
* used existing non-swipable view pager
* Avoid image view resize with keyboard, added adjustPan and stateVisible as softinputMode for UploadActivity
* retain UploadBaseFragment instances on orientation changes
* * Added test cases for UploadMediaPresenter
* Injected io and main thread schedulers
* categories presenter test cased wip
* Added CategoriesPresenter test
* * Added the logic to show open map (with to be uploaded image's coordinates while uploading image)
* codacy suggested changes * added java docs
* Added travis_wait fot android-wait-for-emulator
* ranamed interface onResponseCallback to Callback
* * Added api to delete picture in UploadModel
* cleanUp in UploadModel. once upload has been initiated
* Removed unused methods from UploadModel and the corresponding test class
* * Added tests for UploadPresenter
* Travis suggested changes
* Addded copy previous title and description
* * Made the upload add descriptions visible when keyboard visible
* add description request focus only when user manually requests it
* Added JavaDocs, review suggested changes
* Fix dagger injection
* use DialogUtil to show info in descriptions
* use activity context for DialogUtil
* Minor changes
* Bug fix, reduced the add description edit text clickable bound (#2973)
* Bugfix/uploads (#3000)
* merged with master
* BugFix IllegalStateException
* setRetainState(true), not required with FragmentStatePagerAdapter
* Increase the ViewPager's Offscreen Limit, we want all the fragments to be active
* BugFix, clear selected categoris for previous upload session
* Clear Selected Categories
* Addded JavaDocs for CategoriesModel
* Code Formatting in app/src/main/java/fr/free/nrw/commons/upload/UploadModel.java
* Added class level JavaDoc UploadRemoteDataSource
* Added class level JavaDoc for UploadRepository
* Added JavaDocs for ThumbnailsAdapter
* Added JavaDocs for MediaLicensePresenter, CategoriesPresenter
* Removed null check on category query
* Show default catgeories based on image title and gps location when category text empty
* Allow search for empty category search
* Attached image scale listener to upload media image
* Bug fix, reduced the add description edit text clickable bound
* Fix memory leak (#3001)
* Bugfix/uploads (#3002)
* merged with master
* BugFix IllegalStateException
* setRetainState(true), not required with FragmentStatePagerAdapter
* Increase the ViewPager's Offscreen Limit, we want all the fragments to be active
* BugFix, clear selected categoris for previous upload session
* Clear Selected Categories
* Addded JavaDocs for CategoriesModel
* Code Formatting in app/src/main/java/fr/free/nrw/commons/upload/UploadModel.java
* Added class level JavaDoc UploadRemoteDataSource
* Added class level JavaDoc for UploadRepository
* Added JavaDocs for ThumbnailsAdapter
* Added JavaDocs for MediaLicensePresenter, CategoriesPresenter
* Removed null check on category query
* Show default catgeories based on image title and gps location when category text empty
* Allow search for empty category search
* Attached image scale listener to upload media image
* Bug fix, reduced the add description edit text clickable bound
* Added tooltip in Title in UploadMediaFragment
* BugFix recent categories
* Updated test methods
* Bugfix/uploads (#3011)
* merged with master
* BugFix IllegalStateException
* setRetainState(true), not required with FragmentStatePagerAdapter
* Increase the ViewPager's Offscreen Limit, we want all the fragments to be active
* BugFix, clear selected categoris for previous upload session
* Clear Selected Categories
* Addded JavaDocs for CategoriesModel
* Code Formatting in app/src/main/java/fr/free/nrw/commons/upload/UploadModel.java
* Added class level JavaDoc UploadRemoteDataSource
* Added class level JavaDoc for UploadRepository
* Added JavaDocs for ThumbnailsAdapter
* Added JavaDocs for MediaLicensePresenter, CategoriesPresenter
* Removed null check on category query
* Show default catgeories based on image title and gps location when category text empty
* Allow search for empty category search
* Attached image scale listener to upload media image
* Bug fix, reduced the add description edit text clickable bound
* Added tooltip in Title in UploadMediaFragment
* BugFix recent categories
* Updated test methods
* Avoid memory leak, free the adpater in MediaLicenseFragment.onDestroyView
* bugfix/uploads (#3012)
* merged with master
* BugFix IllegalStateException
* setRetainState(true), not required with FragmentStatePagerAdapter
* Increase the ViewPager's Offscreen Limit, we want all the fragments to be active
* BugFix, clear selected categoris for previous upload session
* Clear Selected Categories
* Addded JavaDocs for CategoriesModel
* Code Formatting in app/src/main/java/fr/free/nrw/commons/upload/UploadModel.java
* Added class level JavaDoc UploadRemoteDataSource
* Added class level JavaDoc for UploadRepository
* Added JavaDocs for ThumbnailsAdapter
* Added JavaDocs for MediaLicensePresenter, CategoriesPresenter
* Removed null check on category query
* Show default catgeories based on image title and gps location when category text empty
* Allow search for empty category search
* Attached image scale listener to upload media image
* Bug fix, reduced the add description edit text clickable bound
* Added tooltip in Title in UploadMediaFragment
* BugFix recent categories
* Updated test methods
* Avoid memory leak, free the adpater in MediaLicenseFragment.onDestroyView
* BugFix Illegal State Exception in ViewpPagerAdapter
* Remove irrelevant comment
* merge conflict with strings (#3016)
* Fix duplicate param information (#2515)
* Bug fix issue #2476 (#2526)
* Added wikidataEntityID in all db versions, handled db.execSql via method runQuery
* Versioning and changelog for v2.10.2 (#2531)
* Update changelog.md
* Versioning for v2.10.2
* Update changelog.md
* Bugfix/issue 2580 (#2584)
* Corrected string placedholders in certain string files
* Corrected string placedholders in certain string files[Bug fix#2580]
* Bug Fix#2585 (#2647)
* Bug Fix#2585
* Added null checks on view in SearchImageFragment when updating views from external sources
* Disposed the disposables in SearchActivity and SearchImageFragment when no longer in active lifecycle
* use FragmentUtils to verify fragment active state
* Bug Fix issue #2648 (#2678)
* Bug Fix issue #2648
* Handled external storage permission before file download
* * Removed redudant check for permission in MediaDetailPagerFragment (Dexter already does that)
* Removed duplicate code in PermissionUtil$checkPermissionsAndPerformAction, used the existing function with conditional extra parameters
* string name typo correction
* BugFix issue #2652 (#2706)
* Addded null check on bookmark before operating on it
* BugFix issue #2711 (#2712)
* Added null checks in OkHttpJsonApiClient$searchImages MwQueryResponse
* BugFix #2718 (#2719)
* Handled null auth cookies
* Fix#2791: NPE when nominating for deletion and leaving screen (#2792)
* Bug Fix issue #2789 (#2790)
* Handled Illegal State Exception for non existent appropriate view parents in ViewUtils$showShortSnackbar
* BugFix #2720 (#2831)
BugFix deprecated licenes #2720
* * synced 2.10 with master * resolved merge conflicts
* merge 2.10 with master
* Updated language codes displayed for Hebrew, Indonesian and Yiddish (#2880)
* Function 'fixLanguageCode' encapsulated with unit tests (#2880)
* Renaming class "StringUtils" as "LangCodeUtils" and small String formatting improvement in "SpinnerLanguagesAdapter"
* Beginnings of integration with Wikipedia client library. (#2642)
* Remove remaining unnecessary API version check.
* Roll up sleeves.
* Add and integrate the beginnings of app adapter.
* Remove vestigial event logging logic.
Event logging is no longer used in this app.
* Beginnings: remove StringUtils and associated redundancies.
* Remove redundant capitalize() method.
* Remove redundant urlEncode() method.
* Remove redundant (and incomplete) language lists.
* Remove redundant usages of SimpleDateFormat.
* Remove redundant json type adapter.
* Remove redundant MW error model classes.
* Rip out redundant MW model classes.
* Pass SessionManager into AppAdapter instead of injecting.
* Wire up more of the AppAdapter.
* Remove redundant Gson initialization and type adapters.
* Rip out PageTitle.
This was being used in some slightly incorrect/unexpected ways.
* Don't need static WikiSite.
* Bump data client library version
* Bump library version and fix build
* Fix tests
* Fix build
* Fix media of the day
* With fixes in recently modified APIs
* BugFix #2737
* Added a CustomProxy class which overrides the invocation handler to return approproate values for different datatypes
(cherry picked from commit f68d2e880074277b75a60b730dd63254239a8971)
* Added JavaDocs for CustomProxy
* Use JSON APIs for explore
* With tests
* Use JSON APIs for explore
* With tests
* BugFix #2731 (#4)
* Increased sdk version to 23
* with more robust tests
* Fix crashes and other reported issues
* Add javadocs
* Use common method for search and categories
* Add javadocs
* 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
* Add some category stuff back in to review (#1538)
* Use standalone category extraction code in MediaDataExtractor
* Add categories to category review page
* Change category question text sizes
* Call randomizer whenever the activity is ready
* Add progressbar
* [WIP] add DeleteTask.askReasonAndExecute
* Fix refresh button string
* Typo: "nominate *for* deletion"
* Add formatting to categories and put them in the same textView
* Pass context and adapters as parameters to controller
* Add actions to controller
* Make everyting work
* Add another fragment to thank
* Fix npe
* Add missing execute method
* Some codes
* Add a funy text
* More random recent image selection (#1542)
time-based randomness is biased - if someone uploaded 100 images in
hour, one week ago, and I select a random point in time, their last
image is way more likely to come up than anything else.
With this, there is still bias towards choosing one of the last N
in any burst of uploads (where N is the number of recent changes
fetched) but it's a bit better than before.
* Create Revision class
* Add meaningluf strings
* Error handling for review image/category fetch (#1543)
* Add information layout for username and filename
* Use Single to get firstRevision
* try to add username and filename
* Ensure caption is shown on every review fragment
* Fix build
* Fixes missing import
* Change button text,show current category, add skip image button
* Modify texts, fix night mode issues
* Positive Wording
* fix landscape issue
* Add checkbox popup,rewording
* Spelling Correction
* Fix merge
* Remove commented out code, use lambda
* Simplify toolbar include
* Add Device Support Information to Feedback Intent #2494
* Update Device Support Information for Feedback Intent #2494
* Update Device Support Information and used common method for Feedback Intent #2494
* Optimise code for Device Support Information for Feedback Intent #2494
* Use JSON response for nearby places
* Move okhttp calls to a different class
* wip
* Fetch picture of the day using JSON API
* Search images using JSON APIs
* tests
* Fix injection based on code review comments
* Use easy image for image picker
* Do not use harcoded mime type
* Use uploadable file for image uploads
* Add picker files in filepicker module
* Remove redundant checks for file
* Make usage of file extensions consistent
* Add javadocs
* Fix tests
* Enable image upload using bookmark activity
* Fix multiple uploads
* Fix external image uploads
* Fix chooser intents
* Fix image quality checks
* Segregate internal and external upload intents
* Invoke all error messages from one place
* Minor changes
* Fix tests
* Add image processing service tests
* Fix uploads getting stuck
* Fix test
* Use single instance of Gson across the app
* More logs to help debug upload failure
* Add request identifier
* wip
* Fix issues with image quality check dialogs
* 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
* Use image picker to pick images for upload
* Consolidate storage permissions in Upload activity
* With proper request codes for image upload
* Use constants for upload limits
* Check for request code while handling requests
* Let fragment initiate the camera/gallery instead of activity
* Delete unused external storage utils
* Fix#2215 Added BetaCheckerUtil class and made necessary changes
* Fix#2215 Fixed formatting error in LogSender class
* Fix#2215 Renamed BetaCheckerUtil to ConfigUtils
* Fix#2215 Fixed formatting in CommonsApplicationModule
* Dangling Javadoc comments
* Replace for loop with foreach
* Explicit type can be replaced with <>
* Anonymous type can be replaced with lambda
* Lambda can be replaced with method reference
* Remove redundant methods
* Use capital L for long literals
* Remove unnecessary StringBuilder
* Fix memory leak due to wikidata edit listener (#2048)
* Fix bookmark crash fix (#2047)
* Fix bookmark crash fix
* Fix check for bookmark creator
* Bug fix#2042 (#2056)
* Bug fix#2042
* Added a snack with retry when api in AA fails
* Increased connection timeouts in okhttpclient builder
* added missing string resource
* Bugfix/duplicate categories (#2080)
* Increased timeout to 60 seconds
* Bug fix#1550
* filter duplicate categories
* Fix crash because of inactive fragment UI (#2046)
* Fix crash because of inactive fragment UI
* Add java docs
* Add information icon action Fiixes #2055 2.9.0: the 'i' icon in nearby doesn't do anything (#2057)
* Localisation updates from https://translatewiki.net.
* Remove unused mediawiki api dependency (#1991)
* Categories with pipe suffix (#1873)
* Bug fix issue #1826
Changes made :
-Certain category names used to show suffixed with strings prefixed with pipe '|'. Removed everything after the pipe. As per the discussion on the thread, its safe to remove everything after the pipe, including the pipe
* review suggested changes
*Code formatting
*Extracted out the index of pipe in a variable
*Added issue link in comments
* Remove libraries section from README (#1988)
* Remove libraries section from README
* Add wiki link to "libraries used" to README
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Use alert dialog instead of popup window, for nearby information
* Revert irrelevant changes, sorry