Commons app mirror
Find a file
Jason-Whitmore 012020735f
Some checks failed
Android CI / Run tests and generate APK (push) Has been cancelled
Fixes Issue 6262: [Bug]: Error occurred while loading images (#6291)
* ImageInfo.kt: remove call to updateThumbURL()

Before this commit, the updateThumbURL() method would attempt to derive a larger resolution thumbnail URL
from the current thumbnail's width and height. This derived thumbnail URL would sometimes not match
an actual URL. Even creating this thumbnail URL would sometimes fail when doing string manipulation.
Both errors can cause issues, with the second one crashing the thread and preventing images from being
loaded.

This commit simply removes the call to updateThumbURL(). Images with their thumbnails now load correctly,
especially with panoramic images.

* MediaInterface.kt: fix MediaWiki API call to retrieve thumbnail URLs properly

Before this change, the API calls to MediaWiki would request thumbnails with atleast a specific width,
rather than height. These thumbnails would often be extremely low resolution on very wide images,
such as panoramas.

This change instead requests thumbnails with atleast a specific height. Panorama thumbnails are now
at a higher resolution than before. Additionally, the height parameter is now represented as an
integer which can be changed more easily.

* ViewPagerAdapter.java: create new constructor with behavior parameter

Before this commit, ViewPagerAdapter only had one constructor which used the default
behavior where more than the current fragment would be in the Resume state.

This commit adds a constructor where the behavior parameter can be specified.

* ExploreFragment.java: modify onCreateView to use new ViewPagerAdapter constructor

Before this change, onCreateView would use the old ViewPagerAdapter constructor, which
had a default behavior where fragments not currently visible would be in the Resume
state.

After this change, the new ViewPagerAdapter constructor is used with a non-default
behavior where only the visible fragment would be in the Resume state. This has
performance benefits for most users since the Fragments will only be active
when they want to view them.

* ExploreMapFragment.java: remove redundant method call

Before this commit, performMapReadyActions() was called in both onViewCreated and onResume.
In effect, the method is called twice before the user can even see the map, leading to
performance issues.

After this commit, the call in onViewCreated is removed. The method is now called only once
when the user switches to the ExploreMapFragment.

* ExploreMapFragment.java: remove method call that causes recursive loop

Before this commit, there was a call loop that included onScroll and animateTo
on the map. These two method calls caused performance issues in
ExploreMapFragment.

This commit breaks the call loop by removing moveCameraToPosition from getMapCenter.
Also, the removed code did not fit the purpose of getMapCenter.

* ExploreMapFragment.java: fix performMapReadyActions to center to user's last known location

Before this commit, fixing a previous bug caused performMapReadyActions to center the map
on a default location rather than the available last known location.

This commit adds code which will attempt to get the last known user location. If it cannot
be retrieved, the default location is used. The map now centers properly.

* MediaInterface.kt: adjust thumbnail height parameter

Before this commit, the thumbnail height parameter was too small, causing low resolution thumbnails to render.

This commit more than doubles the parameter, increasing the thumbnail resolution.

---------

Co-authored-by: Ritika Pahwa <83745993+RitikaPahwa4444@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
2025-05-10 20:04:57 +09:00
.github Comment in PR with generated builds. (#6226) 2025-03-03 21:44:08 +09:00
.idea Fixes #5806 Implemented "Refresh" button to clear the cache and reload the Nearby map (#5891) 2024-10-25 14:19:07 +09:00
app Fixes Issue 6262: [Bug]: Error occurred while loading images (#6291) 2025-05-10 20:04:57 +09:00
design Update app icon (Fixes #868) (#2022) 2018-12-17 11:13:46 +05:30
fastlane/metadata/android/en-US/images added icon.png file (#5447) 2024-01-17 10:03:11 +09:00
gradle/wrapper Fixes #5806 Implemented "Refresh" button to clear the cache and reload the Nearby map (#5891) 2024-10-25 14:19:07 +09:00
update-license-info Merge "commons" into the project root directory 2016-07-02 16:48:57 +09:00
.gitignore Feat: Make it smoother to switch between nearby and explore maps (#6164) 2025-01-30 21:58:00 +09:00
.mailmap Add a .mailmap file to update bvibber's name/email (#5684) 2024-04-09 07:14:11 +09:00
build.gradle Fixes #5806 Implemented "Refresh" button to clear the cache and reload the Nearby map (#5891) 2024-10-25 14:19:07 +09:00
CHANGELOG.md Add v5.3.0 to CHANGELOG.md 2025-04-15 02:43:33 +05:30
CONTRIBUTING.md Update CONTRIBUTING.md (#4113) 2020-12-31 00:11:09 +09:00
COPYING Relicense to Apache License 2013-04-23 21:16:43 +05:30
CREDITS #5611 removed MapBox from CREDIS because it has already been replaced (#5617) 2024-03-18 22:41:51 +09:00
dependency-injection.md Use JSON SPARQL query for fetching nearby places (#2398) 2019-02-06 10:40:30 +05:30
find-broken-strings-variables.sh Updated path 2016-10-26 19:56:49 +09:00
gitutils.gradle Fix for issue #1157 Added try-catch block in getBuildVersion function in gitutils.gradle … (#1158) 2019-01-03 20:18:42 +05:30
gradle.properties feat : Account Vanishing (#6098) 2025-01-09 23:27:08 +09:00
gradlew Update gradle from 4.0-rc-1 to 4.0.1 2017-07-19 17:14:37 +09:00
gradlew.bat Update gradle from 4.0-rc-1 to 4.0.1 2017-07-19 17:14:37 +09:00
jacoco.gradle fixes unit tests (#5354) 2023-10-20 11:50:51 +09:00
nr-commons.keystore.enc Automate releases (part 1) (#2111) 2018-12-14 21:07:03 +05:30
play.p12.enc Integrate gradle play publisher for automatic alpha releases (#2116) 2018-12-14 23:53:05 +05:30
README.md Fixed Build Status Badge (#6203) 2025-02-24 15:52:35 +09:00
RELEASE-CHECKLIST.md Update RELEASE-CHECKLIST 2013-04-27 00:58:19 +05:30
settings.gradle Data client simplification / removal (#5507) 2024-02-03 10:26:06 +09:00
sign.sh Fix Codacy Issues + remove unused patch 2017-03-23 17:51:13 +00:00

Wikimedia Commons Android app

GitHub issue custom search Build status Preview the app codecov

The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Download the app here, or view our website.

Initially started by the Wikimedia Foundation, this app is now maintained by grantees and volunteers of the Wikimedia community. Anyone is welcome to improve it, just choose among the open issues and send us a pull request! :-)

Get it on F-Droid Get it on Google Play

Documentation

Our documentation repository contains extensive documentation for users, contributors, and developers alike:

Contributors

Thank you all for your work!


misaochan

translatewiki

neslihanturan

yuvipanda

nicolas-raoul

domdomegg

maskaravivek

psh

madhurgupta10

ashishkumar468

bvibber

whym

akaita

veyndan

ujjwalagrawal17

macgills

dbrant

vanshikaarora

sivaraam

Ayan-10

shashankiitbhu

Pratham2305

sandarumk

tanvidadu

cypherop

Prince-kushwaha

tobias47n9e

4D17Y4

hismaeel

tshradheya

.. and many more.

License

This software is open source, licensed under the Apache License 2.0.