Releases: commons-app/apps-android-commons
Version 5.1.0
What's Changed
- Enhanced upload queue management in the Commons app for smoother, sequential processing, clearer progress tracking, prevention of stuck or duplicate uploads. As part of this improvement, the "Limited Connection mode" has been removed. This was contributed by @kanahia1 via GSoC in #5752
- Added an option in "Nearby" feature enabling users to provide feedback on Wikidata items. Users can report if an item doesn’t exist, is at a different location, or has other issues, with submissions tagged for easy tracking and updates. Contributed by @kanahia1 via GSoC in #5740
- Improved the "Nearby" feature by splitting the query into two parts for faster loading and better performance, especially in areas with dense amount of places. This update also resolves issues with pins overlapping place names by @kanahia1 in #5731
- Upgraded AGP and target/compile SDK to 34 and make necessary adjustments to the app such as adding "Partial Access" support. Also includes some minor refactoring, and replacement of deprecated circular progress bars. This was contributed by @rohit9625 in #5790
- Fixed an issue where editing depictions removed all other structured data from images. Now, only depictions are updated, preserving other associated data by @rohit9625 in #5741
- Fixed an UI issue where the 'Subcategories' and 'Parent Categories' tabs appeared blank in the Category Details screen. Resolved by optimizing view binding handling in the parent fragments. This was contributed by @thesarangal in #5830
- Fixed *map centering in the image upload flow to use GPS EXIF tag location from pictures and ensured "Show in map app" accurately reflects this location. This was contributed by @Jason-Whitmore in #5767
- Fixed navigation after uploading via Nearby by directing users to the Uploads activity instead of returning to Nearby, preventing confusion about needing to upload again by @whe128 in #5874
Bug fixes and various changes
- Improved the "Nearby" feature to fetch labels based on the user's preferred language instead of defaulting to English by @ChristoJobyAntony in #5858
- Added a legend to the "Nearby" feature indicating pin statuses: red for items without pictures, green for those with pictures, and grey for items being checked. A floating action button now allows users to toggle the legend's visibility. This was contributed by @hannagnourt in #5881
- Fixed an issue where the "Nominate for deletion" option is shown to logged out users, preventing app errors and crashes by @djbloop in #5773
- Updated the regex pattern that filters categories with an year in it to also filter the 2020s by @mnalis in #5761
- Fix an issue where past depictions were not shown as suggestions, despite being saved correctly by @rohit9625 in #5792
- Fixed an issue in custom image picker where exiting the media preview showed only the first image and cleared selections. Now, previously selected images are restored correctly after exiting the preview. This was contributed by @LachlanMajor in #5866
- Fixed an issue in custom image picker where scrolling behavior did not maintain position after exiting fullscreen preview, ensuring users remain at the same point in their image roll unless actioned images are filtered. This was contributed by @lzhan0121 in #5880
- Fixed Nearby map not showing new pins on map move by removing the 2000m scroll threshold and adding an 800ms debounce for smoother pin updates when the map is moved. Queued searches are now canceled on fragment destruction by @tristan81 in #5843
- Revised author information retrieval to emphasize the custom author name from the metadata instead of the default registered username by @lzh12311 in #5860
- Enhanced notification classification to properly identify "email" type notifications and prompting users to check their e-mail inbox when such notifications are clicked. This was contributed by @ErenratZeng in #5865
- Resolved a bug in the language chooser that incorrectly greyed-out previously selected languages, ensuring only the current language is non-selectable during image upload by @cambo14 in #5883
- Resolved pin color update issue in "Nearby" feature where the pin colour failed to be updated after a successful image upload by @ChristoJobyAntony in #5864
- Improve the messages about being in a different place by @amire80 in #5764
- wikidata-feedback: avoid sentence lego by @sivaraam in #5775
- Remove unnecessary double quotes from a message by @amire80 in #5777
- Rename "View user page" menu as "View user profile" by @sivaraam in #5771
- Localization: fix incorrect Unicode for space after bullet points in French language by @rohit9625 in #5824
- Added date and time to Feedback by @ujjwal2900 in #5797
- Permission
GET_ACCOUNTS
required only upto Android 5.1 by @parneet-guraya in #5863
Various refactorings
- Removed duplicate code in addMarkersToMap method by @ujjwal2900 in #5783
- Added mockk as a dependency to support mocking Kotlin objects, ensuring compatibility when converting Java files to Kotlin and preventing test failures due to unsupported static mocks by powermock. This change helps maintain robust testing as the codebase evolves by @parneet-guraya in #5887
- Updated the app to use the new result API, replacing deprecated methods for handling activity results related to file picking, voice input, and image editing, improving code maintainability and reliability by @parneet-guraya in #5875
- Fix failing unit test case and replace deprecated progress bar with a Material progress bar by @rohit9625 in #5795
- CI failing, fix test by @parneet-guraya in #5893
CommonsApplication
migrate to kotlin & some lint fixes by @parneet-guraya in #5879- Partial fixes for errors and warnings reported by ./gradlew lint by @baijun6 in #5885
- Refactor
FilePicker.java
intent result handling by @parneet-guraya in #5851 - Fixed 119 minor Kotlin styling issues using ktLint and manual adjustments for compliance with standard rules, including naming, imports, and formatting by @tristan81 in #5833
- Updating jraska/livedata-testing for GSoC by @nicolas-raoul in #5785
- (fixes #3464) Replace assert() usages with assertThat() by @u7683345 in #5861
New Contributors
- @ujjwal2900 made their first contribution in #5783
- @djbloop made their first contribution in #5773
- @thesarangal made their first contribution in #5830
- @tristan81 made their first contribution in #5833
- @ChristoJobyAntony made their first contribution in #5858
- @lzh12311 made their first contribution in #5860
- @u7683345 made their first contribution in #5861
- @ErenratZeng made their first contribution in #5865
- @LachlanMajor made their first contribution in #5866
- @lzhan0121 made their first contribution in #5880
- @hannagnourt made their first contribution in #5881
- @whe128 made their first contribution in #5874
- @cambo14 made their first contribution in #5883
Full Changelog: v5.0.2...v5.1.0
v5.0.2
What's Changed
- Enhanced multi-upload functionality with user prompts to clarify that all images would share the
same category and depictions by @vtalos in #5700 - Show Wikidata description on currently active Nearby pin to provide more useful information by @kanahia1 in #5697
- Improve the visibility of map markers by dynamically adjusting their colors based on the app's
theme. The map markers will now appear lighter when the app is in dark mode and darker when the
app is in light mode. This change aims to enhance marker visibility and improve the overall user
experience by @vtalos in #5744 - Added information on where user feedback is posted, helping users track existing feedback and
monitor their own submissions by @sivaraam in #5748 - Enhanced the edit location screen of the upload screen by centering the map on the picture's
location from metadata when editing, or on the device's GPS location if metadata is unavailable,
improving accuracy and user experience by @Jason-Whitmore in #5716 - Ensured the 'Add Location' button is renamed to 'Edit Location' when copying the location of a
recently uploaded image, enhancing clarity and user experience by @AdamTWEnglish in #5756 - Added a ProgressBar to the media detail screen to indicate image loading status, enhancing user
experience by showing loading progress until the image is fully loaded by @vtalos in #5736 - Fixed an issue where caption and description fields would intermittently disappear when using
voice input, ensuring text remains visible and stable across all entries by @karyotakisg in #5739 - Fixed a crash that occurred when attempting to remove multiple instances of caption/description
fields after initially adding them by @pacha0 in #5750 - Improve the text in the prompt shown when skipping login to sound more natural by @pacha0 in #5746
- Modified feedback addition logic to append new sections at the bottom of the page, ensuring
auto-archiving of sections functions correctly on the feedback page by @sivaraam in #5753 - Resolved issue where the app failed to clear cookies upon logout by @sivaraam in #5727
- Update Java version from Java 8 to Java 11 by @elemcraft in #5732
New Contributors
- @vtalos made their first contribution in #5700
- @pacha0 made their first contribution in #5746
- @karyotakisg made their first contribution in #5739
- @elemcraft made their first contribution in #5732
- @Jason-Whitmore made their first contribution in #5716
- @AdamTWEnglish made their first contribution in #5756
Full Changelog: v5.0.1...v5.0.2
v5.0.1
v5.0.0
Beware: The release variants don't work in this version due to a problem with the ProGuard rules. This has been fixed and tagged as v5.0.1
What's Changed
-
Redesigned the map feature to replace Mapbox with the osmdroid library. Key elements like pin visualization and user-centered display are still included in this redesign. This is done to guard against possible misuse of the Mapbox token and, more crucially, to keep the app from becoming dependent on a service that charges for usage but offers a free tier. @kanahia1 contributed to this in #5403 #5443 #5475 #5555 #5631.
@tamojitdas made a contribution by fixing the test failures brought on by this modification. Refer to #5536.
@rohit9625 contributed by enabling the app to retrieve map tiles from Wikimedia maps. Refer to #5417.
@k-rajesh contributed by removing MapBox from CREDITS. Refer to #5617.
-
Add the ability to export locations of nearby missing pictures in GPX and KML formats. This allows users to browse the locations with desired radius for offline use in their favourite map apps like OsmAnd or Maps.me, enhancing accessibility and offline functionality. This change was contributed by @kanahia1 in #5645
-
Limited the uploads via the custom image picker to a maximum of 20. This change was contributed by @u7469570 in #5369
-
Added two menu choices for transparent image backgrounds, giving users the option of either a black or white background, increasing adaptability to various theme settings. User customization option has been provided with the ability to save background color selections permanently on a per image basis. This change was contributed by @Pierre-Monier in #5394
-
Implemented functionality to automatically resume uploads that become stuck due to app termination or device reboot. This change was contributed by @RitikaPahwa4444 in #5399
-
Added a compass arrow in the Nearby banner shown in the "Contributions" screen to guide users towards the nearest item, thus providing the missing directional cues. The arrow dynamically adjusts based on device rotation, aligning with the calculated bearing towards the target location. Further, the distance and direction are updated as the user moves. This change was contributed by @ShashwatKedia in #5433 #5459
-
Implemented voice input feature for caption and description fields, enabling users to dictate text directly into these fields. This change was contributed by @kanahia1 in #5415
-
Improved various flows in the app to redirect users to the login page and display a persistent message if their session becomes invalid due to a password change, enhancing user guidance and security measures. This change was contributed by @shashankiitbhu in #5544 #5643
Revamps and refactorings
- Revamped initial upload screen layout and the description edit screen layout for enhanced user experience and ensuring better symmetry in the design. This change was contributed by @kanahia1 in #5464
- Replaced Butterknife with ViewBinding in various places of the app. This change which fixes #4664 was contributed by @psh @shashankiitbhu @neeldoshii and @ShashwatKedia in #5379 #5380 #5382 #5383 #5594 #5591 #5592 #5593 #5590 #5506 #5601 #5604 #5606 #5607 #5659 #5396 #5425 #5426 #5446 #5660 #5595
- Transferred essential code from the redundant data-client module to the main Commons app code, enabling its integration and facilitating the removal of the redundant module. Further, convert various parts of the code to Kotlin. This change was contributed by @psh in #5463 #5465 #5471 #5476 #5472 #5496 #5499 #5507 #5484 #5479 #5491 #5530 #5567 #5568
- Revamped the various location permission flows to ensure consistency for the sake of a better user experience. This change was contributed by @ShashwatKedia in #5494
- Migrate from Kotlin synthetics to Jetpack view binding by @domdomegg in #5546
- Refactor : API calls moved out of the LoginActivity by @neeldoshii in #5599
- CodeCleanup: Removed Unused Import from packages. by @neeldoshii in #5609
Bug fixes and various changes
-
Resolved an issue where paused uploads that were subsequently cancelled were still being uploaded by @RitikaPahwa4444 in #5367
-
Fixed an issue where some user information such as upload count were not displayed in the "Contributions" and "Profile" screens by @sivaraam in #5489
-
Fixed the long-standing broken "Picture of the Day" widget to restore its usability by @srishti-R in #5402
-
Resolved an issue where some categories were hidden at the top of Upload Wizard suggestions by @HNYDDDTONY-ANU in #5370
-
Resolved an issue where there was a grey empty screen at Upload wizard when the app was denied the files permission by @kanahia1 in #5356
-
Implemented logic to bypass media in Peer Review if the current reviewer is also the user who uploaded the media by @shashankiitbhu in #5435
-
Corrected arrow image behaviour in the first upload screen: now displays down arrow when details card is fully visible, aligning with expected user interaction by @ShashwatKedia in #5412
-
Updated app icon to improve visibility and recognition on F-Droid by @Zen-M in #5447
-
Fixed issue causing all pictures to disappear and activity to reload fully in the custom image selector after marking a picture as 'not for upload', now ensuring only the selected picture is removed as expected by @shashankiitbhu in #5576
-
Fixed bitmap too large issue by @shankarpriyank in #5430
-
Resolved issue #4513 vertical scrollbar not visible by @ShashwatKedia in #5420
-
Resolved issue of dark icons not visible in bottom NavBar and Achievement Fragments, in dark mode by @ShashwatKedia in #5410
-
Made Nearby Pins More Visible by @rohit9625 in #5440
-
Resolves #2307 make achievements activity more visible by @ShashwatKedia in #5442
-
UploadMediaDetailInputFilter: added a pattern to identify colon. by @rohit9625 in #5451
-
Fixes #5439 by capitalizing first letter of voice input by @kanahia1 in #5450
-
Resolves #5445 highlighting nearest place on clicking home nearby banner by @ShashwatKedia in #5453
-
Resolve displaced icons problem for small screens sizes by @rohit9625 in #5467
-
Fix crash upload wizard when there's a change the device's text size by @shashankiitbhu in #5466
-
Send thanks button in more details fragment by @srishti-R in #5424
-
Fix Multi-Upload Wizard only asks Metadata for one picture by @shashankiitbhu in #5478
-
Fixed flickering of nearby banner compass #5483 by @ShashwatKedia in #5486
-
Remove occurrence of upload wizard's depictsFragment instead of editDepictsFragment by @rohit9625 in #5488
-
Enhancement-Show Icon Labels When Long Pressed by @shashankiitbhu in #5492
-
Enhancement - Nearby banner shows Item without image by @shashankiitbhu in #5468
-
Add ability to suppress logging of known unsuccessful API calls by @psh in #5526
-
Fix - Unable to Access Privacy Policy by @shashankiitbhu in #5534
-
Show Labels For FAB in Contribution Page by @shashankiitbhu in #5493
-
Fix Methods Usage Incompatible with Android API Level 21 by @shashankiitbhu in #5525
-
Resolved Problems in UploadMediaDetails flow and UX #5511 by @ShashwatKedia in #5527
-
Restrict the uploads to allow only image types that are allowed by Wikimedia Commons by @shashankiitbhu in #5543
-
Replaced campaignPreference with CAMPAIGNS_DEFAULT_PREFERENCE by @Kwong-Yu-Zhou in #5357
-
Fix crash when explore ...
v4.3.0
v4.2.1
What's Changed
- Provide the ability to edit an image to losslessly rotate it while uploading
- Fix a bug in v4.2.0 where the nearby places were not loading
- Fix a bug where editing depictions showed a progress bar indefinitely
- In the upload screen, use different map icons to indicate if image is being uploaded with location
metadata - For nearby uploads, it is no longer possible to deselect the item's category and depiction
- The Mapbox account key used by the app has been changed
- Category search now shows exact matches without any discrepancies
- Various bug and crash fixes
New Contributors
- @aryanA101a made their first contribution in #5322
- @Deanstirrat made their first contribution in #5328
- @1162706031 made their first contribution in #5340
- @alvinylt made their first contribution in #5343
- @TaiHaDev made their first contribution in #5350
- @Jasson-Hsu made their first contribution in #5361
- @Shin0017 made their first contribution in #5360
Full Changelog: v4.2.0...v4.2.1
v4.2.0-beta
What's Changed
- Dark mode colour improvements
- Enhancements done to address location metadata loss including the metadata loss that occurs in latest Android versions
- Enhancements done to address the issue where uploads get stuck in queued state
- Fix the inability to upload via the in-app camera option
- Provide the ability to optionally include location metadata for in-app camera uploads in case the device camera app does not provide location metadata
- Use geo location URL that works consistently across all map applications
- Fix crash when clicking on location target icon while trying to edit the location of an upload
- Fix crash that occurs randomly while returning to the app after leaving it in the background
- Fix crash in Sign up activity on Android version 5.0 and 5.1
- Android 13 compatibility changes
New contributors
- @tpettwa1 made their first contribution in #5230
- @mnalis made their first contribution in #5248
- @Alfusainey made their first contribution in #5251
- @AnkitThakur98 made their first contribution in #5253
- @paco-arana made their first contribution in #5261
- @Jean-BaptisteC made their first contribution in #5229
- @alamzeeshan made their first contribution in #5292
Full Changelog: v4.1.0...v4.2.0-beta
v4.2.0 (broken)
This tag contains code that doesn't work. Checkout v4.2.0-beta instead.
v4.1.0
- Location of pictures uploaded via custom picture selector are now recognized
- Improvements to the custom picture selector
- Ensure the WLM pictures are associated with the correct templates for each year
- Only show pictures uploaded via app in peer review
- Improve the variety of images show in peer review
- Allow going to current location in location edit dialog while uploading a picture
- Switch to using MapLibre instead of Mapbox and thereby disable telemetry sent to Mapbox
- Fixed various bugs