* Add AlertDialog for categories and modularize receiveSharedItems
* Improve nearby-place search function for a multi-upload
Enhance the depiction consistency of a multi-upload by ensuring that it corresponds to a single place
* Add javadoc
* Update strings.xml
* Renamed setImageTobeUploaded to setImageToBeUploaded
* Make uploadIsOnPlace private & add a setter
* Rename uploadIsOnPlace to uploadIsOfAPlace
* Use singular when there is only one picture
* Add a 'Do not show again' checkbox on the dialog
* Update strings.xml
---------
Co-authored-by: Giannis Karyotakis <110292528+karyotakisg@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Resolved merged conflicts
* Resolved merge conflicts and updated workflow
* Updated Location Flow and merged conflicts
* Update flow and merge conflicts
* Fixed LocationPicker's location flow
* Removed redundant code from LocationPermissionsHelper
* Fixed Explore fragment crashing and incorrect behaviour
* Updated LocationPicker Flow
* Fixed Nearby not working as intended
* Final update to location flow of all maps
* Added the reqested changes and fixed bugs
* Resolved requested change in in-app camera location flow
* Fixed In-app camera location flow
* Resolved conflicts in ContributionsListFragment
* Updated java doc as requested
* Resolved nearby card dialog not being shown
* Optimised LocationPermissionsHelper javadoc
* Made requested changes for preference check
* Added javadoc and requested comment for later reference
* Implemented requested code changes
* Fixed failing test due to changes made during PR
* Added string resource for ExploreMapFragment
* Changed string resource for rationale dialog
* Added standard location flow information in LocationPermissionsHelper
* Added javadoc for doNotAskForLocationPermission
* Removed unused import
* Updated javadoc
* Removed values-yue-hant
* Fix some merge conflict errors
* Fix minor errors due to mergre conflicts
* Fix some refactor errors
* Fixed minor bug due to merging conflicts
* Delete app/src/main/res/values-yue-hant directory
* Final changes to NearbyParentFragment
* Fixes#5686 map coordinates set to image coords
* Removed some redundant code from recenterMap
* Removed one test whose method no longer exists
* Removed unused method from contract of nearby
* Removed redundant method from NearbyParentFragment
* nearby: add a FIXME about the possibly redudant code
---------
Co-authored-by: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
* Feat : Added a place for users to add feadback on github
* Code Cleanup : Added Github Issue URL as Const
* Homogenized
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Fixed Grey empty screen at Upload wizard caption step after denying files permission
* Empty commit
* Fixed loop issue
* Created docs for earlier commits
* Fixed javadoc
* Fixed spaces
* Added added basic features to OSM Maps
* Added search location feature
* Added filter to Open Street Maps
* Fixed chipGroup in Open Street Maps
* Removed mapBox code
* Removed mapBox's code
* Reformat code
* Reformatted code
* Removed rotation feature to map
* Removed rotation files and Fixed Marker click problem
* Ignored failing tests
* Added voice input feature
* Fixed test cases
* Changed caption and description text
* Replaced mapbox to osmdroid in upload activity
* Fixed Unit Tests
* Made selected marker to be fixed on map
* Changed color of map marker
* Fixes#5439 by capitalizing first letter of voice input
* Removed mapbox code1
* Removed mapbox code2
* Fixed failing tests
* Fixed failing due to merging
* Added feature to save nearby places as GPX and KML
* Fixed error caused by null
* Improved UX for Nearby Export
* Delete app/src/main/res/values-yue-hant directory
* Fixed internationalization issue
* Fixed Grey empty screen at Upload wizard caption step after denying files permission
* Empty commit
* Fixed loop issue
* Created docs for earlier commits
* Fixed javadoc
* Fixed spaces
* Added added basic features to OSM Maps
* Added search location feature
* Added filter to Open Street Maps
* Fixed chipGroup in Open Street Maps
* Removed mapBox code
* Removed mapBox's code
* Reformat code
* Reformatted code
* Removed rotation feature to map
* Removed rotation files and Fixed Marker click problem
* Ignored failing tests
* Added voice input feature
* Fixed test cases
* Changed caption and description text
* Replaced mapbox to osmdroid in upload activity
* Fixed Unit Tests
* Made selected marker to be fixed on map
* Changed color of map marker
* Fixes#5439 by capitalizing first letter of voice input
* Made UI changes in UploadMediaDetailAdapter
* Added javadoc
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Resolves#2307 by adding user level in menu
* Formatted code as requested
* Start sentence with uppercase
* javadoc
* Fixed my typo
* javadoc
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* feat: add backgroundColor property on media
* feat: add optional menu items for media backgroundColor
* fix: test pass when running in batch
* refactor: remove backgroundColor from media
* refactor: add string for background color menu
* chore: remove useless change
* feat: change media image background color
* feat: pass backgroundColor to ZoomableActivity
* chore: remove extra space
* Add basic image limit warning to custom selector
* Block upload button when image limit is exceeded
* Complete basic functionality for upload limit: Disabled button, warning sign & toast
* Consolidate functionality between upload limit and not for upload marking
* Upload Limit: write unit tests and optimize control flow
* Upload Limit Tests: improve logic coverage and alter to stay valid if limit is changed
* Upload Limit: polish javadocs and add explanation to warning toast.
* Upload Limit: refactor variable names
* Upload Limit: change warning toast to dialog box, repurposing welcome dialog code & layout
* Upload Limit: remove error icon when the mark as not for upload button is pressed
* UI setup for the crop feature almost setup
* basic setup of rotate feature done
* Added basic changes for editing feature
* Getting data back from edit activity
* Getting data back from edit activity
* Updated contentUri
* Finally the rotated image is getting uploaded
* Minor Improvements for better testing
* Fixed thumbnail preview
* Fixed loss of exif data
* Copy exif data
* Save exif data
* Added java docs
* Minor fix
* Added Javadoc
* Refactoring
* Formatting fixes
* Minor Formatting Fix
* Fix unit test
* Add test coverage
* Formatting fixes
* Formatting Fixes
---------
Co-authored-by: Priyank Shankar <priyankshankar@changejar.in>
* 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"
* MainActivity: add ACCESS_MEDIA_LOCATION permission check to retain location info in EXIF metadata
* remove redundant permission check and optimise imports
* FilePicker: switch to ACTION_OPEN_DOCUMENT intent for opening image files
* add a comment explaining the change
* implement GET_CONTENT photo picker toggle switch
* add location loss warning pop up
* SettingsFragment: modify the comment about GET_CONTENT takeover for more clarity
The phrase "Is this a photo of Place ...?" when placed along with an actual place
name could get confusing. For instance, "Is this a photo of Place More London?"
The casing of "Place" is especially confusing. So, tweak the phrase to avoid
this ambiguity.
Co-authored-by: Kaartic Sivaraam <kaartic.sn@zohocorp.com>
* fixed Leaderboard: Taping on my avatar should open tip popup explaining how to change it #4774
* fixed Leaderboard: Taping on my avatar should open tip popup explaining how to change it #4774
* Leaderboard: Taping on my avatar should open tip popup explaining how to change it #4774
* fixed Leaderboard: Taping on my avatar should open tip popup explaining how to change it #4775
* Project Initiated by creating helper classes for database operations
* Database created
* Rest of the work and documentation
* Requested changes done
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* [GSoC] Insert and Remove Images from not for upload (#4999)
* Inserted and marked images as not for upload
* Documentation added
* Test delete
* Implemented remove from not for upload
* Test fixed
* Requested changes done
* Added tests for new lines in existing classes
* [GSoC] Added Bubble Scroll (#5023)
* Library added
* Bubble scroll implemented
* Left and right swipe
* Requested changes
* [GSoC] Hide/Unhide actioned pictures and change numbering (#5012)
* Changed numbering of marked images
* Hide Unhide implemented
* Test fixed
* Improved speed for database operation
* Improved speed for database operation
* Changed progress dialog
* Improved hiding speed
* Test fixed
* Fixed bug
* Fixed bug and improved performance
* Fixed bug and improved performance
* Test fixed
* Bug fixed
* Bug fixed
* Bug fixed
* Bug fixed
* Bug fixed
* Code clean up
* Test hiding images
* Test hiding images
* Test hiding images
* Code clean up and test fixed
* Fixed layout
* Fixed bug
* Bug fixed
* Renamed method
* Documentation added explaining logic
* Documentation added explaining logic
* [GSoC] Full Screen Mode (#5032)
* Gesture detection implemented
* Left and right swipe
* Selection implemented
* onDown implemented
* onDown implemented
* FS mode implemented
* OnSwipe doc
* Scope cancel
* Added label in Manifest
* Merged two features
* Requested changes
* Image uploaded bug fixed
* Increased DB version
* Made requested changes
* Made requested changes
* Made requested changes
* Made requested changes
* Solved image flashing bug
* Solved image flashing bug
* Requested changes
* Requested changes
* Changed name of a function
* Fixed transaction failure on large number of images
* Tested with isIdentity
* Tested with isIdentity
* Increased the threshold
* Added info dialog
* Minor changes
* ImageAdapter Test
* CustomSelectorActivity Test
* Requested changes
* Test for ZoomableActivity
* Test for ZoomableActivity
* Test for ImageLoader
* Test for OnSwipeTouchListener
* Test for rest
* Reverted some test changes
* Added more tests for ImageAdapter
* Added more tests for ImageAdapter and swipe gesture
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
* Fix string for custom selector
* Fix bug #4950 back arrow still present on top-level activity (#4952)
* Fix bug #4949 by correctly setting previous db version number (#4956)
* Fix bug #4949 by correctly setting previous db version number
* Fix failing tests
* Fix bug #4959 by correctly setting previous db version number and updating the current db version (#4960)
* Fix bug #4957 (#4961)
* Update library to new version that handles older Java VMs
Fixes#4972 I believe.
* Versioning for v4.0.0
* Changelog for v4.0.0
* Fix bug #4984 Added queries for package name for Android API 30+ (#4987)
* Update mapbox sdk version (#4989)
* Versioning for v4.0.1
* Changelog for v4.0.1
* Remove network type information from NetworkUtils (#4996)
* Remove network type information from NetworkUtils
* Ignore dependent tests
* Fix#4992 invert the equals condition to be null safe (#4995)
* Fix java.lang.NullPointerException for username in ContributionBoundaryCallback (#5003)
* Fix failing tests for PR #5003 (#5004)
* Fix java.lang.NullPointerException for username in ContributionBoundaryCallback
* Fix failing tests
* Update Room DB Version (#5011)
* Fix#5001 (#5010)
* Fix DB update issue (#5016)
* [WIP] Fix both timezone problem and saved date problem (#5019)
* Fix both timezone problem and saved date problem
* Fixaccidental test code and add comments
* Add issue link to the comments
* Fix format issue and null checks
* Versioning for v4.0.2
* Changelog for v4.0.2
* Add "Report Violation" menu option (#5025)
* Add "Report Violation" menu option
* Update email template
* Update email address
* Fixed typo
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
* Versioning for v4.0.3
* Changelog for v4.0.3
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Started from welcome layout to main layout adding content descriptions
* Adds UI description section to strings.xml and adds a few content descrpitions
* Consolidates UI strings to top of file
* fixes nearby typos
* Removes content descriptions that clash with pr #4766
* Removes unused elements and reverts out-of-scope changes
* Restores pic-of-the-day content description
Co-authored-by: joshuamccluskey <jpiff57@gmail.com>
* Add map fragment for explore and search
* Create structure of explore map by defining view and user action interfaces to presenter
* Add methods to map start, bottom sheet and permission
* Make the simple map visible
* Imitate methods from nearby map for permission needed and non needed map initialisation operations, however, needs to be tested and reactor
* a level of abstraction
* update media params to include coordinates
* Implement pageable presenter to explore
* Create Root fragment for map and media
* Iplement two presenter one for map operations, the other for pageable operations
* Construct general structure for both explore with search query and just by location
* fix injection issue
* Make default explore work with zoom level
* increase offscreen page limit with newly added fragment
* Make two distinct api calls for search with and without query
* Before trying to use same presenter for both search with and without query
* Add notes for Madhur
* Add Madhur's fixes for binding
* Call serch with and without query from the same spot
* partially solve zoom issue
* Make tab view unswipble while map is being used on search activity
* make viewpager unswipable while map is being used
* Code cleanup and reverting unnecessry edits
* Add search this area methods
* Implement search this area button functionality
* Fix search this area button, current location FAB and bottom attribution UI elements
* Add marker click action
* Solve bookmarkdao injection issue
* Make display bottom sheet details on marker click
* remove label and set bottom sheet behavior
* Remove irrelevan buttons like wikidata and article buttons
* Cancel bookmark feature for commons images for know, needs to be thought
* Add search this area button
* Add location off dialog
* Implement back button for explore map fragment while not on search activity
* Make thumbnails visible, they need some styling though
* Make gridle views even more beautiful
* Remove classes added to support query
* Remove query related code from Reach Activity
* Solve two progressbar issue
* Remove query related ekstra codes
* Remove not needed anymore callback
* Make medai details work
* Remove all old removed code dependencies
* Solve initial load takes too long issue
* Solve current position track
* Add placeholder for possible load issues
* Add red stroke to bitmap
* Add borders to rectangles
* Change media details text to details
* Fix file name extension anf File: prefix
* Fix some code style issues
* Fix some style issues
* Fix style issues
* Fix build issue
* Fix test about etMediaListFromSearch
* Fix test issue with Seacrh Activity
* Fix conflict mark
* Entry to new UI
* Getting existing categories
* Hidden categories managed
* Category edit updated
* Category Edition implemented
* Java docs added
* Java docs added
* Java docs added
* Previous UI discarded
* Test added
* More test added
* More test added
* More test added
* More test added
* More java docs added
* Minor changes