Commit graph

6177 commits

Author SHA1 Message Date
Jason Whitmore
c32b5d5d14 LocationPickerActivity.java: replace references to EXIF in documentation
Before this commit, there were several mentions of EXIF location data in the javadocs. It is not clear if
this is correct, since many images have location data that is chosen by the user rather than derived from EXIF.

After this commit, the more generic term "location metadata" is used in place of EXIF location data.
Hopefully this change will help avoid confusion in the future.
2024-09-13 16:21:57 -07:00
Jason Whitmore
1d2398b30b LocationPickerActivity.java: fix map centering bug when editing location on already uploaded media
Before this commit, when the user pressed the edit location icon on media which was already uploaded,
the map would center on the device's current GPS location.

After this commit, pressing the same edit location icon will now center the map on the location metadata.
This is done by checking the activity string to see if the media is already uploaded. If so, a method
is called to center the map on the media's location metadata.
2024-09-13 16:02:51 -07:00
Jason Whitmore
102fbfbeea LocationPickerActivity.java: fix bug with permissions menu moving map
Prior to this change, if the menu asking for permissions to access the device's GPS was accepted, the map
would automatically move to the most recent or current GPS location, rather than staying at the uploaded
image's available EXIF location.

After this change, the map will stay centered at the image's available EXIF location, as intended.
The relevant method name and javadoc have been changed to more accurately describe the method's behavior.
2024-09-06 18:07:14 -07:00
Jason Whitmore
8ca6348c8c content_location_picker.xml: adjust picker pin and shadow location
Before this commit, the location picker pin and shadow graphics were incorrectly located on the screen.
Specifically, the bottom of the pin was not located at the center of the view. Since pressing the
checkmark button saves the location at the center of the view, users would most likely save the wrong location.

After this commit, the location picker pin and shadow graphics have been moved upward. The shadow graphic is
now located at the exact center of the view, and the bottom of the location picker pin is directly over the
center as well. Users may now use the bottom of the pin as an accurate location picker.
2024-09-05 17:28:28 -07:00
Jason Whitmore
b803474e22 LocationPickerActivity.java: remove redundant code
Before this change, there was two sections of code which moved the map center to the same location. Both of these code sections
occur very close to each other (one in onCreate(), the other in setupMapView())

After this change, the code section in onCreate() has been removed. With the map centering code only in the setupMapView() method.
This change eliminates redundancy, reduces the amount of code in onCreate(), and makes this java file easier to understand.
2024-08-31 17:40:43 -07:00
Jason Whitmore
47eaff429a LocationPickerActivity.java: replace code with a method call
Before this change, there was several lines of code which moved the map center to the EXIF location.

After this change, the several lines of code have been replaced with a simpler method call which produces
the same result.
2024-08-31 17:40:43 -07:00
Jason Whitmore
e55f4916ee LocationPickerActivity.java: rewrite comments to clarify if statement
Before this change, a comment in showInMapApp did not properly describe an if statement's intended behavior.

After this change, the old comment was removed and 2 new comments were added in each part of the if statement
to properly describe the intended behavior.
2024-08-31 17:40:43 -07:00
Jason Whitmore
caed893d23 LocationPickerActivity.java: add null checks to showInMapApp
Before this change, there was no null checks when accessing data from an object,
which could create null pointer exceptions at runtime.

After this change, null checks are introduced to make sure null pointer exceptions will not occur.
2024-08-31 17:40:43 -07:00
Jason Whitmore
efe6eb27ed LocationPickerActivity.java: refactor showInMapApp method
Before this change, the showInMapApp method had correct behavior, but could be rewritten to become more clear.

After this change, the showInMapApp code has been rewritten.
Specifically, common code in an if statement has been factored out.
2024-08-31 17:40:43 -07:00
Jason Whitmore
97fa77deb8 LocationPickerActivity.java: add code to move map to either EXIF or device GPS location
Before this change, there was no explicit if check on whether there was EXIF data available before moving the location picker map.

After this change, an explicit if check (which checks the activity name string) will move the location picker map to either
the EXIF location (if that data is available) or to the device's GPS location (if EXIF data is not available).
2024-08-31 17:40:43 -07:00
Jason Whitmore
442ab08711 LocationPickerActivity.java: create method to move location picker map to device GPS location
Before this method was created, several lines of code were required to move the location picker map to the device's GPS location.

After this method was created, the location picker map can be moved to the GPS location in a single method call.
2024-08-31 17:40:43 -07:00
Jason Whitmore
d941c2fa8e LocationPickerActivity.java: rewrite method scope, name, and documentation
Before this commit, the method name was unclear and the documentation did not fully explain the method's behavior. Additionally, it was a public method.

This commit renames the method (also changing calls to it), adds more documentation, and changes the method scope from public to private.
2024-08-31 17:40:42 -07:00
Jason Whitmore
a8bdbbc62d LocationPickerActivity.java: rearrange method calls.
Before this change, a method call to move the map to the device's GPS location was called at the very end of the map setup method.
This would move the map away from the media's EXIF location data (if it was available).

This change places the method call to move the map to the device's GPS location before the method call to move the map to the media's EXIF location (if the data is available).
In short, if no exif data is available, the map attempts to move to the device's GPS location. If the exif location data does exist, the map will move to that location.
2024-08-31 17:40:42 -07:00
Jason Whitmore
d1c849af36 LocationPickerActivity.java: remove redundant method, renaming method
Before this change, there were two methods with the same behavior.

This change removes the newer method and renames the old method to the descriptive name the newer one had.
Additionally, code which calls this method has been changed to reflect the new name.
2024-08-31 17:40:42 -07:00
Jason Whitmore
bff14dafde LocationPickerActivity.java: add null check to method
The original method did not include a null check for the input GeoPoint.

This change includes a null check. If the input Geopoint is null, the method will simply return.
2024-08-31 17:40:42 -07:00
Jason Whitmore
f68939975d LocationPickerActivity.java: add methods to easily move the map center
Before this change, any time the map center had to move, several lines of code had to be written.

This change creates several methods which move the map center to a specified location. By using these new methods,
moving the map center only takes one simple method call.
2024-08-31 17:40:42 -07:00
Jason Whitmore
c6a7a5ec48 LocationPickerActivity.java: fix "Show in Map App" bug
Once the "Show in Map App" button is pressed, the Map app will center on the current photo's EXIF location,
if that data is available. If not, the map app will center on where the location picker's map is centered.
Javadoc updated to reflect this small change.
2024-08-31 17:40:42 -07:00
Kanahia
93f1e1ec29
Added pending uploads screen (#5752)
* Added pending uploads screen

* Added failed uploads fragment

* Improved progress bars

* Implemented pause functionality

* Improved pause feature

* Fixed issue with sorting when adding more pictures during an upload

* Improved Tap to View notification

* Fixed issue with on going upload deletion

* Improved the deletion feature

* Fixed indentations and unit tests

* Fixed bugs

* Fixed failing test

* Added error message in Failed Uploads Fragment

* Improved error notification

* Moved auto-retry from the Main Activity to UploadProgressActivity

* Fixed large uploads issue

* Minor fixes

* Removed HashSet

* Fixed issue with progress bar

* Bug fixes

* Moved Auto Retry to MainActivity

* Fixed conflicts

* Fixed issue with upload icon

* Fixed null ptr issue on changing modes

* Improved recycler view

* Fixed irrelevant network call

* Fixed irrelevant network call

* Fixed constantly failing uploads

* Fixed constantly failing uploads

* Fixed constantly failing uploads

* Added error log

* Fixed refresh icon visibility in light mode

* Changed progress in progress activity

* Fixed progress bar issue

* Improved icons

* Improved deletion and removed cancelledUploads Hashset

* Fixed sorting, list size issue

* Improved current implementation

* Implemented flag for workers

* Implemented flag for workers

* Fixed sorting bug

* Fixed upload icon

* Improved pausing

* Made changes to visibility implementation

* Added image duplicity check on restart of failed image

* minor adjustments

* added javadoc/kdoc and fixed minor bug

* Fixed unit tests

* Added synchronized(lock)

* Added check to prevent multiple uploads starting at once

* Ignored failing test cases

* Temporary commit - Added jcenter

* Temporary commit - Removed library/commented

* Temporary commit - Removed library/commented

* Updated com.jraska.livedata:testing-ktx

* Ignored failing test - UploadControllerTest.kt

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadModelUnitTest

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadPresenterTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing tests - UploadRepositoryUnitTest.kt

* Ignored failing test - UploadRepositoryUnitTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - DepictedItemTest.kt

* Ignored failing test - FilesUtilsTest.kt

* Ignored failing test - WikiBaseClientUnitTest.kt

* Ignored failing test - WikiBaseClientUnitTest.kt

* Ignored failing test - WikiBaseClientUnitTest.kt

* Ignored failing test - WikidataClientTest.kt

* Ignored failing test - WikidataClientTest.kt

* Fixed unit tests

* Updated kdoc

---------

Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
2024-08-30 15:22:54 +09:00
translatewiki.net
62d6dea219
Localisation updates from https://translatewiki.net. 2024-08-29 14:01:37 +02:00
Rohit Verma
190135d36c
Fix failing tests for updateDepictsProperty method (#5795)
* tests: fix failing testUpdateDepictsProperty

* replace deprecated circular progress bar with material progress bar

* refactor: update SettingsActivity to not use custom appCompatDeletegate

It is required because that delegate is automatically handled in new libraries.
2024-08-28 15:29:16 +09:00
Rohit Verma
ec4a6bc0c4
remove asynchronous call to fetch local depictedItems (#5792) 2024-08-27 23:07:12 +09:00
translatewiki.net
39a0b88e3a
Localisation updates from https://translatewiki.net. 2024-08-26 14:02:06 +02:00
Rohit Verma
46df64d208
Prevent deletion of other structured data when editing depicts (#5741)
* restructure :  minor changes to comments to improve readability

* api: remove clear flag to prevent deletion of structured data

* WikiBaseInterface: add new api methods

Get Method: to get claims for an entity
Post method: to delete claims

* WikiBaseClient: add methods to handle response for new APIs

* typo:  update call to method with updated typo

* DepictEditHelper: call update property method with entity id

* refactor: dismiss progress dialog on error

* DepictsDao: remove usage of runBlocking as it was blocking main thread

Refactor methods to perform well with coroutines

* refactor: update usage of method to match changes in DepictsDao

* refactor: use named parameters to improve readability

* claims: add new data classes to represent remove claims

* WikidataEditService: modify update depicts property method

Performs deletion of old claims and creation of new claims

* refactor: make methods more organized
2024-08-26 15:43:50 +09:00
djbloop
31bb1a73c0
First of two fixes for bug #5726: hide nominate for deletion when logged out (#5773) 2024-08-26 13:24:15 +09:00
ujjwal2900
096c075548
Removed duplicate code in addMarkersToMap method (#5783) 2024-08-25 13:01:55 +09:00
Nicolas Raoul
a81d48cc9d
Updating jraska/livedata-testing for GSoC (#5785) 2024-08-22 22:41:27 +09:00
translatewiki.net
a3a5980ebd
Localisation updates from https://translatewiki.net. 2024-08-19 14:02:05 +02:00
translatewiki.net
060d41f973
Localisation updates from https://translatewiki.net. 2024-08-15 14:01:56 +02:00
translatewiki.net
dc6cc82751
Localisation updates from https://translatewiki.net. 2024-08-12 14:01:56 +02:00
translatewiki.net
9a31d2318e
Localisation updates from https://translatewiki.net. 2024-08-08 14:01:40 +02:00
translatewiki.net
862f8f0b04
Localisation updates from https://translatewiki.net. 2024-08-05 14:01:44 +02:00
Kanahia
2d63f351ed
Made Split to Nearby Query into a fast query for coordinates + a details query for each pin (#5731)
* Splitted the query

* Made changes to the query

* Improvised query

* Improvised query by dividing in the batches

* Fixed failing tests

* Improved batches

* Improved sorting

* Fixes issue caused by search this area button

* Fixed failing tests

* Fixed unnecessary reloads on onResume

* Fixed few pins not loading on changing apps

* Improved zoom level and fixed the pins not loading from the center

* Removed toggle chips and changed pin's color

* Fixed wikidata url

* Fixed unit tests

* Implemented retry with delay of 5000ms

* Fixed exception issue and pins issue

* Added change color icon to pin

* Improved pin clicking

* Removed search this area button

* Implemented caching of places

* Fixed unit test

* Factorized methods

* Changed primary key from location to entity id

* Fixed tests

* Fixed conflicts

* Fixed unit test

* Fixed unit test

* Fixed the bug

* Fixed issue with pin loading on the first launch

* Updated javadocs

* Temporary commit - only for testing

* Replaced Temporary commit

* Temporary commit - Added jcenter

* Made minor changes

* Fixed unit tests

* Fixed unit tests

* Fixed minor bug
2024-08-04 09:35:09 +09:00
translatewiki.net
ba6c8fe8d0
Localisation updates from https://translatewiki.net. 2024-08-01 14:01:42 +02:00
translatewiki.net
dbfe3b50f9
Localisation updates from https://translatewiki.net. 2024-07-29 14:02:27 +02:00
translatewiki.net
59da70aca1
Localisation updates from https://translatewiki.net. 2024-07-25 14:01:45 +02:00
translatewiki.net
d2d8eb9153
Localisation updates from https://translatewiki.net. 2024-07-22 14:01:59 +02:00
Kaartic Sivaraam
7d9f8d27bc
menu: rename menu as "User profile" (#5771)
As suggested by @whym on #5754, the name "User page" is ambiguous with
the on-wiki user page. We actually show the leaderboard when the menu
is clicked on. So, rename the menu as "User profile" instead.

Ref: https://github.com/commons-app/apps-android-commons/issues/5754#issuecomment-2196796213
2024-07-20 23:19:16 +10:00
Matija Nalis
7f6b45aeb6
Update allowed recent years to include 2020s (#5761)
* document regex due to #47

* also count 2020s as "recent years"

* clarify that not all years are ignored

* clarify "year" is current year

* original logic fix
from https://github.com/commons-app/apps-android-commons/pull/5761#pullrequestreview-2144120347

* better variale name for ".*0s.*"
as that regex will match e.g. `1920s` and `80s` too, so the original `is20xxsYear` would be confusing name for it

* consolidate duplicated code to spammyCategory

* clarify regexes via variables

* spammyCategory should always be skipped

* return is simple now, so we can get rid of extra val oldDecade

* fix curYearInString

* some clarification comments

* refactor: rename containsYear to isSpammyCategory

This is done as the name containsYear is ambiguous.
It not just checks for year to identify spammy categories.

* refactor: rename containsYear to isSpammyCategory (take 2)

 A continuation of fe74c77ab (refactor: rename containsYear
 to isSpammyCategory, 2024-07-17)

---------

Co-authored-by: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
2024-07-20 23:16:20 +10:00
Amir E. Aharoni
34addbe33a
Remove unnecessary double quotes from a message (#5777) 2024-07-18 11:47:03 +09:00
Kaartic Sivaraam
5be76044b1
wikidata-feedback: avoid sentence lego (#5775)
Fixes #5763
2024-07-17 16:22:41 +09:00
translatewiki.net
73e9ed8e26
Localisation updates from https://translatewiki.net. 2024-07-15 14:02:06 +02:00
translatewiki.net
4d8a7dc138
Localisation updates from https://translatewiki.net. 2024-07-11 14:02:14 +02:00
Amir E. Aharoni
5bcbaa1beb
Improve the messages about being in a different place (#5764)
Remove parentheses and comma splice,
and replace them with more straightforward grammar.
2024-07-08 23:16:26 +09:00
translatewiki.net
018a924c53
Localisation updates from https://translatewiki.net. 2024-07-08 14:02:00 +02:00
Kanahia
3779cfb6a5
Added Wikitalk Page (#5740)
* Added wikitalk page and improved bottomsheet for landscape mode

* Improved wikitalk page

* Fixed italics

* Fixed little bug

* Improved the wiki talk page

* .

* changed commons url to wikidata url

* changed commons url to wikidata url + 1

* fixed bookmark issue

* Added kdoc and javadoc

---------

Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
2024-07-08 15:13:57 +09:00
Kaartic Sivaraam
36905711d0 Version v5.0.2 2024-07-07 01:05:55 +05:30
translatewiki.net
05ffd123e4
Localisation updates from https://translatewiki.net. 2024-07-04 14:01:57 +02:00
translatewiki.net
923acd802c
Localisation updates from https://translatewiki.net. 2024-07-01 14:01:39 +02:00
translatewiki.net
f8e1030164
Localisation updates from https://translatewiki.net. 2024-06-27 14:01:37 +02:00
translatewiki.net
63ec5c8433
Localisation updates from https://translatewiki.net. 2024-06-20 14:01:59 +02:00