* Part of issue #5996: Fix IDE warnings in ContributionsListFragment (naming, null-safety, deprecations)
* Part of issue #5996: Clean final IDE warnings (parameter name alignment, remove redundant toggle)
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Make OkHttpConnectionFactory raise MwIOException when a non-suppressed API call returns an error
* Add AlertDialog displaying specific error message when categories search API call returns an error
* Add test for error alert dialog to UploadCategoriesFragment unit tests
* Add error handling when API call fails to CategoriesPresenter.onAttachViewWithMedia
I noticed this issue years ago because it used a hard-to-understand
string that needed better documentation (see #688). I forgot it,
but recently, I started to explore the app much more deeply and
came back to it.
It looks like this string is only used in this layout element,
but the element itself is not used anywhere. It usage appears to
have been removed in #634.
* Disable hardware acceleration and keyboard animation
This is a temporary commit to see if it fixes issue #3364
* Remove unused import
* Bump up version code and modify version name
* Modify handleKeyboardInsets to handle insets correctly
* Refactor handleKeyboardInsets()
* Refactor handleKeyboardInsets()
* Fix inset in login activity
* Add braces to conditions.
* Remove an unnecessary semicolon.
* Remove an unnecessary constructor.
This fixes all the Java lint errors of these types.
Strings files for he, id, yi were replaced with iw, in, and ji in 2016.
Those files cause build warnings, and they aren't used,
so it's OK to just remove them.
* test:add mock JSON resource files for campaigns API responses
* feat:make campaign model fields mutable to allow for correct deserialization
* test:implement unit tests for fetching campaigns and fix DTO mocking logic
* test:implement unit tests for fetching campaigns and fix DTO mocking logic
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Change trivial string formatting and function calls
for Timber logging.
This resolves all the lint warnings in the
Android/Lint/Correctness/Messages group.
Lint recommended replacing Switch with SwitchMaterial.
This was a very simple replacement, and I tested it in
the custom selector, where it is used, and it works as
it worked previously.
* Update alternative texts for the welcome screen
I've also updated their documentation for translators (qq)
in transltaewiki itself.
Resolves#689.
* Fixed typo
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
I was working on this file recently, and Android Studio
showed a warning that it has tabs instead of spaces,
so here's it's fixed.
A minor thing, but prevents distractions.
The "Inspect Code" linter complained that these two files
had Right-to-left text compatibility issues. I couldn't
really see any problems neither in English nor in Hebrew,
but the linter's suggestion still made sense, so I cleaned it up.
This fixes all the errors of the type
"Android Lint: Internationalization / Right-to-left text compatibility issues".
There should be a comma before "etc." in a list,
and there already is a comma before "etc."
in the string depicts_search_text_hint, so it should be
in this string to for consistency.
Resolves issue #6492.
Remove the title of a web activity and the accompanying
string resource.
This was not a real translatable message, but something that
looks more like an identifier that shouldn't be translated.
As far as I can tell, it's not seen anywhere in the interface
because the actual title is set in the code that calls it.
This fixes the layouts to work in both left to right (LTR)
and right to left (RTL) languages.
Also replace two hard-coded strings in the depicts picker
with proper string resources.
Fixes#6502.
All these messages are not really necessary because
the app has its own localizations, and android.R.string
sometimes doesn't display the localized string.
Resolves#6470.
Make the text of the panel consistent with its title.
The title is "Featured images", so the text should
use the same term.
Also move this resource next to the title, to make it easier
for the translators.
* Prevent IndexOutOfBoundsException in setUploadMediaDetails by validating index and list size (#6404)
* fixed UninitializedPropertyAccessException by safely initializing and accessing imageAdapter (#6404)
* fixed indexOutOfBoundsException by safely handling saved state and index in onViewCreated (#6404)
* resolve Unresolved reference by replacing setImageToBeUploaded with direct field assignments (#6404)
* Fix test compilation by removing obsolete testSetImageToBeUploaded and adding tha testInitializeFragmentWithUploadItem (#6404)
* Fix test compilation by removing testInitializeFragmentWithUploadItem with unresolved onImageProcessed (#6404)
* fix: test failures in UploadMediaDetailFragmentUnitTest by removing obsolete tests and initializing defaultKvStore (#6404)
* Fixed all the typos
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
I was going over all the strings and documenting them (see #6457),
and I had a very hard time understand what this message does.
I read the code and finally figured it out. I added qq documentation
for it so now it's clearer, but I also think that the English
message can be clearer:
* "subsequent" changed to "the next" - shorter, easier word.
* "media" changed to "item" - "media" could mean a lot of things,
and "item" is clearer in this context.
* DatabaseUtils.kt: change getString() to allow null returns
Before this change, a call to getString() would assume that the specified column
name actually exists. A bad String input would cause a null value to be returned
to getString(), which would then throw a NPE because getString() can only return
non null Strings.
This change expands the getString() method to check if the column name exists.
If it does exist, the String is retrieved normally. Else, a null value is
returned. The method signature is changed to allow null return values.
* *Dao.kt: change some usages of getString()
Before this change, the getString() method in DatabaseUtils.kt was changed
to allow returning a null value upon method failure. All usages of getString()
were not changed.
This change updates all usages of getString() which require non null return
values. If null is returned, an empty string is used instead.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Its usage was removed from the file
app/src/main/res/layout/fragment_achievements.xml in a8387f0,
but the message remained in the strings file.
Resolves#6456.
As I was documenting undocumented strings (see #6457), I noticed
that two messages are only used once in a few lines of code that
were commented out in 2023.
To clean up the messages, I am removing them from the strings
list and deleting the commented-out code.
Android Studio reported that there's an identifier
with a non-ASCII letter. It was nearbyFılterStateInstance,
with a Turkish dotless i. I renamed to ASCII dotted i.
This brings the number of Internationalization
issues in Inspect Code to zero.
* added hash code to folder.kt and image.kt to pair with equals
* fixed deprecation in readParcelable function
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Another comment: While working on this, I also noticed that
"Recent Searches" is hardcoded in the XML file, and
I'm not sure where does it actually appear. I fixed it, too,
but perhaps it can be completely removed.
Fixes#6439.
* Fix#6409: Add listener call in ImageAdapter to update UI and upload button on deselection
* Fix image deselection issue in ImageAdapter to update UI correctly (#6409)
* Prevent duplicate image selections on multiple taps in ImageAdapter when showAlreadyActionedImages is off (#6409)
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* fix: enable h/w acceleration for UploadActivity to resolve ime issue
* fix(upload): handle keyboard insets for bottom buttons at Depicts step
* fix(upload): handle keyboard insets for buttons at select category step
* fix(upload): hide keyboard before navigating to Media License screen
This solves keyboard opened at the License screen issue, if we proceed by pressing next at the Upload Categories screen when the keyboard is opened
* activity_review.xml: add new GUI elements to replace old ones
Before this commit, the info icon shared the same GUI element with the "Skip this image" text.
This made the Kotlin code to handle taps on the info icon difficult to write, and would crash
with a NPE when the user used a language that is read right to left and the info icon was pressed.
This commit creates new GUI elements. Notably, the info icon has it's own element. A LinearLayout
is used to place the skip button and the info icon button together. Kotlin code can now be
simplified and the NPE bug can be fixed.
* ReviewActivity.kt: simplify info icon code to work with some languages
Before this commit, if the language was set to a language that is read right to left,
pressing the info icon would crash the app with a NPE. This was because the Kotlin
code assumed that the icon would always be on the right of the skip button
(index 2 in the drawable array). When a right to left language was used, the icon
would be on the left and index 2 would be null.
This commit builds upon prior GUI changes. The info icon now has its own button.
Kotlin changes now remove the use of the drawable array to find the info icon and
instead directly references the new info icon button. The info icon button now works
properly for both left-to-right and right-to-left languages while maintaining correct
positioning.
* activity_review.xml: fix xml to be more readable
This commit moves around some lines in the XML to make it more readable.
* activity_review.xml: change button configuration
This change simplifies the button configuration XML and makes the info icon button slightly smaller
---------
Co-authored-by: Ritika Pahwa <83745993+RitikaPahwa4444@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Fix: URL generation for GlobalFileUsage in FileUsagesUiModel.kt for issue #6307
* Add clickable functionality to 'Usages on Other Wikis' in FileUsagesContainer for issue #6307
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
It fixes crash when opening certain screens like Contribution Details, Bookmark, etc. on lower Android versions
Co-authored-by: Ritika Pahwa <83745993+RitikaPahwa4444@users.noreply.github.com>
* chore: upgrade target SDK and refactor function signatures to resolve build issues
* chore: bump android gradle plugin version
* chore(ui): add extension functions for applying edge to edge insets
* fix: apply system bar top and bottom insets for edge to edge
* fix: force edge to edge for backward compatibility and consistent UI
* fix: apply top bar insets as padding and make the status bar color white
Since the toolbars have primary color as bg, we should make the status bar white
* chore: bump robolectric version for API 35 compatibility
* fix: preserve existing margins when adding new insets
* feat(customselector): improve RecyclerView edge-to-edge inset handling
It allows the last item to sits above the navigation bar while preserving edge-to-edge appearance.
* feat(notification): improve RecyclerView edge-to-edge insets handling
Also, refactor LocationPicker and DescriptionEdit activities to use extension functions and reduce duplication
* fix(quiz): enable and handle edge-to-edge insets and status icon colors
* fix: bottom insets not dispatched on all API versions consistently
Upgraded core-ktx version installCompatInsetsDispatch wasn't available on current version
* fix: return fallback value when versionName is null
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix: resolve compilation errors
* docs: add KDoc for edge-to-edge insets utility functions
* fix(SearchActivity): apply insets for system bars
* fix(util): add utility function to handle keyboard insets with animation
* fix(upload): handle keyboard insets for upload media detail card view
* fix(login): hadle IME insets and make edge-to-edge backward compatible
---------
Co-authored-by: Ritika Pahwa <83745993+RitikaPahwa4444@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Fix java.lang.SecurityException for ACTION_OPEN_DOCUMENT
* Handle SecurityException in case of multi-upload
* Remove unused import
* Clean up code
* Clean up code
* Handle SecurityException for other upload methods
* Release persisted URI permissions for successful uploads
* Remove persistable permission for custom picker as it's not required
* Remove persistable permission for in-app camera as it's not required
* Support both label and itemLabel for robust NearbyResultItem mapping.
* fix code style
* Add getOriginalLabel() for Wikidata edits to avoid fallback issues with itemLabel
* Fix Wikidata edit failure by resetting hasInvalidLocation flag on upload confirmation
---------
Co-authored-by: Sonal Yadav <sonalyadav@Sonals-MacBook-Air.local>
* Convert WikidataItemDetailsActivity to kotlin
* Convert RecentSearchesDao to kotlin
* Convert RecentSearchesFragment to kotlin
* Convert ExploreListRootFragment to kotlin
* Convert the ParentViewPager to kotlin
* Convert ExploreMapRootFragment to kotlin
* Convert SearchActivity to kotlin
* Convert ExploreFragment to kotlin
* Convert ExploreMapCalls and ExploreMapContract to kotlin
* Convert ExploreMapController to kotlin
* Convert the map presenter to kotlin
* Convert the ExploreMapFragment to kotlin
* Fix import issue
* Convert BookmarkItemsController to kotlin
* Split BookmarkItemsDao apart and converted to Kotlin
* Convert and cleanup content providers
* Convert BookmarkItemsFragment to kotlin
* Convert BookmarkPicturesFragment to kotlin
* Convert BookmarkPicturesDao to kotlin and share some useful DB methods
* Convert BookmarkPicturesController to kotlin
* Convert BookmarkFragment to kotlin
* Convert BookmarksPagerAdapter to kotlin
* Convert BookmarkListRootFragment to kotlin
* Set imeOptions to actionDone and enforce singleLine for xlarge
* Set imeOptions to actionDone and enforce singleLine for landscape
* Set imeOptions to actionDone and enforce singleLine
* Update askUserForTwoFactorAuth for IME_ACTION_DONE to trigger performLogin
* Fix email verification: Set imeOptions to actionDone and replace singleLine with maxLines=1
* Fix email verification: Set imeOptions to actionDone and replace singleLine with maxLines=1
* Fix email verification: Set imeOptions to actionDone and replace singleLine with maxLines=1
* feat: Set imeOptions to actionNext for login_password to improve focus transition
* feat: Enhance keyboard visibility for email verification code input
* Optimize SPARQL query for single entity metadata using wikibase:label service
- Use SERVICE wikibase:label for efficient retrieval of labels and descriptions in preferred language
- Remove redundant label/description fetching logic
- Prevent Cartesian product and improve query performance for
* appeded all possible Wikidata languages
* Remove duplicate 'en'
* Update query_for_item.rq
* formatting, comments
---------
Co-authored-by: Sonal Yadav <sonalyadav@Sonals-MacBook-Air.local>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert Caption to kotlin
* Convert CaptionListViewAdapter to kotlin
* Convert CaptionListViewAdapter to kotlin
* Removed unused class
* Converted MwParseResult / MwParseResponse to kotlin
* Convert CustomOkHttpNetworkFetcher to kotlin
* Break up MediaDetailPagerFragment to make it easier to convert to kotlin
* Convert MediaDetailProvider to kotlin
* Convert the MediaDetailAdapter to kotlin
* Convert MediaDetailPagerFragment to kotlin
* Converted welcome activity / pager to kotlin
* Removed unused interface
* Convert ViewPagerAdapter to kotlin and enforce that all tabs must have a title that comes from strings.xml
* Convert OkHttpConnectionFactory and remove an exception class nobody was using
* Convert MapController to kotlin along with fixing nullability in a few places
* Update bug-report.yml to use Type:bug label as per issue #6356
* Update bug-report.yml to use type: bug and labels: ['Type: bug'] as per issue #6356
* Update bug-report.yml to use type: Bug and revert labels to ['bug'] as per mentor's feedback for issue #6356
* Remove labels field from bug-report.yml as per feedback for issue #6356
---------
Co-authored-by: Ritika Pahwa <83745993+RitikaPahwa4444@users.noreply.github.com>
* Unused class removed
* Convert BasePresenter to kotlin
* Removed redundent class
* Move the Utils class into the utils package
* Inline the creation of a page title object
* Move license utilities into their own file
* Inline app rating since its only ever used in 1 place
* Moved GeoCoordinates utilities into their own class
* Moved Monuments related utils into their own class
* Moved screen capture into its own util class
* Moved handleWebUrl to its own utility class
* Moved fixExtension to its own class
* Moved clipboard copy into its own utility class
* Renames class to match remaining utility method
* Convert UnderlineUtils to kotlin
* Converted the copy-to-clipboard utility to kotlin
* Converted license name and url lookup to kotlin
* Converted fixExtension to kotlin
* Convert handleGeoCoordinates to kotlin
* Monument utils converted to kotlin
* Convert then inline screeen capture in kotlin
* Convert handleWebUrl to kotlin
* NearbyParentFragment.kt: add helper methods for user location overlays and accuracy data.
Before this commit, the code used to create the user location overlays was in multiple places.
Additionally, there was no easy way to access the location accuracy.
This commit places the user location overlay creation code into helper methods, as well as adding
a new location accuracy getter method. These methods can now be used to refactor other parts of the file.
* NearbyParentFragment.kt: create method to update user location overlays
Before this commit, there was no easy way to update the user location overlays.
This commit adds the updateUserLocationOverlays() method, which will properly replace
the old user location overlays with new ones. It will also add the overlays if they
do not already exist.
* NearbyParentFragment.kt: replace old code with calls to updateUserLocationOverlays()
This commit completes the refactor and fixes the issue of the user overlays not
updating. The new method updateUserLocationOverlays is called to refactor and simplify
old code.
* Removal of file is not related to the issue, but is needed for project to compile and run.
* NearbyParentFragment.kt: fix bug where multiple user location overlays would appear
Before this commit, the user could see multiple user location overlays if they paused the app and reopened it when
there are no Places/pins on the map. This was caused by a linear search failing to identify the target overlay
because it compared Drawables between two Overlays, which was unreliable.
This commit contains a better solution for replacing existing user location overlays by adding 2 instance variables
to keep track of the overlays. The position of these overlays in the overlay list can then be found by using indexOf()
with these instance variables rather than the linear search that was implemented before. Some refactoring was also done.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* fix: infinite loading progress bar after nominating for deletion
* add logs for testing
* refactor: use globalFileUsage instead of achievement to append in reason
Fetching achievements is a time consuming operation and globalFileUsage gives the similar result in optimal time
* test(ReasonBuilder): fix tests according to new behavior
* refactor: remove logs added for testing
* test: await for async getReason method call
---------
Co-authored-by: Neel Doshi <neeldoshi147@gmail.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Before these changes, when a user tapped on an icon in the Explore Map, the icon and label would often
appear underneath other icons, making it difficult or impossible to read the text on the label.
These changes add two methods that search for and move the icon/label Overlays above all other icons and overlays.
These two methods are called when the user taps on an icon.
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Before this change, removeMarker() would search for the correct Overlay by doing a linear
search and matching the BaseMarker's Place name with the Overlay's title.
This stopped working once the Overlay's title text was changed to be more user friendly.
This change implements a more robust solution. A map is used to directly associate
BaseMarkers with the matching Overlay. The overlay can now be removed from the
overlay list without using any of the information contained within the BaseMarker
or Overlay.
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* refactor: replace unused exception variable with underscore
* refactor: code style fix
* fix: remove unnecessary latLng variable and return null directly
* fix: use explicit true/false instead of isFABsExpanded
* refactor: simplify marker update logic by reducing redundant conditions
* refactor: use data object instead of object
* fix: check placeBindings for null instead of checking each destructured value
* fix: check placeBindings for null instead of checking each destructured value
* docs: fix KDoc for contentUri property by removing incorrect @param tag
* docs: correct @see link in KDoc for showBadgesWithCount
* docs: fix KDoc tag from @property to @param for context in BottomSheetAdapter
* docs: comment out KDoc for disabled method to avoid unresolved @param warning
* docs: fix KDoc for onLongPress by removing invalid @param imageUri
* docs: clean up invalid KDoc tags on property and add docs to isEmpty
* docs: remove invalid @param originalImageCoordinates from findOtherImages KDoc
* docs: fix incorrect @param tag in checkDuplicateImage KDoc
* docs: fix incorrect @param in onLongPress KDoc
* docs: fix invalid @param and @return tags on author property
* docs: fix incorrect @param in provideWikidataMediaInterface KDoc
* docs: fix incorrect @param name in getWikiText KDoc
* docs: escape wikilinks with [[ ]] to avoid KDoc resolution warnings
* docs: fix KDoc by adding missing param descriptions to startActivityWithFlags
* docs: fix KDoc by replacing @param with @property for contentUri
* docs: fix malformed KDoc in startYourself, remove invalid @param line
* docs: remove invalid @param tag in createDialogsAndHandleLocationPermissions
* docs: remove invalid @param tags to @property
* @docs: remove invalid @property tags
* docs: clean up KDoc by removing invalid @param and @return tags
* docs: fix incorrect @param name in removeBlocklisted KDoc
* docs: fix incorrect @param name in checkDuplicateImage KDoc
* docs: fix incorrect @param tag
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* chore: migrate groovy build files to Kotlin DSL and upgrade AGP
chore: use version catalog to manage dependencies
chore: move plugins to version catalog
remove deprecated way of enabling build-config and redundant code
chore: setup triplet-play plugin configuration
refactor: move dependency block and tasks to the end of build file
refactor: move dependency block and mark redundant dependencies
* cleanup: remove redundant dependencies from build file
* cleanup: remove git utils file as the functions moved to build file
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Fix crash when uploading a duplicate file
* Fix: app crash
* added Kdoc
* remove line b/w kdoc and function
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* ExploreMapFragment.java: add helper methods and fields to enable proper Explore map behavior
Before this commit, there was no way to tell if the user had arrived from the Nearby and
before the Nearby map center location had been searched for markers.
This commit adds a boolean flag to indicate this situation. Access, modification, and
initialization methods were added for this boolean value. Additionally, a helper
method to retrieve the Nearby map center LatLng was added as a convienience.
* ExploreMapPresenter.java: fix map update code to search for Nearby LatLng when appropriate
Before this commit, when the user selected "Show in explore" in Nearby when no pins were
on the map, Explore would only search for markers at the user's current GPS location,
rather than those at the Nearby map center.
After this commit, code was added to check if the user recently came from the Nearby map.
If so, the stored coordinates of the Nearby map is searched rather than the user's current
GPS coordinates. Additionally, the boolean that indicates that the user recently came
from the Nearby map is set to false. This ensures that the stored Nearby map center
coordinates are not used when the user taps the icon to focus the map on their
current location.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* 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>
* Exclude past locations (P585) from Nearby query
* "Send" button text should be white
* Custom picker: logic
* Revert back changes
* Enhancement :- Explore Map information
* Enhancement :- Explore Map information
* Style
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Before this change, the removeMarker() method would determine the correct overlay to remove
by comparing an overlay's Place coordinates with the target BaseMarker's Place coordinates.
If two different markers had the same Place coordinates, the incorrect marker would be removed,
leading to more than one green label appearing on the screen.
After this change, the removeMarker() method now compares an overlay's title with the BaseMarker's
Place name. removeMarker() will work properly as long as all BaseMarker's Place names are unique.
Also, null checks were added to removeMarker().
replace deprecated onBackPressed with onBackPressedCallback
remove unit test for deprecated onBackPressed method
remove if-check before deleting picture to prevent hiding top thumbnail card
hide the thumbnail card on fragments other than MediaDetailFragment
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Before this change, the labels that would appear on the marker when tapped did not include
the author or username. Instead, it displayed "Unknown".
After this change, the labels now display the author name. If the author name is not
available, the username will be displayed. If both are unavailable, the default value
of "Unknown" will be displayed. To improve the readability of the text, any HTML text
is removed from the username/author.
* "moved privacy policy"
* Update PRIVACY_POLICY_URL to https://commons-app.github.io/privacy-policy as suggested
* Use BuildConfig.PRIVACY_POLICY_URL in launchPrivacyPolicy function
* Rename .java to .kt
* Refactor: Migrate bookmark location logic to Kotlin
This commit migrates the bookmark location logic to Kotlin, enhancing code maintainability and readability.
- Removes the `BookmarkLocationsContentProvider`, `BookmarkLocationsController`, and `BookmarkLocationsDao` Java classes.
- Creates `BookmarkLocationsDao.kt` and `BookmarkLocationsContentProvider.kt` in Kotlin.
- Migrates the logic from `BookmarkLocationsFragment.java` to `BookmarkLocationsFragment.kt`.
- Updates test files to reflect these changes.
- Addresses associated code review comments.
* Refactor: Migrate to Room Database for Bookmark Locations
This commit migrates the bookmark locations functionality from a custom content provider to Room database.
Key changes:
* **Removal of `BookmarkLocationsContentProvider`:** This class, which previously handled data storage, has been removed.
* **Introduction of `BookmarksLocations`:** This data class now represents a bookmarked location, serving as the Room entity.
* **Creation of `BookmarkLocationsDao`:** This Room DAO handles database interactions for bookmark locations, including:
* Adding, deleting, and querying bookmarked locations.
* Checking if a location is already bookmarked.
* Updating the bookmark status of a location.
* Retrieving all bookmarked locations as `Place` objects.
* **`BookmarkLocationsViewModel`:** Added to manage the data layer for bookmark locations
* **`NearbyUtil`:** Created a Util class for Nearby to manage the bookmark locations.
* **Updates in `PlaceAdapter` and `PlaceAdapterDelegate`:** These classes have been modified to work with the new Room-based data layer.
* **Updates in `AppDatabase`:** The database now includes `BookmarksLocations` as an entity and exposes the `bookmarkLocationsDao`.
* **Updates in `FragmentBuilderModule` and `CommonsApplicationModule`**: for DI
* **Removal of `DBOpenHelper` upgrade for locations**: as it is no longer needed
* **Updates in `NearbyParentFragmentPresenter`**: refactored the logic to use the dao functions
* **Updates in `NearbyParentFragment`**: refactored the logic to use the util and dao functions
* **Update in `BookmarkLocationsController`**: removed as its no longer needed
* **Add `toPlace` and `toBookmarksLocations`**: extension functions to map between data class and entities
* **Update in `CommonsApplication`**: to remove old db table.
* Refactor: Improve bookmark location handling and update database version
This commit includes the following changes:
- Updates the database version to 20.
- Refactors bookmark location handling within `NearbyParentFragment` to improve logic and efficiency.
- Introduces `getBookmarkLocationExists` in `NearbyUtil` to directly update bookmark icons in the bottom sheet adapter.
- Removes unused provider.
- Adjusts `BookmarkLocationsFragment`'s `PlaceAdapter` to use `lifecycleScope` for better coroutine management.
- Refactors `updateBookmarkLocation` in `NearbyParentFragmentPresenter`.
* Toggle bookmark icon in BottomSheetAdapter instead of finding the location each time in the bookmark
* Update bookmark button image in `BottomSheetAdapter`
* Add new toggle function to `BottomSheetAdapter`
* Call the toggle function in `NearbyParentFragment`
* Refactor: Load bookmarked locations using Flow
* `BookmarkLocationsController`: Changed to use `Flow` to load bookmarked locations.
* `BookmarkLocationsDao`: Changed to return `Flow` of bookmark location instead of a list.
* `BookmarkLocationsFragment`: Used `LifecycleScope` to collect data from flow and display it.
* Removed unused `getAllBookmarkLocations()` from `BookmarkLocationsViewModel`.
* Used `map` in `BookmarkLocationsDao` to convert from `BookmarksLocations` to `Place` list.
* Loading locations data in fragment
* BookmarkLocationsController: Changed `loadFavoritesLocations` to be a suspend function.
* BookmarkLocationsFragment: Updated the `initList` function to call the controller's suspend function.
* BookmarkLocationsDao: Changed `getAllBookmarksLocations` and `getAllBookmarksLocationsPlace` to be suspend functions.
* Refactor BookmarkLocationControllerTest and related files to use coroutines
* Migrated `bookmarkDao!!.getAllBookmarksLocations()` to `bookmarkDao!!.getAllBookmarksLocationsPlace()` and added `runBlocking`
* Added `runBlocking` for `loadBookmarkedLocations()` and `testInitNonEmpty()`
* Added `runBlocking` for `getAllBookmarksLocations()` and update `updateMapMarkers`
These changes improve the test structure by ensuring the database functions are executed within a coroutine context.
* Refactor BookmarkLocationsFragment and add tests for BookmarkLocationsDao
* Moved `initList` to `BookmarkLocationsFragment` for better lifecycle handling.
* Added test case for `BookmarkLocationsFragment`'s onResume.
* Added test cases for `BookmarkLocationsDao` operations like adding, retrieving, finding, deleting and updating bookmarks.
* Refactor BookmarkLocationsFragment to load favorites only when view is not null
* BookmarkLocationsFragment: load favorites locations only when view is not null.
* BookmarkLocationsFragmentTest: added spy and verify to test onResume() call initList() method.
* Refactor database and add migration
* `AppDatabase`: Updated to use room migration.
* `CommonsApplicationModule`: added migration from version 19 to 20 to `appDatabase`
* Rename .java to .kt
* Refactor: Migrate bookmark location logic to Kotlin
This commit migrates the bookmark location logic to Kotlin, enhancing code maintainability and readability.
- Removes the `BookmarkLocationsContentProvider`, `BookmarkLocationsController`, and `BookmarkLocationsDao` Java classes.
- Creates `BookmarkLocationsDao.kt` and `BookmarkLocationsContentProvider.kt` in Kotlin.
- Migrates the logic from `BookmarkLocationsFragment.java` to `BookmarkLocationsFragment.kt`.
- Updates test files to reflect these changes.
- Addresses associated code review comments.
* Refactor: Migrate to Room Database for Bookmark Locations
This commit migrates the bookmark locations functionality from a custom content provider to Room database.
Key changes:
* **Removal of `BookmarkLocationsContentProvider`:** This class, which previously handled data storage, has been removed.
* **Introduction of `BookmarksLocations`:** This data class now represents a bookmarked location, serving as the Room entity.
* **Creation of `BookmarkLocationsDao`:** This Room DAO handles database interactions for bookmark locations, including:
* Adding, deleting, and querying bookmarked locations.
* Checking if a location is already bookmarked.
* Updating the bookmark status of a location.
* Retrieving all bookmarked locations as `Place` objects.
* **`BookmarkLocationsViewModel`:** Added to manage the data layer for bookmark locations
* **`NearbyUtil`:** Created a Util class for Nearby to manage the bookmark locations.
* **Updates in `PlaceAdapter` and `PlaceAdapterDelegate`:** These classes have been modified to work with the new Room-based data layer.
* **Updates in `AppDatabase`:** The database now includes `BookmarksLocations` as an entity and exposes the `bookmarkLocationsDao`.
* **Updates in `FragmentBuilderModule` and `CommonsApplicationModule`**: for DI
* **Removal of `DBOpenHelper` upgrade for locations**: as it is no longer needed
* **Updates in `NearbyParentFragmentPresenter`**: refactored the logic to use the dao functions
* **Updates in `NearbyParentFragment`**: refactored the logic to use the util and dao functions
* **Update in `BookmarkLocationsController`**: removed as its no longer needed
* **Add `toPlace` and `toBookmarksLocations`**: extension functions to map between data class and entities
* **Update in `CommonsApplication`**: to remove old db table.
* Refactor: Improve bookmark location handling and update database version
This commit includes the following changes:
- Updates the database version to 20.
- Refactors bookmark location handling within `NearbyParentFragment` to improve logic and efficiency.
- Introduces `getBookmarkLocationExists` in `NearbyUtil` to directly update bookmark icons in the bottom sheet adapter.
- Removes unused provider.
- Adjusts `BookmarkLocationsFragment`'s `PlaceAdapter` to use `lifecycleScope` for better coroutine management.
- Refactors `updateBookmarkLocation` in `NearbyParentFragmentPresenter`.
* Toggle bookmark icon in BottomSheetAdapter instead of finding the location each time in the bookmark
* Update bookmark button image in `BottomSheetAdapter`
* Add new toggle function to `BottomSheetAdapter`
* Call the toggle function in `NearbyParentFragment`
* Refactor: Load bookmarked locations using Flow
* `BookmarkLocationsController`: Changed to use `Flow` to load bookmarked locations.
* `BookmarkLocationsDao`: Changed to return `Flow` of bookmark location instead of a list.
* `BookmarkLocationsFragment`: Used `LifecycleScope` to collect data from flow and display it.
* Removed unused `getAllBookmarkLocations()` from `BookmarkLocationsViewModel`.
* Used `map` in `BookmarkLocationsDao` to convert from `BookmarksLocations` to `Place` list.
* Loading locations data in fragment
* BookmarkLocationsController: Changed `loadFavoritesLocations` to be a suspend function.
* BookmarkLocationsFragment: Updated the `initList` function to call the controller's suspend function.
* BookmarkLocationsDao: Changed `getAllBookmarksLocations` and `getAllBookmarksLocationsPlace` to be suspend functions.
* Refactor BookmarkLocationControllerTest and related files to use coroutines
* Migrated `bookmarkDao!!.getAllBookmarksLocations()` to `bookmarkDao!!.getAllBookmarksLocationsPlace()` and added `runBlocking`
* Added `runBlocking` for `loadBookmarkedLocations()` and `testInitNonEmpty()`
* Added `runBlocking` for `getAllBookmarksLocations()` and update `updateMapMarkers`
These changes improve the test structure by ensuring the database functions are executed within a coroutine context.
* Refactor BookmarkLocationsFragment and add tests for BookmarkLocationsDao
* Moved `initList` to `BookmarkLocationsFragment` for better lifecycle handling.
* Added test case for `BookmarkLocationsFragment`'s onResume.
* Added test cases for `BookmarkLocationsDao` operations like adding, retrieving, finding, deleting and updating bookmarks.
* Refactor BookmarkLocationsFragment to load favorites only when view is not null
* BookmarkLocationsFragment: load favorites locations only when view is not null.
* BookmarkLocationsFragmentTest: added spy and verify to test onResume() call initList() method.
* Refactor database and add migration
* `AppDatabase`: Updated to use room migration.
* `CommonsApplicationModule`: added migration from version 19 to 20 to `appDatabase`
* Resolve conflicts and attach the `commons.db` with `common_room.db` during the migration to persist the data
* Refactor database migration to handle null values and use direct insertion
* Modify the database migration from version 19 to 20 to properly handle null values and use direct data insertion.
* Create a new table `bookmarks_locations` with `NOT NULL` constraints.
* Directly insert data into the new table from old database, safely handling `NULL` values by using `DEFAULT` empty string value.
* Close old database cursor and the database connection.
* Drop the old `bookmarksLocations` table.
* Refactor database schema to delete `bookmarksLocations` table and migrate data
* Delete `bookmarksLocations` table from the database during schema upgrade
* Migrate data from `bookmarksLocations` to `bookmarks_locations` in new schema
* Add `INSERT OR REPLACE` to prevent duplication during migration
* Delete `CONTRIBUTIONS_TABLE` and `BOOKMARKS_LOCATIONS` in the application start-up to have a fresh DB for first start-up after update
* Update sqlite-based database version to 22.
* Update sqlite-based database version to 22.
* Refactor CommonsApplicationModule to utilize application context
* Initialize and use application context directly
* Utilize lateinit for application context
* Added line breaks for improved readability.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Applied better animation in nearby
* Refactor: Reduce Duration of Rotate Animation
Decreased the duration of the rotate animation from 1000ms to 500ms in `rotate.xml`, resulting in a faster rotation speed.
* Place.java: change getWikiDataEntityID() method to increase speed
Before this commit, this method would perform the String replace method on the Wikidata link every time
getWikiDataEntityID() was called. Also, getWikiDataLink() was called. This caused poor performance
since both method calls are slow.
This commit changes the method to only run the slow methods if the entityID field is empty or
null. Once the field is populated, the method simply returns the field. This change allows
getWikiDataEntityID() to run much faster.
* NearbyParentFragmentPresenter.kt: change async and place update parameters
Before this commit, the parameters that configure the async and place update code contributed to
the slow loading of the red and green map markers.
This commit changes the parameters such that the red and green map markers load much faster.
These parameters may need further tuning. This commit's changes are simply an educated
guess at a good parameter set.
* NearbyParentFragment.kt: rewrite Java Drawable caching code to Kotlin
Before this commit, the code which cached Drawables was written in Java.
This commit rewrites that code into the new Kotlin file, which replaces the Java file.
* NearbyParentFragmentPresenter.kt: change loadPlacesDataAsync to retry HTTP requests after failure
Before this commit, when an HTTP request failed, the entire batch of Places would not get updated,
even if it was only one Place in the batch that caused the failure.
This commit changes the code such that upon HTTP request failure, new HTTP requests are sent with
one Place per request. This allows more Places to be fetched from the server.
* Fix: Resolved the Crash in UploadMediaDetailFragment
* Fix uninitialized basicKvStoreFactory in UploadMediaPresenter
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename .java to .kt
* Migrated ContributionController
* Rename .java to .kt
* Migrated ContributionDao
* Rename .java to .kt
* Migrated ContributionsContract,ContributionFragment,ContributionListAdapter,ContributionsListContract from java to Kotlin
* Rename .java to .kt
* converted/Migrated
* converted/Migrated
* Rename .java to .kt
* Migrated ContributionController
* Rename .java to .kt
* Migrated ContributionDao
* Rename .java to .kt
* Migrated ContributionsContract,ContributionFragment,ContributionListAdapter,ContributionsListContract from java to Kotlin
* Rename .java to .kt
* Show placeholder and display depiction section when no depictions are available (#6163) (#6165)
* corrected
* corrected
* Update MediaDetailFragment.kt
Spelling correction
* Migrated AboutActivity from Java to Kotlin (#6158)
* Rename Constants to Follow Kotlin Naming Conventions
>This PR refactors constant names in the project to adhere to Kotlin's UPPERCASE_SNAKE_CASE naming convention, improving code readability and maintaining consistency across the codebase.
>Renamed the following constants in LoginActivity:
>saveProgressDialog → SAVE_PROGRESS_DIALOG
>saveErrorMessage → SAVE_ERROR_MESSAGE
>saveUsername → SAVE_USERNAME
>savePassword → SAVE_PASSWORD
>Updated all references to these constants throughout the project.
* Update Project_Default.xml
* Refactor variable names to adhere to naming conventions
Renamed variables to use camel case:
-UPLOAD_COUNT_THRESHOLD → uploadCountThreshold
-REVERT_PERCENTAGE_FOR_MESSAGE → revertPercentageForMessage
-REVERT_SHARED_PREFERENCE → revertSharedPreference
-UPLOAD_SHARED_PREFERENCE → uploadSharedPreference
Renamed variables with uppercase initials to lowercase for alignment with Kotlin conventions:
-Latitude → latitude
-Longitude → longitude
-Accuracy → accuracy
Refactored the following variable names:
-NUMBER_OF_QUESTIONS → numberOfQuestions
-MULTIPLIER_TO_GET_PERCENTAGE → multiplierToGetPercentage
* Refactor Dialog View Initialization with Null-Safe Calls
This PR refactors the dialog setup code in CustomSelectorActivity to improve safety and readability by replacing explicit casts with null-safe generic calls for findViewById.
>Replaced explicit casting (as Button and as TextView) with the generic findViewById<T>() method for improved type safety.
>Added null-safety (?.) to avoid potential crashes if a view is not found in the dialog layout.
why changed:-
>Prevents runtime crashes caused by NullPointerException when a view is missing in the layout.
* Refactor Unit Test: Replace Unsafe Casting with Type-Safe Mocking for findViewById
>PR refactors the unit test for NearbyParentFragment by replacing unsafe casting in the findViewById mocking statements with type-safe
>Ensured all findViewById mocks now use a consistent, type-safe format (findViewById<View>(...)) to reduce verbosity and potential casting errors.
>Verified the functionality of prepareViewsForSheetPosition remains unchanged, ensuring no regression in test behavior.
* Update NearbyParentFragmentUnitTest.kt
* Refactor: Rename Constants to Follow CamelCase Naming Convention
>Updated all constant variable names to follow the camelCase naming convention, removing underscores in the middle or end.
>Ensured variable names remain descriptive and align with code readability best practices.
* Replace private val with const val for URL constants in QuizController
* Renaming the constant to use UPPER_SNAKE_CASE
* Renaming the constant to use UPPER_SNAKE_CASE
* Update Done
* **Refactor: Convert `minimumThresholdForSwipe` to a compile-time constant**
* Convert AboutActivity from Java to Kotlin
This PR converts the AboutActivity class from Java to Kotlin
>Testing:
>Verified all functionalities of the AboutActivity, including toolbar setup, intent launches, and dialog interactions, to ensure behavior remains consistent post-conversion.
>Successfully ran unit tests for AboutActivity to confirm the correctness of methods and logic.
* Thank you for the suggestion! Since these methods all take a single View parameter, replacing them with method references is a great way to simplify the code and improve readability. I'll updated the code accordingly. Added a TODO in the code as a reminder to refactor this in the future.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Localisation updates from https://translatewiki.net.
* Feat: Make it smoother to switch between nearby and explore maps (#6164)
* Nearby: Add 'Show in Explore' 3-dots menu item
* MainActivity: Add methods to pass extras between Nearby and Explore
* MainActivity: Extend loadFragment() to support passing fragment arguments
* Nearby: Add ability to navigate to Explore fragment on 'Show in Explore' click
* Explore: Read fragment arguments for Nearby map data and update Explore map if present
* Explore: Add 'Show in Nearby' 3-dots menu item. Only visible when Map tab is selected
* Explore: On 'Show in Nearby' click, navigate to Nearby fragment, passing map data as fragment args
* Nearby: Read fragment arguments for Explore map data and update Nearby map if present
* MainActivity: Fix memory leaks when navigating between bottom nav destinations
* Explore: Fix crashes caused by unattached map fragment
* Refactor code to pass unit tests
* Explore: Format javadocs
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Localisation updates from https://translatewiki.net.
* enhance spammy category filter (#6167)
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* Localisation updates from https://translatewiki.net.
* correction
* correction
* correction
* GitHub workflow to build betaDebug (#6174)
* [Bug fix] Check if duplicate exist using both original and modified file's checksum (#6169)
* check original file's SHA too along with modified one
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* fix tests
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
---------
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* Add multiline input for caption and description (#6173)
* allow multiple lines for description/caption
* make caption multiline too
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* correction
---------
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
Co-authored-by: Akshay Komar <146421342+Akshaykomar890@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: Ifeoluwa Andrew Omole <iomole3@gmail.com>
Co-authored-by: Parneet Singh <111801812+parneet-guraya@users.noreply.github.com>
Co-authored-by: Matija Nalis <mnalis-git@voyager.hr>
* check original file's SHA too along with modified one
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* fix tests
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
---------
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* Nearby: Add 'Show in Explore' 3-dots menu item
* MainActivity: Add methods to pass extras between Nearby and Explore
* MainActivity: Extend loadFragment() to support passing fragment arguments
* Nearby: Add ability to navigate to Explore fragment on 'Show in Explore' click
* Explore: Read fragment arguments for Nearby map data and update Explore map if present
* Explore: Add 'Show in Nearby' 3-dots menu item. Only visible when Map tab is selected
* Explore: On 'Show in Nearby' click, navigate to Nearby fragment, passing map data as fragment args
* Nearby: Read fragment arguments for Explore map data and update Nearby map if present
* MainActivity: Fix memory leaks when navigating between bottom nav destinations
* Explore: Fix crashes caused by unattached map fragment
* Refactor code to pass unit tests
* Explore: Format javadocs
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename Constants to Follow Kotlin Naming Conventions
>This PR refactors constant names in the project to adhere to Kotlin's UPPERCASE_SNAKE_CASE naming convention, improving code readability and maintaining consistency across the codebase.
>Renamed the following constants in LoginActivity:
>saveProgressDialog → SAVE_PROGRESS_DIALOG
>saveErrorMessage → SAVE_ERROR_MESSAGE
>saveUsername → SAVE_USERNAME
>savePassword → SAVE_PASSWORD
>Updated all references to these constants throughout the project.
* Update Project_Default.xml
* Refactor variable names to adhere to naming conventions
Renamed variables to use camel case:
-UPLOAD_COUNT_THRESHOLD → uploadCountThreshold
-REVERT_PERCENTAGE_FOR_MESSAGE → revertPercentageForMessage
-REVERT_SHARED_PREFERENCE → revertSharedPreference
-UPLOAD_SHARED_PREFERENCE → uploadSharedPreference
Renamed variables with uppercase initials to lowercase for alignment with Kotlin conventions:
-Latitude → latitude
-Longitude → longitude
-Accuracy → accuracy
Refactored the following variable names:
-NUMBER_OF_QUESTIONS → numberOfQuestions
-MULTIPLIER_TO_GET_PERCENTAGE → multiplierToGetPercentage
* Refactor Dialog View Initialization with Null-Safe Calls
This PR refactors the dialog setup code in CustomSelectorActivity to improve safety and readability by replacing explicit casts with null-safe generic calls for findViewById.
>Replaced explicit casting (as Button and as TextView) with the generic findViewById<T>() method for improved type safety.
>Added null-safety (?.) to avoid potential crashes if a view is not found in the dialog layout.
why changed:-
>Prevents runtime crashes caused by NullPointerException when a view is missing in the layout.
* Refactor Unit Test: Replace Unsafe Casting with Type-Safe Mocking for findViewById
>PR refactors the unit test for NearbyParentFragment by replacing unsafe casting in the findViewById mocking statements with type-safe
>Ensured all findViewById mocks now use a consistent, type-safe format (findViewById<View>(...)) to reduce verbosity and potential casting errors.
>Verified the functionality of prepareViewsForSheetPosition remains unchanged, ensuring no regression in test behavior.
* Update NearbyParentFragmentUnitTest.kt
* Refactor: Rename Constants to Follow CamelCase Naming Convention
>Updated all constant variable names to follow the camelCase naming convention, removing underscores in the middle or end.
>Ensured variable names remain descriptive and align with code readability best practices.
* Replace private val with const val for URL constants in QuizController
* Renaming the constant to use UPPER_SNAKE_CASE
* Renaming the constant to use UPPER_SNAKE_CASE
* Update Done
* **Refactor: Convert `minimumThresholdForSwipe` to a compile-time constant**
* Convert AboutActivity from Java to Kotlin
This PR converts the AboutActivity class from Java to Kotlin
>Testing:
>Verified all functionalities of the AboutActivity, including toolbar setup, intent launches, and dialog interactions, to ensure behavior remains consistent post-conversion.
>Successfully ran unit tests for AboutActivity to confirm the correctness of methods and logic.
* Thank you for the suggestion! Since these methods all take a single View parameter, replacing them with method references is a great way to simplify the code and improve readability. I'll updated the code accordingly. Added a TODO in the code as a reminder to refactor this in the future.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename Constants to Follow Kotlin Naming Conventions
>This PR refactors constant names in the project to adhere to Kotlin's UPPERCASE_SNAKE_CASE naming convention, improving code readability and maintaining consistency across the codebase.
>Renamed the following constants in LoginActivity:
>saveProgressDialog → SAVE_PROGRESS_DIALOG
>saveErrorMessage → SAVE_ERROR_MESSAGE
>saveUsername → SAVE_USERNAME
>savePassword → SAVE_PASSWORD
>Updated all references to these constants throughout the project.
* Update Project_Default.xml
* Refactor variable names to adhere to naming conventions
Renamed variables to use camel case:
-UPLOAD_COUNT_THRESHOLD → uploadCountThreshold
-REVERT_PERCENTAGE_FOR_MESSAGE → revertPercentageForMessage
-REVERT_SHARED_PREFERENCE → revertSharedPreference
-UPLOAD_SHARED_PREFERENCE → uploadSharedPreference
Renamed variables with uppercase initials to lowercase for alignment with Kotlin conventions:
-Latitude → latitude
-Longitude → longitude
-Accuracy → accuracy
Refactored the following variable names:
-NUMBER_OF_QUESTIONS → numberOfQuestions
-MULTIPLIER_TO_GET_PERCENTAGE → multiplierToGetPercentage
* Refactor Dialog View Initialization with Null-Safe Calls
This PR refactors the dialog setup code in CustomSelectorActivity to improve safety and readability by replacing explicit casts with null-safe generic calls for findViewById.
>Replaced explicit casting (as Button and as TextView) with the generic findViewById<T>() method for improved type safety.
>Added null-safety (?.) to avoid potential crashes if a view is not found in the dialog layout.
why changed:-
>Prevents runtime crashes caused by NullPointerException when a view is missing in the layout.
* Refactor Unit Test: Replace Unsafe Casting with Type-Safe Mocking for findViewById
>PR refactors the unit test for NearbyParentFragment by replacing unsafe casting in the findViewById mocking statements with type-safe
>Ensured all findViewById mocks now use a consistent, type-safe format (findViewById<View>(...)) to reduce verbosity and potential casting errors.
>Verified the functionality of prepareViewsForSheetPosition remains unchanged, ensuring no regression in test behavior.
* Update NearbyParentFragmentUnitTest.kt
* Refactor: Rename Constants to Follow CamelCase Naming Convention
>Updated all constant variable names to follow the camelCase naming convention, removing underscores in the middle or end.
>Ensured variable names remain descriptive and align with code readability best practices.
* Replace private val with const val for URL constants in QuizController
* Renaming the constant to use UPPER_SNAKE_CASE
* Renaming the constant to use UPPER_SNAKE_CASE
* Update Done
* **Refactor: Convert `minimumThresholdForSwipe` to a compile-time constant**
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* feat: show the message "Congratulations, all pictures in this album have been either uploaded or marked as not for upload." in the custom picker when all images are either uploaded or marked.
* refactor: fix indentation in the code
* refactor: replace LiveData with StateFlow
* fix: fixed the bug that was causing one ImageFragment testcase to fail.
* fix: fixed the Congratulation message being shown for a brief moment while switching off the switch
* refactor: move hardcoded string to strings.xml.
* docs: add comment to clarify visibility logic in ImageFragment
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* fix: correctly handle permission callbacks on Main thread
The PermissionUtils was incorrectly executing permission callbacks on a background thread, leading to a Handler error. Now, it is using Main dispatcher.
* fix crash when opening camera while having partial storage access
* Fix NPE with UploadMediaDetails.captionText
* Store P18 instead of processed image url in DepictedItem
* Add routes for fetching category info from titles
* Consider depict's P18 when suggesting categories
* Add tests
* Corrected DepictedItem constructor arguments
* Add test for DepictedItem::primaryImage
This is a change that replicates the fix done via PR #6093.
This is based over v5.1.1 as the fix seems necessary for
the category search to work properly on the explore screen.
* MediaDetailFragment.kt: add helper method to retrieve ContributionFragment instance
Before this commit, there was no easy way to check for and retrieve the ContributionFragment instance that
was either the parent or grandparent (parent's parent) fragment. A complicated if check was required to
retrieve it.
After this commit, there is a simple helper method which will retrieve the ContributionFragment instance.
Existing code can now be replaced by calling this method.
* MediaDetailFragment.kt: replace code that is meant to hide nearby card
Before this commit, code would attempt to find and hide the nearby card that would appear
when the user was looking at media details. However, this code did not work.
After this commit, the old code has been replaced with code that correctly hides the
nearby card. Also, this new code uses a helper method call and is overall easier to read.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename Constants to Follow Kotlin Naming Conventions
>This PR refactors constant names in the project to adhere to Kotlin's UPPERCASE_SNAKE_CASE naming convention, improving code readability and maintaining consistency across the codebase.
>Renamed the following constants in LoginActivity:
>saveProgressDialog → SAVE_PROGRESS_DIALOG
>saveErrorMessage → SAVE_ERROR_MESSAGE
>saveUsername → SAVE_USERNAME
>savePassword → SAVE_PASSWORD
>Updated all references to these constants throughout the project.
* Update Project_Default.xml
* Refactor variable names to adhere to naming conventions
Renamed variables to use camel case:
-UPLOAD_COUNT_THRESHOLD → uploadCountThreshold
-REVERT_PERCENTAGE_FOR_MESSAGE → revertPercentageForMessage
-REVERT_SHARED_PREFERENCE → revertSharedPreference
-UPLOAD_SHARED_PREFERENCE → uploadSharedPreference
Renamed variables with uppercase initials to lowercase for alignment with Kotlin conventions:
-Latitude → latitude
-Longitude → longitude
-Accuracy → accuracy
Refactored the following variable names:
-NUMBER_OF_QUESTIONS → numberOfQuestions
-MULTIPLIER_TO_GET_PERCENTAGE → multiplierToGetPercentage
* Refactor Dialog View Initialization with Null-Safe Calls
This PR refactors the dialog setup code in CustomSelectorActivity to improve safety and readability by replacing explicit casts with null-safe generic calls for findViewById.
>Replaced explicit casting (as Button and as TextView) with the generic findViewById<T>() method for improved type safety.
>Added null-safety (?.) to avoid potential crashes if a view is not found in the dialog layout.
why changed:-
>Prevents runtime crashes caused by NullPointerException when a view is missing in the layout.
* Rename Constants to Follow Kotlin Naming Conventions
>This PR refactors constant names in the project to adhere to Kotlin's UPPERCASE_SNAKE_CASE naming convention, improving code readability and maintaining consistency across the codebase.
>Renamed the following constants in LoginActivity:
>saveProgressDialog → SAVE_PROGRESS_DIALOG
>saveErrorMessage → SAVE_ERROR_MESSAGE
>saveUsername → SAVE_USERNAME
>savePassword → SAVE_PASSWORD
>Updated all references to these constants throughout the project.
* Update Project_Default.xml
* Refactor variable names to adhere to naming conventions
Renamed variables to use camel case:
-UPLOAD_COUNT_THRESHOLD → uploadCountThreshold
-REVERT_PERCENTAGE_FOR_MESSAGE → revertPercentageForMessage
-REVERT_SHARED_PREFERENCE → revertSharedPreference
-UPLOAD_SHARED_PREFERENCE → uploadSharedPreference
Renamed variables with uppercase initials to lowercase for alignment with Kotlin conventions:
-Latitude → latitude
-Longitude → longitude
-Accuracy → accuracy
Refactored the following variable names:
-NUMBER_OF_QUESTIONS → numberOfQuestions
-MULTIPLIER_TO_GET_PERCENTAGE → multiplierToGetPercentage
* Fixed logo getting cropped in landscape mode of login page
* Indentation added at line 12
* New Dimension created in dimens.xml which is used in land\activity_login.xml
* feat: Long-pressing a row in "Uploads" copies the caption to clipboard, and displays a snack saying "Caption copied to clipboard
* refactor: using string resources for the text instead of hard coded values
* Rename Constants to Follow Kotlin Naming Conventions
>This PR refactors constant names in the project to adhere to Kotlin's UPPERCASE_SNAKE_CASE naming convention, improving code readability and maintaining consistency across the codebase.
>Renamed the following constants in LoginActivity:
>saveProgressDialog → SAVE_PROGRESS_DIALOG
>saveErrorMessage → SAVE_ERROR_MESSAGE
>saveUsername → SAVE_USERNAME
>savePassword → SAVE_PASSWORD
>Updated all references to these constants throughout the project.
* Update Project_Default.xml
- Removed unused constants which were there in `Pref`
- Removed unused parameter requireActivity from `Setting Fragment`
Revert "chore : lint fix"
This reverts commit 599203343f4c3c050b45e4ccf53fd23097818cc4.
-Refactored testSearchCloseToCurrentLocationWhenFar: Simplified assertion by using assertFalse(!isClose) for better readability and logical clarity.
-Added testSearchCloseToCurrentLocationWhenClose: Created a new test case to validate behavior when the search is close to the current location, ensuring assertTrue(isClose) for correctness.
-Improved Coverage: These changes enhance the test coverage and reliability of the searchCloseToCurrentLocation function.
Using app:useCompatPadding=true on both the FABs caused padding issues, replaced that with android:layout_margin. As the minimumSdk version is >=lollipop, I believe useCompatPadding is not required.
* fix issue5847 as owner required: make the icon always visible and just adjust the count accordingly,comment the setVisibility method and make pending_upload_icon always visible
* set pending_upload_icon android visible level: visible and tool visible level: gone
* fix issue 5847, The upload icon is now set to always be visible, while the original code has been commented out and retained with a note for potential re-use in the future.
* refactor
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
---------
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
Co-authored-by: bxy379987 <bxy379987@gmail.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert UploadCategoriesFragment to kotlin
* Convert DepictsFragment to kotlin
* Convert MediaLicensePresenter to kotlin
* Convert MediaLicenseFragment to kotlin
* Converted SimilarImageDialogFragment to kotlin
* Convert ThumbnailsAdapter to kotlin
* Convert UploadPresenter to kotlin
* Convert UploadBaseFragment to kotlin
* Convert UploadMediaDetailInputFilter to kotlin
* Convert UploadItem to kotlin
* Convert UploadController to kotlin
* Fix nullability of the UploadItem
* Nearby: Search for actual map center
* Add query syntax and methods
* Nearby: Added binary search for loading pins
* Add NearbyQueryParams and refactor
* Add unit tests and complete implementation
* Nearby: Increase max radius from 100km to 300km
* Nearby: Centermost pins now appear on top
* getNearbyItemCount: Added javadoc
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
fixes#6046
the OnFocusChangeListener for nearby place list items sometimes gets invoked when new items aer set, even when the list is hidden, if an item had previously been clicked in it. This in turn causes the onItemClick to be called. This commit adds a check to make sure the list is not hidden when onItemClick is invoked this way.
* temporary fixes part one
* temporary fixes part two
* temporary fixes part three
* temporary fixes part four
* temporary fixes part five
* reformatting
* remove code no longer in use
* Migrate NearbyParentFragmentPresenter to Kotlin
* Partially replace temporary experimental fixes
* Replace temporary experimental fixes part 2
* Replace temporary experimental fixes part 3
* Replace temporary fixes completely
* Fix caching and loading places in Nearby list
* Add place bookmarking logic, Remove all old code
* Nearby Presenter: Close channel properly
* Nearby pins now load starting from the center
Fixes#6049
* Add comments and javadoc for Nearby Presenter
* Fix warnings, Fix formatting, Add javadoc
* Pass unit tests
Fixes issue 5842 by correcting the implementation of onUserConfirmedUploadIsOfPlace in UploadMediaDetailsContract's UserActionListener
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Add a "copy link" button next to the share button. Add relative English and Simplified Chinese text in strings.xml.
* Change the icon from copy to link
* Fixed typo
* Fixed case
---------
Co-authored-by: Justweng <justweng19@gmail.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Changed the commons.filepicker.UploadableFile's hasLocation method to use the existing ImageCoordinates class for detecting the presence of geolocation in an image's exif
* Convert upload dagger module to kotlin
* Code cleanup and convert the upload contract to kotlin
* Code cleanup and convert CategoriesContract to kotlin
* Code cleanup and convert MediaLicenseContract to kotlin
* Code cleanup and convert UploadMediaDetailsContract to kotlin
* Code cleanup, fixed nullability and converted DepictsContract to kotlin
* Removed unused class
* Convert FileMetadataUtils to kotlin
* Convert EXIFReader to kotlin
* Convert FileUtils to kotlin
* Convert FileUtilsWrapper to kotlin
* Convert ImageProcessingService to kotlin
* Convert PageContentsCreator to kotlin
* Convert PendingUploadsPresenter and contract to Kotlin with some code-cleanup
* Convert ReadFBMD to kotlin
* Convert SimilarImageInterface to kotlin
* Removed unused classes
* Fix merge/rebase issue
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* fix issue6020: prevent unintentional deletion of subfolders and non-images by custom selector
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* fix: resolve crash when submitting feedback without internet access
* feat:Added check for wheather internet connection was available for a network
* feat:Added SnackBar for Retry and User Info
* feat:Made the feedback dialog not leave screen in case of error
* feat:Removed the network checking from the function
* feat:Added try catch block for the Feedback
* feat:Removed Unnecessary imports
* feat:Used Snackbar and timber instead of log and Toast
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* fix issue5847 as owner required: make the icon always visible and just adjust the count accordingly,comment the setVisibility method and make pending_upload_icon always visible
* set pending_upload_icon android visible level: visible and tool visible level: gone
* fix issue 5847, The upload icon is now set to always be visible, while the original code has been commented out and retained with a note for potential re-use in the future.
* refactor
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
---------
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
Co-authored-by: bxy379987 <bxy379987@gmail.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename .java to .kt
* Migrated delete and description module to kotlin (WIP)
* Fix: Unit tests
* Fix: Unit tests
* Rename .java to .kt
* Migrated data, db, and converter module to kotlin
* Fix: Unit tests
* Fix: Unit tests
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert ImageDetails to kotlin
* Convert MwException/MwServiceError to kotlin
* Convert ListUserResponse to kotlin
* Convert MwPostResponse to kotlin
* Convert MwQueryResponse to kotlin
* Convert MwQueryResult to kotlin
* Convert MwQueryPage to kotlin
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename `.java` to `.kt`
* Migrated FeedbackContentCreator to kotlin
* Rename FeedbackDialog from `java` to `kt`
* Migrated Feedback Dialog from `java` to `kt`
* Renamed OnFeedbackSubmitCallback to kotlij
* Migrated OnFeedbackSubmitCallback to kotlin
* Fixed: TestCase Failure
* Fixed Test : Changed Private Modifier to Public
* Suppressed deprecated and added TODO for lint
* Linked Deprecation with Github Issue
* Rename Feedback from java to kt
* Migrated Feedback Data Class to Kotlin
* Modified the data class to var for mutuability
* Convert Edit to kotlin along with deleting unused class
* Converted ExtMetadata to kotlin
* Convert ImageInfo to kotlin
* Removed unused class
* Convert Notification to kotlin
* Convert PageProperties to kotlin
* Convert PageTitle to kotlin
* Convert Namespace to kotlin
* Refactor : Fixed lint issues on EditActivity
- Using 'Log' instead of 'Timber'
- Line is longer than allowed by code style (> 100 columns)
- Use of getter method instead of property access syntax
- Should be replaced with Kotlin function
- Cascade 'if' should be replaced with 'when'
* Suppress Deprecation
* Linked Deprecated with Github Issue
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename AchievementFragment from `.java` to `.kt`
* Migrated AchievementFragment to kotlin
* Revamped Achievement Screen
* fixed AchievementFragment Unit Test
* fixed Level on MoreBottomSheetFragment
* Implemented Badge and Minor Code Refactor
* Fixed the badge issue & made the badge clickable
* Removed Redundant XML Code & Converted badges to green color and added values inside it
* Fixed : showSnackBarWithRetry Test
* Fixed : Theme issues on Light Mode
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert DepictSearchResponse to kotlin
* Convert Entities to kotlin
* Convert WikiSite to kotlin
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Rename .java to .kt
* Migrated filepicker module from Java to Kotlin
* Rename .java to .kt
* Migrated filepicker module from Java to Kotlin
* fix: test cases
* Convert OkHttpJsonApiClient and CategoryApi to kotlin
* Convert GsonUtil to kotlin
* Convert WikidataConstants to kotlin
* Convert WikidataEditListener to kotlin
* Convert WikidataEditService to kotlin
* work in progress
* Convert RequiredFieldsCheckOnReadTypeAdapterFactory to kotlin
* Converted type adapters
* Convert WikiSiteTypeAdapter to kotlin
* Fixed nullability
* Convert ViewModelFactory to kotlin
* Convert UpdateAvatarResponse and related test to Kotlin
* Convert LeaderboardResponse and related test to kotlin
* Convert LeaderboardListAdapter to kotlin
* Convert UserDetailAdapter to kotlin
* Convert LeaderboardListViewModel to kotlin
* Convert DataSourceClass to kotlin
* Convert the LeaderboardFragment to kotlin
* Converted AchievementsFragment to kotlin
* Revert "Converted AchievementsFragment to kotlin"
This reverts commit 4fcbb81e5d.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert a batch of easier modules
* Convert the NetworkingModule to kotlin
* Converted the ApplicationlessInjection to kotlin
* Convert CommonsDaggerAppCompatActivity to kotlin
* Convert CommonsDaggerContentProvider to kotlin
* Convert CommonsDaggerIntentService to kotlin
* Convert CommonsDaggerService to kotlin
* Convert CommonsDaggerSupportFragment to kotlin
* Convert CommonsDaggerBroadcastReceiver to kotlin
* Convert CommonsApplicationModule to kotlin
* Fix imports and make them consistent
* Get good test around the basic KvStore before starting conversion
* Converted BasicKvStore to kotlin and removed dead code
* Converted JsonKvStore to kotlin
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert ICampaignsView to kotlin along with simple fix
* Convert CampaignView to Kotlin
* Convert CampaignsPresenter to Kotlin
* Convert CampaignsPresenter to kotlin
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* refactor getIconFor method and remove call to highlightNearestPlace()
It ensures single responsibility on getIconFor method
* refactor and fix icon issue when coming from nearby banner
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert SessionManager to kotlin along with other small fixes
* Convert WikiAccountAuthenticator to kotlin
* Migrate WikiAccountAuthenticatorService to kotlin
* Converted AccountUtil to kotlin
* Convert SignupActivity to kotlin
* Convert LoginActivity to kotlin
* Merge from main
* move createLocale() method to companion object and add test dependency
* use mockk() from Mockk library for mocking sealed classes
* change method parameter to null-able String type
* add null check for accessing property from unit tests
* change method signature to match old method's signature
It fixes the NullPointerException when running ImageProcessingUnitTest
* Fix unresolved references and make properties public for unit tests
* fix tests in UploadRepositoryUnitTest by making return type null-able
* Rename .java to .kt
* Migrated the following files in util module to Kotlin
- AbstractTextWatcher
- ActivityUtils
- CommonsDateUtil
- DateUtil
* Rename .java to .kt
* Migrated the following files in util module to Kotlin
- DeviceInfoUtil
- ExecutorUtils
- FragmentUtils
* Rename .java to .kt
* Migrated the following files in util module to Kotlin
- ImageUtils
- ImageUtilsWrapper
- LangCodeUtils
- LayoutUtils
- LengthUtils
- LocationUtils
- MapUtils
* Rename .java to .kt
* Migrated all remaining files in util module
* Rename .java to .kt
* Migrated the following files in util module to Kotlin
- AbstractTextWatcher
- ActivityUtils
- CommonsDateUtil
- DateUtil
* Rename .java to .kt
* Migrated the following files in util module to Kotlin
- DeviceInfoUtil
- ExecutorUtils
- FragmentUtils
* Modified findUniqueFileName() in UploadWorker.kt to use a random 3-digit alphanumeric hash to append to a file name to make it unique. This improves speed over using an incrementing number to append as there are fewer collisions.
* Modified findUniqueFileName() in UploadWorker.kt to use a random 5-digit numeric hash rather than the previous 3-digit alphanumeric hash
* Removed unnecessary variable "chars"
---------
Co-authored-by: Jinniu Du <127721018+Donutcheese@users.noreply.github.com>
Co-authored-by: Zihan Pan <u7726755@anu.edu.au>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Issue #5811: "Delete folder" menu in custom image selector
* Issue 5811: folder deletion for api < 29.
* Issue 5811: folder deletion for api < 29.
* Issue 5811: folder deletion for api 29.
* Issue 5811: folder deletion
* Issue 5811: fixes merge conflicts, replaces used function onActivityResult with an ActivityResultLauncher
* Update Constants.java
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* BaseMarker.kt: removed unneeded cast
* TransformImageImpl.kt: removed unreachable code
* ZoomableActivity.kt: removed Unnecessary safe call on a non-null receiver of type ZoomableDraweeView
* ZoomableActivity.kt: removed Unnecessary safe call on a non-null receiver of type ZoomableDraweeView
* DescriptionEditActivity.kt: removed unnecessary non-null assertion (!!) on a non-null receiver of type DescriptionEditHelper
* Media.kt: Property would not be serialized into a 'Parcel'. Added '@IgnoredOnParcel' annotation to remove the warning
* ZoomableActivity.kt: removed Unnecessary non-null assertion (!!) on a non-null receiver of type ZoomableDraweeView
* CategoryClient.kt: removed condition 'page.categoryInfo() == null' as it's always 'false'
* DescriptionEditActivity.kt: removed unnecessary safe call on a non-null receiver of type SessionManager
* DescriptionEditActivity.kt: removed unnecessary safe call on a non-null receiver of type DescriptionEditHelper
* WikidataFeedback.kt: removed unneeded cast
* FailedUploadsFragment.kt: removed unneeded non-null assertion (!!)
* PendingUploadsFragment.kt: removed unneeded non-null assertion (!!)
* AchievementsFragment.java: Changed toUpperCase to toUpperCase(Locale.getDefault())
* ExploreFragment.java: Changed toUpperCase to toUpperCase(Locale.getDefault())
* FileUtils.java: Changed toUpperCase to toUpperCase(Locale.getDefault())
* AchievementsFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* ExploreFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* LocationPickerActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* MediaDetailFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* NearbyFilterSearchRecyclerViewAdapter.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* ProfileActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* RecentSearchesFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* ReviewActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* SearchActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* UploadMediaPresenter.java: Changed toUpperCase to toLowerCase(Locale.ROOT)
* CategoriesMediaFragment.kt: Changed arguments!! to requireArguments()
* ChildDepictionsFragment.kt: Changed arguments!! to requireArguments()
* DepictedImagesFragment.kt: Changed arguments!! to requireArguments()
* DepictsFragment: Changed Objects.requireNonNull(getView()) to requireViews(), Objects.requireNonNull(getActivity())) to requireActivity()
* ParentCategoriesFragment.kt: Changed arguments!! to requireArguments()
* ParentCategoriesFragment.kt: Changed arguments!! to requireArguments()
* SubCategoriesFragment.kt: Changed arguments!! to requireArguments()
* SubCategoriesFragment.kt: Changed Objects.requireNonNull(getView()) to requireViews(), Objects.requireNonNull(getActivity()) to requireActivity()
* UploadMediaDetailFragment.java: Changed arguments!! to requireArguments()
* WikipediaInstructionsDialogFragment.kt: Changed arguments!! to requireArguments()
* BookmarkItemsDao.java: Added @SuppressLint("Range"), as -1 is expected behavior not index doesn't exist for getColumnIndex()
* BookmarkLocationsDao.java: Added @SuppressLint("Range"), as -1 is expected behavior not index doesn't exist for getColumnIndex()
* AndroidManifest.xml: Removed redundant label android:label="@string/app_name"
* bs\strings.xml: Added missing few quantity
* hr\strings.xml: Added missing few quantity
* hr\strings.xml: Added missing zero, two, few, many quantities for lines 23 - 63
* Revert "hr\strings.xml: Added missing zero, two, few, many quantities for lines 23 - 63"
This reverts commit 47232466ab.
* cy\strings.xml: Added missing zero, two, few, many quantities for lines 23 - 63
* sr\strings.xml: Added missing few quantities for lines 35 to 70
* ro\strings.xml: Added missing few quantity and removed not needed zero for <plurals name="contributions_subtitle" fuzzy="true">
* cs\strings.xml: Added missing few many missing quantities for lines 33 - 74
* lt\strings.xml: Added missing few, many missing quantities for lines 34 - 58
* lt\strings.xml: Replaced . . . with ...
* ca\strings.xml: Added missing many quantities for lines 21 - 51, replaced . . . with ...
* ser\strings.xml: Added missing few quantities, replaced . . . with ...
* br\strings.xml: Added missing two, few, many quantities
* pt\strings.xml: Added missing many quantity, changed . . . to ... and ignored typo as it is correct for European Portuguese
* it\strings.xml: changed . . . to ...
* pt\strings.xml: fixed many quantity
* ca\strings.xml: fixed many quantity
* sr\strings.xml: fixed many quantity
* cy\strings.xml: corrected quantities for "share_license_summary
* fr\strings.xml: changed . . . to ... and add many quantities using the other quantity
* fr\strings.xml: changed . . . to ... and add many quantities using the other quantity. Fixed some typos, added ignore for correct spellings but has warning
* getColumnIndex(): added @SuppressLint("Range") as -1 is expected result for column name doesn't exist
* values-b+sr+Latn\strings.xml: changed . . . to ...
* Revert "values-b+sr+Latn\strings.xml: changed . . . to ..."
This reverts commit 95b909c29f.
* values-b+roa+tara\strings.xml: changed . . . to ...
* Revert "values-b+roa+tara\strings.xml: changed . . . to ..."
This reverts commit b5db1a3e68.
* values-b+roa+tara\strings.xml: changed . . . to ...
* values-b+sr+Latn\strings.xml: changed . . . to ..., add few based on other quantity. Ignored one ImpliedQuantity warning as it is correct.
* it\strings.xml: changed . . . to ..., add many based on other quantity.
* pt-rBR\strings.xml: changed . . . to ..., add many based on other quantity. Fixed typos, ignored warning for "one" quantity as translation didn't use number
* si\strings.xml: Ignored ImpliedQuantity warning as it uses 1 not %d. Removed not needed zero quantity
* si\strings.xml: Ignored ImpliedQuantity warning as it uses 1 not %d. Removed not needed zero quantity. Fixed wrong %1$d. Changed . . . to ...
* mk\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use 1
* sl\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* ru\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* uk\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* is\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* strings.xml: changed . . . to ...
* af\strings.xml: removed not needed zero quantity
* de\strings.xml: fixed duplicate word typo
* diq\strings.xml: changed - to dash (-)
* hi\strings.xml: removed not needed zero
* in\strings.xml: removed not needed one quantity
* iw\strings.xml: removed not needed many quantity
* ja\strings.xml: removed not needed one quantity
* ko\strings.xml: removed not needed one quantity
* ky\strings.xml: removed not needed one quantity
* mr\strings.xml: removed not needed zero quantity
* my\strings.xml: removed not needed one quantity
* su\strings.xml: removed not needed one quantity
* th\strings.xml: removed not needed one and zero quantity
* zh\strings.xml: removed not needed one quantity
* activity_description_edit.xml: changed android:tint to app:tint, changed layout_alignParentRight to layout_alignParentEnd
* bottom_sheet_details_explore.xml: changed android:tint to app:tint, added focusable, changed to margin layout
* bottom_sheet_item_layout.xml: changed android:tint to app:tint, added focusable
* bottom_sheet_details_explore.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* item_place.xml.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* layout_campagin.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* layout_contribution.xml.xml: changed android:tint to app:tint
* nearby_card_view.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* nearby_row_button.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* toolbar_location_picker.xml: changed android:tint to app:tint
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* BaseMarker.kt: removed unneeded cast
* TransformImageImpl.kt: removed unreachable code
* ZoomableActivity.kt: removed Unnecessary safe call on a non-null receiver of type ZoomableDraweeView
* ZoomableActivity.kt: removed Unnecessary safe call on a non-null receiver of type ZoomableDraweeView
* DescriptionEditActivity.kt: removed unnecessary non-null assertion (!!) on a non-null receiver of type DescriptionEditHelper
* Media.kt: Property would not be serialized into a 'Parcel'. Added '@IgnoredOnParcel' annotation to remove the warning
* ZoomableActivity.kt: removed Unnecessary non-null assertion (!!) on a non-null receiver of type ZoomableDraweeView
* CategoryClient.kt: removed condition 'page.categoryInfo() == null' as it's always 'false'
* DescriptionEditActivity.kt: removed unnecessary safe call on a non-null receiver of type SessionManager
* DescriptionEditActivity.kt: removed unnecessary safe call on a non-null receiver of type DescriptionEditHelper
* WikidataFeedback.kt: removed unneeded cast
* FailedUploadsFragment.kt: removed unneeded non-null assertion (!!)
* PendingUploadsFragment.kt: removed unneeded non-null assertion (!!)
* AchievementsFragment.java: Changed toUpperCase to toUpperCase(Locale.getDefault())
* ExploreFragment.java: Changed toUpperCase to toUpperCase(Locale.getDefault())
* FileUtils.java: Changed toUpperCase to toUpperCase(Locale.getDefault())
* AchievementsFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* ExploreFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* LocationPickerActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* MediaDetailFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* NearbyFilterSearchRecyclerViewAdapter.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* ProfileActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* RecentSearchesFragment.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* ReviewActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* SearchActivity.java: Changed toUpperCase to toUpperCase(Locale.ROOT)
* UploadMediaPresenter.java: Changed toUpperCase to toLowerCase(Locale.ROOT)
* CategoriesMediaFragment.kt: Changed arguments!! to requireArguments()
* ChildDepictionsFragment.kt: Changed arguments!! to requireArguments()
* DepictedImagesFragment.kt: Changed arguments!! to requireArguments()
* DepictsFragment: Changed Objects.requireNonNull(getView()) to requireViews(), Objects.requireNonNull(getActivity())) to requireActivity()
* ParentCategoriesFragment.kt: Changed arguments!! to requireArguments()
* ParentCategoriesFragment.kt: Changed arguments!! to requireArguments()
* SubCategoriesFragment.kt: Changed arguments!! to requireArguments()
* SubCategoriesFragment.kt: Changed Objects.requireNonNull(getView()) to requireViews(), Objects.requireNonNull(getActivity()) to requireActivity()
* UploadMediaDetailFragment.java: Changed arguments!! to requireArguments()
* WikipediaInstructionsDialogFragment.kt: Changed arguments!! to requireArguments()
* BookmarkItemsDao.java: Added @SuppressLint("Range"), as -1 is expected behavior not index doesn't exist for getColumnIndex()
* BookmarkLocationsDao.java: Added @SuppressLint("Range"), as -1 is expected behavior not index doesn't exist for getColumnIndex()
* AndroidManifest.xml: Removed redundant label android:label="@string/app_name"
* bs\strings.xml: Added missing few quantity
* hr\strings.xml: Added missing few quantity
* hr\strings.xml: Added missing zero, two, few, many quantities for lines 23 - 63
* Revert "hr\strings.xml: Added missing zero, two, few, many quantities for lines 23 - 63"
This reverts commit 47232466ab.
* cy\strings.xml: Added missing zero, two, few, many quantities for lines 23 - 63
* sr\strings.xml: Added missing few quantities for lines 35 to 70
* ro\strings.xml: Added missing few quantity and removed not needed zero for <plurals name="contributions_subtitle" fuzzy="true">
* cs\strings.xml: Added missing few many missing quantities for lines 33 - 74
* lt\strings.xml: Added missing few, many missing quantities for lines 34 - 58
* lt\strings.xml: Replaced . . . with ...
* ca\strings.xml: Added missing many quantities for lines 21 - 51, replaced . . . with ...
* ser\strings.xml: Added missing few quantities, replaced . . . with ...
* br\strings.xml: Added missing two, few, many quantities
* pt\strings.xml: Added missing many quantity, changed . . . to ... and ignored typo as it is correct for European Portuguese
* it\strings.xml: changed . . . to ...
* pt\strings.xml: fixed many quantity
* ca\strings.xml: fixed many quantity
* sr\strings.xml: fixed many quantity
* cy\strings.xml: corrected quantities for "share_license_summary
* fr\strings.xml: changed . . . to ... and add many quantities using the other quantity
* fr\strings.xml: changed . . . to ... and add many quantities using the other quantity. Fixed some typos, added ignore for correct spellings but has warning
* getColumnIndex(): added @SuppressLint("Range") as -1 is expected result for column name doesn't exist
* values-b+sr+Latn\strings.xml: changed . . . to ...
* Revert "values-b+sr+Latn\strings.xml: changed . . . to ..."
This reverts commit 95b909c29f.
* values-b+roa+tara\strings.xml: changed . . . to ...
* Revert "values-b+roa+tara\strings.xml: changed . . . to ..."
This reverts commit b5db1a3e68.
* values-b+roa+tara\strings.xml: changed . . . to ...
* values-b+sr+Latn\strings.xml: changed . . . to ..., add few based on other quantity. Ignored one ImpliedQuantity warning as it is correct.
* it\strings.xml: changed . . . to ..., add many based on other quantity.
* pt-rBR\strings.xml: changed . . . to ..., add many based on other quantity. Fixed typos, ignored warning for "one" quantity as translation didn't use number
* si\strings.xml: Ignored ImpliedQuantity warning as it uses 1 not %d. Removed not needed zero quantity
* si\strings.xml: Ignored ImpliedQuantity warning as it uses 1 not %d. Removed not needed zero quantity. Fixed wrong %1$d. Changed . . . to ...
* mk\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use 1
* sl\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* ru\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* uk\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* is\strings.xml: changed . . . to ... and ignored ImpliedQuantity as it doesn't use %1$d
* strings.xml: changed . . . to ...
* af\strings.xml: removed not needed zero quantity
* de\strings.xml: fixed duplicate word typo
* diq\strings.xml: changed - to dash (-)
* hi\strings.xml: removed not needed zero
* in\strings.xml: removed not needed one quantity
* iw\strings.xml: removed not needed many quantity
* ja\strings.xml: removed not needed one quantity
* ko\strings.xml: removed not needed one quantity
* ky\strings.xml: removed not needed one quantity
* mr\strings.xml: removed not needed zero quantity
* my\strings.xml: removed not needed one quantity
* su\strings.xml: removed not needed one quantity
* th\strings.xml: removed not needed one and zero quantity
* zh\strings.xml: removed not needed one quantity
* activity_description_edit.xml: changed android:tint to app:tint, changed layout_alignParentRight to layout_alignParentEnd
* bottom_sheet_details_explore.xml: changed android:tint to app:tint, added focusable, changed to margin layout
* bottom_sheet_item_layout.xml: changed android:tint to app:tint, added focusable
* bottom_sheet_details_explore.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* item_place.xml.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* layout_campagin.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* layout_contribution.xml.xml: changed android:tint to app:tint
* nearby_card_view.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* nearby_row_button.xml: changed android:tint to app:tint, added focusable, changed margin layout and removed not needed and invalid params
* toolbar_location_picker.xml: changed android:tint to app:tint
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* make database function calls suspending and update room version
* replace MainScope with coroutineScope for database operations
* add suspend keyword and refactor code
* Changed files required to get the app to run correctly. Removed suspend from affected DAO files and funcs, and changed to (Kotlin v1.9.22) and (Kotlin compiler v1.5.8)
* Created refresh button icon, and added it to the nearby_fragment_menu.xml (header of the nearby page). Created function refresh() in NearbyParentFragment.java to handle refresh functionality.
* Replaced refresh() func with emptyCache() and reloadMap()
* Attempt at reloadMap(), no testing done yet.
* added changes for a possibly working emptyCache implementation (needs testing).
* Tested changes as working, edited emptyCache to correctly clear cache and then reload map
---------
Co-authored-by: MarcusBarta <marcusbarta@icloud.com>
* remove unused result expectancy for settings screen launch
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* initial refactor to new result api, wip
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* refactor camera launcher
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* revert callback for video handling
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* invoke callbacks when cancelled
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* handle gallery picker result based on preference
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* remove old method of refactoring for file picker
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* remove legacy result handling callback
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* request code used for handling result was never used for launching an activity, hence removed
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* extract voice result handling into function
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* refactor test
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* remove unused tests
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* cleanup
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* fix-docs
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
* add space after ,
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
---------
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
>> Made it so that selecting a language results in the hashmap storing the currently selected language(s) being cleared. Considered refactoring the hashmap storing this into a single pair storing the language positition index and its code, as only one language should ever be selected, however I am not confident that this would not introduce unintended side-effects
* UI design for legend to explain the colors of the nearby pins
* Add listener for the button to toggle the visibility of the legend (make it hideable)
* Change wording for legend and make text localizable
* Fixed typo
* Fixed typo
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Resolved an issue where RecyclerView would incorrectly scroll to the top after exiting fullscreen preview. Adjusted scroll behavior to maintain position unless actioned images are filtered. Implemented observer logic adjustments to handle dataset updates more efficiently.
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* ImageFragment.kt: notifyDataSetChanged() added to update observers about init call in handleResult()
* ImageFragment.kt: unnecessary initialisation after exiting media preview was removed from passSelectedImages
* (fixes#5855) fetch item label in nearby based on user configured language.
* implement a method to delete Place entity from database
* clear the cache for a item when a wikiItem is updated.
* fix style issue
* Update placesRepository on successful WikiItemEdit
* Revert the delete operations added to the PlaceDAO
* Set name of the place to avoid race condition with NearbyParentFragment. Update Success Notification to show only after the pin has been updated.
* Clean-up
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
This commit adds logic to classify notifications as "email" type when the notification text contains "sent you an email". It also updates the email notification prompt to support localization, ensuring a better user experience across different regions.
### Problem:
1. Previously, email-related notifications from the backend were missing a URL. As a result, when users clicked on these notifications, there was no link to open, and the notifications were categorized as UNKNOWN. This led to a poor user experience since there was no feedback provided when the user clicked on an email notification.
2. Additionally, the existing code used hardcoded English text for the email notification prompt, which did not provide a localized experience for users in different regions.
### Solution:
1. Added logic to categorize email-related notifications as `EMAIL` when the notification text contains "sent you an email".
2. Replaced the hardcoded "Check your email inbox" string with a localized string and added translations for multiple languages, including zh, zh-rhk, zh-rcn, zh-rtw, and ja.
### Changes:
- **NotificationClient**:
- Modified `WikimediaNotification.toCommonsNotification()` to check if the notification text contains "sent you an email". If it does, the notification is classified as `EMAIL_MESSAGE` instead of the default `UNKNOWN`.
- **NotificationActivity**:
- In the `NotificatinAdapter` click handler, added a check for `EMAIL_MESSAGE` type. When an email-type notification is clicked, a localized "Check your mail box" prompt is shown using `Snackbar`, instead of attempting to open a URL (which is typically missing for such notifications).
- Modified to fetch the string using `getString(R.string.check_your_mail_box)` to support localization.
- **NotificationType**:
- Added a new `EMAIL` type to categorize email-related notifications.
- **Localization**:
- Added localized translations for "Check your mail box" in zh, zh-rhk, zh-rcn, zh-rtw, and ja.
Co-authored-by: Qiutong Zeng <Qiutong.zeng@anu.edu.au>
* Updated instances of assert() in WelcomeActivityTest.kt to asserThat().
New imports:
- org.hamcrest.CoreMatchers.equalTo
- org.hamcrest.CoreMatchers.assertThat
* Updated instances of assert() in LatLngTest.kt to asserThat().
New imports:
- org.hamcrest.CoreMatchers.equalTo
- import org.hamcrest.CoreMatchers.not
- org.hamcrest.CoreMatchers.assertThat
* Updated instances of assert() in LabelTest.kt to asserThat().
New imports:
- org.hamcrest.CoreMatchers.equalTo
- org.hamcrest.CoreMatchers.assertThat
* Corrected sign error typo in LatLngTest.kt
* NearbyParentFragment.java:
OnScroll - removed distance threshold, delay search by 800ms, discard multiple OnScroll within 800ms.
OnDestroy - destroy any queued OnScroll events
* NearbyParentFragment.java:
loadPlacesDataAsync - set batchSize from 50 back to original 3
* comment
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* *.kt: bulk correction of formatting using ktlint --format
* *.kt: replace wildcard imports and second stage auto format ktlint --format
* QuizQuestionTest.kt: modified property names to camel case to meet ktlint standard
* LevelControllerTest.kt: modified property names to camel case to meet ktlint standard
* QuizActivityUnitTest.kt: modified property names to camel case to meet ktlint standard
* MediaDetailFragmentUnitTests.kt: modified property names to camel case to meet ktlint standard
* UploadWorker.kt: modified property names to camel case to meet ktlint standard
* UploadClient.kt: modified property names to camel case to meet ktlint standard
* BasePagingPresenter.kt: modified property names to camel case to meet ktlint standard
* DescriptionEditActivity.kt: modified property names to camel case to meet ktlint standard
* OnSwipeTouchListener.kt: modified property names to camel case to meet ktlint standard
* MediaDetailFragmentUnitTests.kt: corrected excessive line length to meet ktlint standard
* DepictedItem.kt: corrected property name format and catch format to for ktlint standard
* UploadCategoryAdapter.kt: corrected class definition format to meet ktlint standard
* CustomSelectorActivity.kt: reformatted function names to first letter lowercase to meet ktlint standard
* MediaDetailFragmentUnitTests.kt: fix string literal indentation to meet ktlint standard
* NotForUploadDao.kt: file renamed to match class name, new file NotForUploadStatusDao.kt
* UploadedDao.kt: file renamed to match class name, new file UploadedStatusDao.kt
* Urls.kt: fixed excessive line length for ktLint standard
* Snak_partial.kt & Statement_partial.kt: refactored to remove underscores in class names to meet ktLint standard
* *.kt: fixed consecutive KDOC error for ktLint
* PageableBaseDataSourceTest.kt & UploadPresenterTest.kt: fixed excessive line lengths to meet ktLint standard
* CheckboxTriStatesTest.kt: renamed file to match class name to meet ktLint standard
* .kt: resolved backing-property-naming error in ktLint, made matching properties public, matched names and refactored
* TestConnectionFactory.kt: fixed property naming to adhere to ktLint standard
* 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.
* 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.
* 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.
* 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.
* 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.
* 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.
* 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.
* 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).
* 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.
* 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.
* 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.
* 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.
* 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.
* 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.
* 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.
* 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.
* 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.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* change the overridden method signature as per API 34
* add version check condition to compare with API 23 before adding flag
* refactor: add final keywords, fix typo, and remove redundant spaces
For optimized code only
* upgrade: migrate to SDK 34 and upgrade APG
Additionally, add Jetpack Compose to the project
* AndroidManifest: add new permission for API 34
DescriptionActivity should not be exposed
* refactor: permission should not be check on onCreate for some cases
* add method to get correct storage permission and check partial access
Additionally, add final keywords to reduce compiler warnings
* refactor: prevent app from crashing for SDKs >= 34
* add new UI component to allows user to manage partially access photos
Implement using composeView
* change the overridden method signature as per API 34
* add version check condition to compare with API 23 before adding flag
* refactor: add final keywords, fix typo, and remove redundant spaces
For optimized code only
* upgrade: migrate to SDK 34 and upgrade APG
Additionally, add Jetpack Compose to the project
* AndroidManifest: add new permission for API 34
DescriptionActivity should not be exposed
* refactor: permission should not be check on onCreate for some cases
* add method to get correct storage permission and check partial access
Additionally, add final keywords to reduce compiler warnings
* refactor: prevent app from crashing for SDKs >= 34
* add new UI component to allows user to manage partially access photos
Implement using composeView
* replace deprecated circular progress bar with material progress bar
* remove redundant appcompat dependency
* add condition to check for partial access on API >= 34
It prevents invoking photo picker on UploadActivity.
* UploadWorker: add foreground service type
* fix typos in UploadWorker.kt
* add permission to access media location
* Add Date and Time in UTC format to Feedback
* Add UTC date to the Subject instead of adding it to the body
* Change the UTC Date format to yyyy/MM/dd HH:mm:ss
* Minor changes
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* 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.
* 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
* 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
* 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>
* Ensure to clear the cookies when logging out
It turns out that we failed to clear the cookies from the cookie JAR
when logging the user out. As a consequence, the cookie were retained
and it was possible to edit depictions as the previous user even without
logging in to the app (using the retained cookies).
Make sure we properly clear the cookies when we log the user out.
As an aside, the fact that the edit button shouldn't have been shown
is a different issue being tracked in #5726
* session: reuse removeAccount method for log out
The removeAccount method takes care of invoking the non-deprecated
API in applicable API levels. The logout method did not do such a
thing. Avoid redundancy, and reuse the removeAccount method for
logging out.
* feedback: add the feedback as a new section at end of the page
Addresses feedback on #5542. For auto-archiving of section
to work properly on our feedback page, the new sections need to
be created at the end of the page rather than at the top.
So, adjust the feedback addition logic to make it such that the
feedback is appended to the bottom of the page.
* Replace lambda with a method reference
* feedback: replace edit summary with something more relevant
The summary of the feedback page was unhelpful. Make it more helpful by
using a more helpful summary that at least mentions the version of the
app for which the feedback is posted.
* test: try to fix test case related to feedback change
This commit moves the center of the map to the image's location, if the image has
location EXIF data. If the image does not have location EXIF data, the map will
center on the device's current GPS location.
* feedback: add info about where the feedback gets posted
Fixes#5747
* feedback: avoid underscore in the link's alternative text
* wording
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
I replaced uploadMediaDetail.get(position) with a direct reference to uploadMediaDetail in 3 locations to avoid out of bounds errors.
The usage of RecyclerView in this code is still a bit buggy, and maybe a RecyclerView is not necessary here since the number of items is limited. The fix also revealed problems in the logic of adding the "addButton" only to the last item, which couldn't be reproduced before because the app crashed first. I can submit a new bug for that if this fix goes live.
I did not feel very comfortable with the code so I restricted my commit to fixing the first reported crash, which was resolved in my tests.
* 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>
With refactoring of the dataclient module, the model classes now live
within the app's source code itself. So, the existing R8 rules became
obsolete and resulted in the prodRelease version of the app not
working.
So, adjust the R8 rules so that R8 doesn't obsfuscate the model classes
that now live within the app.
The file is not properly recognized by Android and we've actually
codemapped it to yue. The translatewiki configuration has been
done in the incorrect file. So, it is still being created.
The following Gerrit change would correct it for updates after that
change is merged.
1022508
For the time being remove it for the sake of release.
* 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>
* SettingsFragment: add a method for creating locale
* SettingsFragmentUnitTests: fix failing tests for createLocale
* NearbyParentFragment: set WLM check to false
* 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 crash
* 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
* Initial changes to the flow, merged conflicts
* Major changes to flow and logic
* Final major changes to the flow and merged conflicts
* Minor changes to thumbnail flow and merge conflicts
* Fixed ImageProcessingServiceTest
* Removed unnecessary file
* Some code cleanup and fixed UploadRepositoryUnitTest
* Minor javadoc changes and null checks
* Fixed UMDFragmentUnitTest
* Fixed and added new tests in UploadMediaPresenterTest
* Optimised code for no connection cases and minor code cleanup
* Minor bug fix
* Fixed minor bug
* Fixed a failing unit test
* Removed values-yue-hant
* Update UploadRepository.java
---------
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
We seem to be incorrectly setting the the thanks count in the achievement level
text. This was then being over-written by the actual achievement level value
in the code flow. In the end, the thanks count seems not to have been displayed at all.
Correct this by properly updating the thanks count.
Fixes#5641
[The image path of rotated image is not save like nornal image.
so imageview cannot load rotated image
check whether the image path is file uri then add imagerequest to load the image]
[fixed: thumbnail not visible when upload rotated image]
* Custom picker: Show differently pictures that are currently being uploaded
* fix tests
* fix test
* fix crash
* handle all cases
* handle all cases
* fix
* Hide Images When showAlreadyActioned is disabled
* Fix Tests
* cleanup
* 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
* Moved Main Activity and Settings Activity to ViewBinding
* Moving only SettingsActivity for now
* Removed values-yue-hant directory
* Removing previously done changes to main.xml
* Butterknife to ViewBinding
* code fix to pass all tests
* test fix
* test fix
* test fix
* test fix
* Update ContributionsFragmentUnitTests.kt
* code cleanup and tests improved
* tests fixed
* adjustments and code cleanup
* adjustments and code cleanup
* Refactor :API calls separated from activity added to LoginClient
* getLoginToken() modifier set to private
* Code Cleanup : removed non-null from twofactor and Locale import
* Indentation fix
Added line breaks to PageContentsCreator.java, CategoryEditHelperUnitTests.kt, and MediaDetailFragmentUnitTests.kt following the example given on issue #5523.
* Convert UserClient to kotlin
* Added tests for WikiBaseClient
* Removed superfluous dao tests in review helper and got the proper ReviewDaoTest running in the unit test suite
* Improved tests for ReviewHelper
* Convert the ReviewHelper to kotlin
* Convert the WikiBaseClient to kotlin
* Convert the WikidataClient to kotlin
* Fixed arrow flickering issue on zoom
* Resolved issue point 1 and 3
* Resolved issue point 2
* Minor changes
* Update UploadActivity.java
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Converted CategoryInterface to kotlin
* Converted DepictsInterface to kotlin
* Convert the MediaDetailInterface to kotlin
* Convert MediaInterface to kotlin
* Convert ReviewInterface to kotlin
* Convert the UserInterface to kotlin
* Convert the WikiBaseInterface to kotlin
* Convert WikidataInterface to kotlin
* Convert WikidataMediaInterface to kotlin
* Convert UploadInterface to kotlin
* logErrorsInsteadOfCrashing only ever returned false, so remove it and simplify logger
* Removed unused getMediaWikiBaseUrl()
* Removed getDesiredLeadImageDp() from commons app adapter, since it's unused
* Inlined the isLoggedIn() method of the app adapter
* Inline the app adapter username/password
* Removed the unused getRestbaseUriFormat() from the commons app adapter
* Remove references to the data-client SharedPreferenceCookieManager
* Manage our own OkHttpClient and remove the AppAdapter implementation
So far we used both the urbanecmbot instances and also the commons-android-app
toolforge instance for the functioning of the app.
The reality is that the commons-android-app instance itself had the ability
to return all the data necessary for the app. Use the same to get all the
data necessary for the app.
Fixes#5462
* 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
* Replaced Mapbox with OSMDroid in explore activity
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Convert the result classes to kotlin
* Convert response and callback to kotlin
* Cleanup code-quality warnings before converting
* Converted the LoginClient to kotlin
* Updated the UserExtendedInfoClientTest to be kotlin, and live in the correct spot
* 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>
* UploadMediaDetailInputFilter: added pattern to identify colon
Added hex code of colon for MediaDetailInputFilter and updated test for it.
* styles.xml: removed color styles for floatingActionButton
* Highlighted nearest place when user clicks on home nearby banner
* Fixed incorrect behaviour of home nearby banner on being clicked
* Fixing failure of unit test cases
* spacing
* indentation
---------
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
* 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>
* NearbyParentFragment : added referer
In file NearbyParentFragment.java, I added header property, i.e., the referer - http://maps.wikimedia.org/
and set tile source to wikimedia.
* Reworded comments
* sdkmanager: added installation command for build-tools-30.0.3
* Revert "sdkmanager: added installation command for build-tools-30.0.3"
This reverts commit b3e5019e36.
* Update android.yml
* Update gradle.properties
* android.yml: removed extra debug commands
Removed some debug commands because they are no longer needed.
* ic_custom_map_marker: changed fill color to make it more visible.
Changed fill color for map marker used for nearby places that needs photo.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Resolved issue #4513
* Localisation updates from https://translatewiki.net.
* NearbyParentFragment : added referer (#5417)
* NearbyParentFragment : added referer
In file NearbyParentFragment.java, I added header property, i.e., the referer - http://maps.wikimedia.org/
and set tile source to wikimedia.
* Reworded comments
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Removed butterknife from the quiz result activity (#5425)
* ConnectRefuseError: removed the proxy from properties.gradle file to allow downloading of build tools during CI. (#5434)
* NearbyParentFragment : added referer
In file NearbyParentFragment.java, I added header property, i.e., the referer - http://maps.wikimedia.org/
and set tile source to wikimedia.
* Reworded comments
* sdkmanager: added installation command for build-tools-30.0.3
* Revert "sdkmanager: added installation command for build-tools-30.0.3"
This reverts commit b3e5019e36.
* Update android.yml
* Update gradle.properties
* android.yml: removed extra debug commands
Removed some debug commands because they are no longer needed.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Removed butterknife and inlined a couple of tiny methods (#5426)
* Resolves#2239 by adding a compass arrow for direction of nearest item (#5433)
* Resolves issue #2239 by adding an arrow for direction
* Removed unnecessary change in styles.xml
* spacing
* javadoc
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Added voice input for caption and description (#5415)
* 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
---------
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: Rohit Verma <101377978+rohit9625@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Paul Hawke <paul.hawke@gmail.com>
Co-authored-by: Kanahia <114223204+kanahia1@users.noreply.github.com>
* Resolves issue #2239 by adding an arrow for direction
* Removed unnecessary change in styles.xml
* spacing
* javadoc
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* NearbyParentFragment : added referer
In file NearbyParentFragment.java, I added header property, i.e., the referer - http://maps.wikimedia.org/
and set tile source to wikimedia.
* Reworded comments
* sdkmanager: added installation command for build-tools-30.0.3
* Revert "sdkmanager: added installation command for build-tools-30.0.3"
This reverts commit b3e5019e36.
* Update android.yml
* Update gradle.properties
* android.yml: removed extra debug commands
Removed some debug commands because they are no longer needed.
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* NearbyParentFragment : added referer
In file NearbyParentFragment.java, I added header property, i.e., the referer - http://maps.wikimedia.org/
and set tile source to wikimedia.
* Reworded comments
---------
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
* Removed butterknife from contributions list fragment and overhauled its test
* Suggested fix from stack overflow to remove duplicate class error during build
* 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>
* Fixes bug causing the progress dialog to load forever (#5212)
* Fixes bug causing the progress dialog to load forever (#5212)
* remove unnecessary new line (#5212)
* Add XML map icons with a tick/question mark for the Upload Wizard
The existing map icon may not be intuitive enough to indicate
whether the location EXIF data will be included
The two new XML map icons are intended to indicate the status of
location sharing with the location data in the Upload Wizard
* Label the map icon in the Upload Wizard if location is included
If an image is capture with the in-app camera, the location in the
image metadata by default
If so, the map icon in the Upload Wizard should be labelled with
a green tick during initialisation of its UploadMediaDetailFragment instance
* Update the map icon in Upload Wizard if location is pin-pointed
If the user selects images from the device storage
to upload, the location EXIF data might originally not be included
The map icon is labelled with a red question mark
After pin-pointing the location manully, the map icon should be
labelled with a green tick instead
* Fix Upload Wizard map icon XML rendering failure
SVG path is invalid, resulting in failure to render the icons
Also imports are required for UploadMediaDetailFragment to
use Drawable objects and R objects
* Add hasLocation() to UploadableFile to indicate existence of EXIF
When an image is chosen from the album to the Upload Wizard,
its EXIF might contain location data. hasLocation() and fix of init()
in UploadMediaDetailFragment ensures that the map icon is shown
correctly
* Fix init() NullPointerException in UploadMediaDetailFragment
* Fix comment typo in UploadMediaDetailFragment
Fix the comment about red and green labels for the map icon
* Use SLF4J logging for try-catch clauses in UploadableFile class
Instead of using printStackTrace(), error directed to logcat
* Use Timber for logging in UploadableFile
Clean up the catch clause in hasLocation() and getDataTimeFromExif()
* fix Bug index out bound
* fix Bug index out bound
* fix Bug index out bound
* fix Bug index out bound
* add some comments for that
* add some comments for that
* add some comments for that
* add some comments for that
Full mode R8 configurations are hindering the working of the app severly.
So, disable the same.
Also, ensure the POJO classes used to hold the API responses aren't optimized
so that we could use the response properly without any issues.
* Makes depicted place and category items unselectable for nearby place
* UploadCategoriesFragmentUnitTests.kt fixes and javadoc addition
* comment fix
* Fixes tests and hidden category appearing and dissapearing issue
* bug fix 5240
Signed-off-by: Zeeshan Alam <zeeshan.alam@fmr.com>
* Incorporated review comments. Remove method MediaDetailPagerFragment.newInstance(false, false, 0) which was called only in unit test
* Added Required empty public constructor
---------
Signed-off-by: Zeeshan Alam <zeeshan.alam@fmr.com>
* 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
* add null check to prevent crash
* 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"
* Removed comma separator from file descriptions
* Removed a redundant line that deleted the last comma of the descriptions
* Added a line to formatDescriptions that replaces every instance of "}}, " with "}}" to remove the comma between descriptions.
* Specified separator as an empty string instead of default value ", " for .joinToString method. Deleted previous fix using .replace method.
* Restored buffer.replace() in updateDescription
On taking a look at the following stack trace:
java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
at fr.free.nrw.commons.nearby.fragments.NearbyParentFragment.updatePlaceList(NearbyParentFragment.java:777)
at fr.free.nrw.commons.nearby.fragments.NearbyParentFragment.lambda$initFilterChips$10$NearbyParentFragment(NearbyParentFragment.java:730)
at fr.free.nrw.commons.nearby.fragments.-$$Lambda$NearbyParentFragment$AGol6SoJlvIYd45Vbz6tTjDiWU4.onCheckedChanged(Unknown Source:2)
at android.widget.CompoundButton.setChecked(CompoundButton.java:235)
at com.google.android.material.chip.Chip.setChecked(Chip.java:665)
at android.widget.CompoundButton.toggle(CompoundButton.java:150)
...
... it seems clear the 'places' list is trying to be iterated
in the updatePlaceList method when it is empty. This is resulting
in an NPE and consequently an app crash.
Avoid the same by ensuring it is always initialized to an empty list.
Commit 0f0358f22 (Bump minSdk to 29, 2023-04-30) bumped the minSdk to
29 since it was found to be necessary for publishing the app to Play
Store.
On futher analysis[1], it seems like that might actually not be necessary.
The crux is:
1. We (rightly) answer "No" to the Play Console question:
"Does your app access location in the background in APKs or
app bundles targeting Android 9 (Pie) or older (SDK level 28 or lower)?"
2. We do not request for the ACCESS_BACKGROUND_LOCATION permission.
So, it should be safe for us to have the minSdkVersion as 21 itself. If
again we face any rejection of the app update, let us handle it at that
point. I clearly am not able to see any valid reason for Play store to
reject the app update.
[1]: https://github.com/commons-app/apps-android-commons/issues/5223#issuecomment-1569554999
Co-authored-by: Kaartic Sivaraam <kaartic.sn@zohocorp.com>
* 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
A replication of the fix done in 9b9521a03 (Update min SDK to 29, 2022-08-22)
to temporarily address #5031.
We're replicating this rather than merging the 4.0-release branch since
merging results in multiple merge conflicts that are non-trivial to
resolve.
We need to find a proper fix for the play store issue, though.
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>
* UploadMediaPresenterTest: fix failing unit tests
* change else if to if condition to handle all cases
* include errorCodes 68 for duplicate image and 96 for image without exif
* optimise if statements
* remove redundant cases
* modify if statements to cover all cases
* simplify all if statements
* add removed comment again
* remove unused imports
* Add conditional on function onAuthorViewClicked for when there's not logged-in user
* Change media.getAuthor() for media.getUser()
* Change hardcoded URL for one given by the BuildConfig object
* feedback dialog: fix black font in dark mode
* LocationPickerActivity: fix light map in dark mode
* Fix#5182 Switch From Mapbox to MapLibre (#5184)
* Fix#5182 Switch From Mapbox to MapLibre
* Fix#5182 Switch From Mapbox to MapLibre - Resolved requestFeature() issue
* Fix#5182 Switch From Mapbox to MapLibre - Resolved dark mode issue on two screens
* Fix#5182 Switch From Mapbox to MapLibre - Resolved dark mode issue on additional screens
* Fix#5182 Switch From Mapbox to MapLibre - Resolved dark mode issue on notification screen
* Fix#5182 Switch From Mapbox to MapLibre - Test errors
* fix issue #5015 - custom image selector not identifying photo location (#5190)
Co-authored-by: Siva <doodsiva@gmail.com>
* feedback dialog: fix black font in dark mode
* LocationPickerActivity: fix light map in dark mode
* LocationPicker: use predefined style based on device theme
* LocationPickerActivityTest: add additional target exception in catch block
* LocationPickerConstants: remove extra newline introduced
---------
Co-authored-by: Kartikay Kaushik <93285364+kartikaykaushik14@users.noreply.github.com>
Co-authored-by: Siva Subramaniam <112970189+siva-subramaniam-v@users.noreply.github.com>
Co-authored-by: Siva <doodsiva@gmail.com>
* Fix#5182 Switch From Mapbox to MapLibre
* Fix#5182 Switch From Mapbox to MapLibre - Resolved requestFeature() issue
* Fix#5182 Switch From Mapbox to MapLibre - Resolved dark mode issue on two screens
* Fix#5182 Switch From Mapbox to MapLibre - Resolved dark mode issue on additional screens
* Fix#5182 Switch From Mapbox to MapLibre - Resolved dark mode issue on notification screen
* Fix#5182 Switch From Mapbox to MapLibre - Test errors
* Kotlin Version Upgraded to 1.6.10
* Kotlin Version Upgraded to 1.6.20
* Kotlin Version Upgraded to 1.7.20
* Fix:5175 Upgraded Minimum SDK Version, Compile and Target SDK Version
* Kotlin Version Upgraded to 1.6.10
* Kotlin Version Upgraded to 1.6.20
* Kotlin Version Upgraded to 1.7.20
* Fix:5175 Upgraded Minimum SDK Version, Compile and Target SDK Version
* fix API call to fetch the latest changes
* add database table to keep a track of reviewed and skipped images
* fix repeating reviewed or skipped images
* add removed newline again
* add necessary comments
* change from timber.e to timber.i in case there is no exception
* reintroduce the parameter rctag in the API URL
* modify API URL to retrieve latest uploads
* remove unused imports and code
* modify ReviewHelperTest and add new unit tests
* modify tests in ReviewHelperTest.kt
* add comments about the value of gcmlimit
* 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
* fixed:After canceling a sharing, application goes back to the search menu #2296
* fixed:After canceling a sharing, application goes back to the search menu #2296
* fixed:After canceling a sharing, application goes back to the search menu #2296
* fixed SeachActivityUnityTest failure when calling testOnBackPressed and cleaned up unnecessary code
* fix cropped numbers in the Achievements fragment
* add null check in inflateAchievements method to fix NullPointerException in AchievementsFragmentUnitTests
* Update DialogUtil to return the dialog object
* Update first instance of Builder to DialogAlert
* Update DialogUtil to allow null instead of empty string
* Update MediaDetailFragment to use DialogUtil
* Remove unnecessary semicolons
* Update AboutActivity to use DialogUtil
* Update ProfileActivity to use DialogUtil
* Update AchievementsFragment to use DialogUtil
* Remove wrong message set in ProfileActivity
* Update DialogUtil to accept null instead of empty string
* Add showAlertDialog option for UploadPresenter to use
* Move location reminder logic from UploadActivity to UploadPresenter
* Add test cases for dialog alert with handleSubmit
* Change threshold variable name to be more descriptive
* Fix broken reference to renamed constant in tests
* Update method to remove leading whitespace
* Update test cases testing remove whitespace method
* Remove unused whitespace check method
* Add comment about use of strip and trim in dealing with whitespace
* Robolectric Unit Tests: change deprecated robolectric RuntimeEnvironment.application to ApplicationProvider and optimise imports
* Delete app/CommonsContributions directory
Removed unnecessary directory created in the process
* 5121: Fix RecentLanguagesAdapterUnitTest
- all tests are passing
- additionally removed 'context' variable from AdvanceQueryFragmentUnitTests.kt as it is not used, and not removed on previous PR #5119
* 5125: Fix LocationPickerActivityUnitTest
- all tests are passing
- all tests are passing
- additionally removed 'context' variable from AdvanceQueryFragmentUnitTests.kt as it is not used, and not removed on previous PR #5119
* Add option to centre on GPS location for issue #5008
* Rename and add new comments for issue #5008
* Add new comments for issue #5008
* Update comments for issue #5008
* the Review feature (in the app's menu) was originally thought as a way to improve our app's overall upload quality, it is not really adapted to the wide variety of pictures uploaded via other upload tools.
* update the Review API call to request only images with the `android app edit` tag.
* add methods to check and remove trailing whitespace
* fix filter to check and remove trailing whitespace
* fix filter to check and remove trailing space first
* add test and fix filter() and removeTrailingWhitespace()
* caption trailing whitespace: change solution to remove trailing whitespaces when set to uploadMediaDetails
* update code documentation
* add more tests include instance tab, carriage return and Japanese whitespace
* Caption field: Stop blocking Japanese Space, convert to English Space when set to uploadMediaDetails
* Change method name from convertJapSpaceToEngSpace to convertIdeographicSpaceToLatinSpace
* Change pattern name from JapSpacePattern to ideographicSpacePattern
* rewrote reverseGeoCode() method to use Coordinates2Country library; wrote simple TC for receiveImage() method to check if country coordinates are set
* removed unused slf4j import in UploadMediaPresenter class
* updated mock in for setCorrectCountryCodeForReceivedImage() TC to match against exact location arguments
* added javadoc for getCountryNamesAndCodes() method in UploadMediaPresenter; implemented "lazy loading" for countryNamesAndCodes field
* removed unused field added by me from UploadMediaPresenterTest
* 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>
The original algorithm uses comma to separate descriptions which causes bugs when there are comma inside description.
The algorithm is changed to repeatedly matching string patterns of `{{languageCode|desciption}}`
* Fixed#4906 : Peer review: "thank the contributor" should show snackbar instead of notification
* changes the snackbar to toast
* added the tests
* minor changes
* minor changes - 2
* 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
* added required changes
* Fixed#4808 : Added the feature of opening last opened screen between Contribution & NearBy
* removed the unnecessary commits
* removed the unnecessary commits
* removed the unnecessary commits
* removed the unnecessary commits
* added test
* comments added
* Fixed - #4844 : [Bug]: In peer review, deletion proposal is sent even if no reason is chosen
* Minor Changes
* Minor Fixes
* added required changes
* added required changes - 1
* Added Test For OK Button
* Minor Fixes
* Display toast and disable API in LeaderboardFragment beta flavor
* Display toast and disable API in AchievementsFragment beta flavor
* Removed unused Gravity import
* Added Toast appearance tests for AchievementsFragment
* Added Toast appearance tests for LeaderboardFragment
* Improve Context detection in Achievements+Leaderboard fragments to ensure Context found for Toast
* Add testOnCreateView for AchievementsFragment
* LocationPickerActivityUnitTests.kt class created
* Unit tests for LocationPickerActivity
* Unit tests for LocationPickerActivity
* Added verify
* verify added
* Minor changes
* Covered more lines
* Covered more lines
* addCredits test added
* Fixed#4793 : Remove the need to tap "Next" again
* Fixed#4793 : Remove the need to tap "Next" again
* Fixed#4793 : Remove the need to tap "Next" again, Added Changes
* Run instrumentation tests on CI and generate unified coverage report
* Fix ci
* Fix failing tests and use mac machine for HAXM
* Fix failing tests
* Fix coverage failure
* Try with ubuntu latest
* Change API level to 23
* Fix Failing Test
* Add prod APK generator workflow back
* Fixed the issue #4806: Now, "Location Not Found" pop appears only one time
* Fixed the issue #4806: solved the small bug related to popups warning
* Fixed the issue #4806: solved the small bug of : Location Not Found Pop Up
* Fixed the issue #4806: solved the small bug of : Location Not Found Pop Up
* Fixed the issue #4806: solved the small bug of : Location Not Found Pop Up
* .github: move pull request template into .github directory
This keeps it out of the root directory. The main intention is
that keeping it out-of-root helps give it less attention which
is enough for the template.
* .github: add a issue form template for the app
This is based on the exisitng issue template of the app. It has
some additional tweaks done to update stale information.
* .github: add some more issue templates
* Location wizard
* Location wizard
* Minor fix
* message changed
* Test fail fixed
* Test fail fixed
* Test fail fixed
* last location triggered
* last location added
* Some test added
* Java docs added
* More java docs added
* Fixes#4732 Show alert dialog card for sharing personal detail submission via email when clicking on feedback menu.
* Show alert dialog card for sharing personal detail submission via email when clicking on feedback menu when user is logged in.
Add javadoc for the new methods
Update alert dialog message.
* Dialog can't be dismissed
* Dialog can't be dismissed
* Nearby Place dialog can remember user preference
* Minor change
* Minor change
* Renamed the map
* initial changes
* add search feature for selecting language
* add search feature for selecting language
* upload issue fix
* minor improvement
* added test and updated settings language selection ui
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* classes
* Almost done
* All done but build fail
* All done but build fail
* Modifications
* Modifications
* Fixed
* string resource
* minor change
* Maintained code conventions
* Moving
* Exception handled
* id name changed
* Test fail fixed
* Bookmark is available from other activities
* Test fail fixed
* Documentation error fixed
* Test added
* Revert Project_Default.xml
* Minor Change
* Revert changes
* Dialog can't be dismissed
* Dialog can't be dismissed
* Suggest users to turn on camera location
* Added safety pattern
* Title removed
* Changed constant
* unformatted search text field for depicts and categories search field of upload wizard
* fix tests by declaring search text field of type PasteSensitiveTextInputEditText
* Added feature for advanced query options in Nearby
* Fix unit-tests coverage
* wip-tests
* Added log to identify if the nearby request is via an advanced query
* Rolledback test-dependency updates
* Fix tests
* build fix
* Added basic tests for relevant method in OkHttpJsonApiClient & NearbyController
* Added NearbyParentFragmentPresenter Tests
* Added AdvancedQueryFragment Unit Tests
* Added more tests for NearbyParentFragmentPresenter
* Reset ContributionsFragment with Upstream
* Overload method loadNearbyPlaces for CustomQuery
* Added more tests
* Added more tests
* Fixed tests for NearbyParentFragmentPresenter
* Changed hardcoded "More" to getStrings(R.string.more) for Unlogged user
- MainActivity toolbar showed "More" when clicked on More options
in other language than English
* Changed hardcoded "More" to getStrings(R.string.more) for Logged user
- MainActivity toolbar showed "More" when clicked on More options
in other language than English
* Added test for: MainActivity.setUpPager
* Pasted text is now unformatted for caption and description
* Removed other branch contribution
* Added test
* Rename .java to .kt
* Test from Java to Kotlin; +small fix
* PasteSensitiveTextInputEditTextTest - updated
Fixes#4372
What changes did you make and why?
Increased number of leaderboard records fetched in a single request from API
**Tests performed (required)**
Tested ProdDebug on Pixel 4 XL with API level 31.
* [Contributions-Tab] Scroll to top on NavBar Button Pressed
On NavBar Contributions Button pressed, if already on the Contributions tab,
scroll to the top of the recyclerView in ContributionsListFragment.
* [UnitTest][Contributions-Tab] Scroll to Top on NavBar Button Pressed
* Changed hardcoded "More" to getStrings(R.string.more) for Unlogged user
- MainActivity toolbar showed "More" when clicked on More options
in other language than English
* Changed hardcoded "More" to getStrings(R.string.more) for Logged user
- MainActivity toolbar showed "More" when clicked on More options
in other language than English
* Added test for: MainActivity.setUpPager
* Changed import statements from junit.framework to org.junit
* Replced deprecated assertequals for 2 doubles by adding a third parameter delta. Used hamcrest.MatcherAssert instead of junit.Assert
* Added multi-file picker functionality for the WLM
* Added multi-file picker functionality for the WLM
* Added multi-file picker functionality for the WLM
* Added multi-file picker functionality for the WLM
We don't do anything about these ones, and they just clutter the logs making important stuff much harder to find (as agreed in #2823 and #4077).
We already use IntelliJ's inspections feature to replace the need for this.
* Cherry-Picked NPE fix from master (#4569)
* Fix notification bug #4547 (#4570)
* Make Single Query for Nearby and WLM pins (#4573)
* Merge nearby and monument queries
* Bug Fix- query resource path change on shouldQueryForMonuments
* Bug Fixes
1. Propagate exceptions for nearby API calls to caller
2. Fix too much work on main thread exception in NearbyParentFragment
* Modify parameters for Nearby query
* Bug fix- current location marker (#4580)
* Move WLM template below geolocation template (#4582)
* Modify string for WLM upload notice
* Fix bug #4583 (#4591)
* Fix bug #4585 by updating kotlin and acra version (#4592)
* Fixes#4554 - only use WLM2021 template for countries that are included in it (#4574)
* Fixes#4554
1. For WLM uploads reverse geo code and see if the country code is supported -only then is the WLM upload flow triggered, otherwise usual nearby uploads happen
2. Bug Fix - Current Location marker and area
* Fixed compile error added after rebasing
* Bug fix for country code in reverse geo code
* Update WLM camaign dates [Do not merge now, merge only after alpha release] (#4584)
* Updates dates for WML campaign
* Bug fix- campaign dates
* Fixed logic for WLM enablement - stick to the month of September
* Add countries supported by WLM2021 template, except Italy
* Versioning for v3.1.0
* Update changelog.md
* Fix empty default lang bug (#4608)
* Fix bug #4583
* Fix empty default lang bug
* Fixes#4595 - Updated nearby query (#4622)
* Fixes#4595 - Updated nearby query
* Removed logic to replace local language in nearby query - that might acccidentally replace other strings
* Fetch property location in usual nearby query
* Remove duplicate line (#4626)
* Change "learn more" link to new wiki
* Add Sweden's P3426 to property filter
* Fixes#4601 - 1. Handle possible exceptions in upload file from stash 2. Modify MWException, as error is nullable, update getTitle and getMessage to rever that (#4627)
* Versioning for v3.1.1
* Update changelog.md
* Updated DB version to rever integrity
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* [GSoC] Master rebase. (#4505)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Fixes#3694 Pre-select places as depictions (#4452)
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Typo fixes (#4461)
* Fixed typo on class documentation of TextUtils
* corrected comma placement in documentation
* Fixed typos in comments
* fix-issue-4424 (#4445)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix edit categories ui (#4414)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fix doom version issue (#4463)
* Update db version
* DBOpenHelper version update
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* Fixes#4437 - Changed indentation on files with 2 spaces to 4 spaces (#4462)
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Use more understandable strings (#4470)
* Fix#3792 Missing Column Issue (#4468)
* Fix Missing Column Issue
* Fix tests
* Add UploadCategoriesFragment Unit Tests (#4473)
* Panorama (#4467)
* panoramic images fixed
* made requested changes
* Minor refactoring
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
* Localisation updates from https://translatewiki.net.
* Main activity title is sometimes "Contributions", sometimes "Commons" (#4472)
Fixes#4438 Replace == with equals() in onRestoreInstanceState
* Localisation updates from https://translatewiki.net.
* caption and description copyable (#4481)
* Removed next button in quiz (#4382)
* issues resolved
* modification done
* warning fixed
* issues resolved
* Button added
* don't know function added
* Button added
* modification done
* modification done
* Localisation updates from https://translatewiki.net.
* Added option to show and modify location while uploading (#4475)
* initial commit
* Everything done
* minor modification
* minor modification
* Issues fixed
* minor modifications
* issue fixed
* Issues fixed
* Tutorial removed from log out state (#4479)
* tutorial removed from log out state
* Issue removed
* Update changelog.md
* Versioning for v3.0.2
* Fix#4482 (#4484)
* Fix crash when image resolution is very high (#4483)
* Localisation updates from https://translatewiki.net.
* Add Contributions Fragment Unit Tests (#4490)
* Fix Tests Errors (#4491)
* Add UploadMediaDetailFragment Unit Tests (#4492)
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* merge fix
* rebase fix
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* [GSoC] Custom Selector Tests (#4494)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Fixes#3694 Pre-select places as depictions (#4452)
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Typo fixes (#4461)
* Fixed typo on class documentation of TextUtils
* corrected comma placement in documentation
* Fixed typos in comments
* fix-issue-4424 (#4445)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix edit categories ui (#4414)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fix doom version issue (#4463)
* Update db version
* DBOpenHelper version update
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* Fixes#4437 - Changed indentation on files with 2 spaces to 4 spaces (#4462)
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Use more understandable strings (#4470)
* Fix#3792 Missing Column Issue (#4468)
* Fix Missing Column Issue
* Fix tests
* Add UploadCategoriesFragment Unit Tests (#4473)
* Panorama (#4467)
* panoramic images fixed
* made requested changes
* Minor refactoring
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
* Localisation updates from https://translatewiki.net.
* Main activity title is sometimes "Contributions", sometimes "Commons" (#4472)
Fixes#4438 Replace == with equals() in onRestoreInstanceState
* Localisation updates from https://translatewiki.net.
* caption and description copyable (#4481)
* Removed next button in quiz (#4382)
* issues resolved
* modification done
* warning fixed
* issues resolved
* Button added
* don't know function added
* Button added
* modification done
* modification done
* Localisation updates from https://translatewiki.net.
* Added option to show and modify location while uploading (#4475)
* initial commit
* Everything done
* minor modification
* minor modification
* Issues fixed
* minor modifications
* issue fixed
* Issues fixed
* Tutorial removed from log out state (#4479)
* tutorial removed from log out state
* Issue removed
* Update changelog.md
* Versioning for v3.0.2
* Fix#4482 (#4484)
* Fix crash when image resolution is very high (#4483)
* Localisation updates from https://translatewiki.net.
* Add Contributions Fragment Unit Tests (#4490)
* Fix Tests Errors (#4491)
* Add UploadMediaDetailFragment Unit Tests (#4492)
* Localisation updates from https://translatewiki.net.
* Folder Fragment test
* Folder Fragment test done
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* Folder Fragment test
* Folder Fragment test done
* Fragment test complete
* Added Custom Selector View Model Test
* ImageFileLoaderTest
* Update strings.xml
* Custom Selector Activiy test
* Image Loader Test
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* Image Loader Improvements (#4516)
* ImageLoader Test Updated (#4517)
* [GSoC] Improvement and bug Fixes (#4522)
* Improvement and bug Fixes
* fixed ellipsize
* Saving selector state (#4526)
* [GSoC] Saved Image Fragment Scroll State (#4528)
* Saved Image Fragment Scroll State
* Fix delete image
* Fixed Delete bug
* Changed custom selector icon
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* [GSoC] Master rebase. (#4505)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Fixes#3694 Pre-select places as depictions (#4452)
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Typo fixes (#4461)
* Fixed typo on class documentation of TextUtils
* corrected comma placement in documentation
* Fixed typos in comments
* fix-issue-4424 (#4445)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix edit categories ui (#4414)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fix doom version issue (#4463)
* Update db version
* DBOpenHelper version update
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* Fixes#4437 - Changed indentation on files with 2 spaces to 4 spaces (#4462)
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Use more understandable strings (#4470)
* Fix#3792 Missing Column Issue (#4468)
* Fix Missing Column Issue
* Fix tests
* Add UploadCategoriesFragment Unit Tests (#4473)
* Panorama (#4467)
* panoramic images fixed
* made requested changes
* Minor refactoring
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
* Localisation updates from https://translatewiki.net.
* Main activity title is sometimes "Contributions", sometimes "Commons" (#4472)
Fixes#4438 Replace == with equals() in onRestoreInstanceState
* Localisation updates from https://translatewiki.net.
* caption and description copyable (#4481)
* Removed next button in quiz (#4382)
* issues resolved
* modification done
* warning fixed
* issues resolved
* Button added
* don't know function added
* Button added
* modification done
* modification done
* Localisation updates from https://translatewiki.net.
* Added option to show and modify location while uploading (#4475)
* initial commit
* Everything done
* minor modification
* minor modification
* Issues fixed
* minor modifications
* issue fixed
* Issues fixed
* Tutorial removed from log out state (#4479)
* tutorial removed from log out state
* Issue removed
* Update changelog.md
* Versioning for v3.0.2
* Fix#4482 (#4484)
* Fix crash when image resolution is very high (#4483)
* Localisation updates from https://translatewiki.net.
* Add Contributions Fragment Unit Tests (#4490)
* Fix Tests Errors (#4491)
* Add UploadMediaDetailFragment Unit Tests (#4492)
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* merge fix
* rebase fix
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* [GSoC] Custom Selector Tests (#4494)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Fixes#3694 Pre-select places as depictions (#4452)
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Typo fixes (#4461)
* Fixed typo on class documentation of TextUtils
* corrected comma placement in documentation
* Fixed typos in comments
* fix-issue-4424 (#4445)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix edit categories ui (#4414)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fix doom version issue (#4463)
* Update db version
* DBOpenHelper version update
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* Fixes#4437 - Changed indentation on files with 2 spaces to 4 spaces (#4462)
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Use more understandable strings (#4470)
* Fix#3792 Missing Column Issue (#4468)
* Fix Missing Column Issue
* Fix tests
* Add UploadCategoriesFragment Unit Tests (#4473)
* Panorama (#4467)
* panoramic images fixed
* made requested changes
* Minor refactoring
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
* Localisation updates from https://translatewiki.net.
* Main activity title is sometimes "Contributions", sometimes "Commons" (#4472)
Fixes#4438 Replace == with equals() in onRestoreInstanceState
* Localisation updates from https://translatewiki.net.
* caption and description copyable (#4481)
* Removed next button in quiz (#4382)
* issues resolved
* modification done
* warning fixed
* issues resolved
* Button added
* don't know function added
* Button added
* modification done
* modification done
* Localisation updates from https://translatewiki.net.
* Added option to show and modify location while uploading (#4475)
* initial commit
* Everything done
* minor modification
* minor modification
* Issues fixed
* minor modifications
* issue fixed
* Issues fixed
* Tutorial removed from log out state (#4479)
* tutorial removed from log out state
* Issue removed
* Update changelog.md
* Versioning for v3.0.2
* Fix#4482 (#4484)
* Fix crash when image resolution is very high (#4483)
* Localisation updates from https://translatewiki.net.
* Add Contributions Fragment Unit Tests (#4490)
* Fix Tests Errors (#4491)
* Add UploadMediaDetailFragment Unit Tests (#4492)
* Localisation updates from https://translatewiki.net.
* Folder Fragment test
* Folder Fragment test done
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* Folder Fragment test
* Folder Fragment test done
* Fragment test complete
* Added Custom Selector View Model Test
* ImageFileLoaderTest
* Update strings.xml
* Custom Selector Activiy test
* Image Loader Test
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* Image Loader Improvements (#4516)
* ImageLoader Test Updated (#4517)
* [GSoC] Improvement and bug Fixes (#4522)
* Improvement and bug Fixes
* fixed ellipsize
* Saving selector state (#4526)
* [GSoC] Saved Image Fragment Scroll State (#4528)
* Saved Image Fragment Scroll State
* Fix delete image
* Fixed Delete bug
* Changed custom selector icon
* rebase fix
* Tests updated (#4538)
* orientation fixed (#4540)
* refractoring (#4541)
* refractoring (#4545)
* [GSoC] Welcome Dialog (#4546)
* Welcome Dialog
* Condition Fix
* Orientation, back button Fix
* [GSoC] Image preview (#4559)
* Image preview
* refractor
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* [GSoC] Master rebase. (#4505)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Fixes#3694 Pre-select places as depictions (#4452)
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Typo fixes (#4461)
* Fixed typo on class documentation of TextUtils
* corrected comma placement in documentation
* Fixed typos in comments
* fix-issue-4424 (#4445)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix edit categories ui (#4414)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fix doom version issue (#4463)
* Update db version
* DBOpenHelper version update
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* Fixes#4437 - Changed indentation on files with 2 spaces to 4 spaces (#4462)
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Use more understandable strings (#4470)
* Fix#3792 Missing Column Issue (#4468)
* Fix Missing Column Issue
* Fix tests
* Add UploadCategoriesFragment Unit Tests (#4473)
* Panorama (#4467)
* panoramic images fixed
* made requested changes
* Minor refactoring
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
* Localisation updates from https://translatewiki.net.
* Main activity title is sometimes "Contributions", sometimes "Commons" (#4472)
Fixes#4438 Replace == with equals() in onRestoreInstanceState
* Localisation updates from https://translatewiki.net.
* caption and description copyable (#4481)
* Removed next button in quiz (#4382)
* issues resolved
* modification done
* warning fixed
* issues resolved
* Button added
* don't know function added
* Button added
* modification done
* modification done
* Localisation updates from https://translatewiki.net.
* Added option to show and modify location while uploading (#4475)
* initial commit
* Everything done
* minor modification
* minor modification
* Issues fixed
* minor modifications
* issue fixed
* Issues fixed
* Tutorial removed from log out state (#4479)
* tutorial removed from log out state
* Issue removed
* Update changelog.md
* Versioning for v3.0.2
* Fix#4482 (#4484)
* Fix crash when image resolution is very high (#4483)
* Localisation updates from https://translatewiki.net.
* Add Contributions Fragment Unit Tests (#4490)
* Fix Tests Errors (#4491)
* Add UploadMediaDetailFragment Unit Tests (#4492)
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* merge fix
* rebase fix
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* [GSoC] Custom Selector Tests (#4494)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Fixes#3694 Pre-select places as depictions (#4452)
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Typo fixes (#4461)
* Fixed typo on class documentation of TextUtils
* corrected comma placement in documentation
* Fixed typos in comments
* fix-issue-4424 (#4445)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix edit categories ui (#4414)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fix doom version issue (#4463)
* Update db version
* DBOpenHelper version update
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* Fixes#4437 - Changed indentation on files with 2 spaces to 4 spaces (#4462)
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Use more understandable strings (#4470)
* Fix#3792 Missing Column Issue (#4468)
* Fix Missing Column Issue
* Fix tests
* Add UploadCategoriesFragment Unit Tests (#4473)
* Panorama (#4467)
* panoramic images fixed
* made requested changes
* Minor refactoring
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
* Localisation updates from https://translatewiki.net.
* Main activity title is sometimes "Contributions", sometimes "Commons" (#4472)
Fixes#4438 Replace == with equals() in onRestoreInstanceState
* Localisation updates from https://translatewiki.net.
* caption and description copyable (#4481)
* Removed next button in quiz (#4382)
* issues resolved
* modification done
* warning fixed
* issues resolved
* Button added
* don't know function added
* Button added
* modification done
* modification done
* Localisation updates from https://translatewiki.net.
* Added option to show and modify location while uploading (#4475)
* initial commit
* Everything done
* minor modification
* minor modification
* Issues fixed
* minor modifications
* issue fixed
* Issues fixed
* Tutorial removed from log out state (#4479)
* tutorial removed from log out state
* Issue removed
* Update changelog.md
* Versioning for v3.0.2
* Fix#4482 (#4484)
* Fix crash when image resolution is very high (#4483)
* Localisation updates from https://translatewiki.net.
* Add Contributions Fragment Unit Tests (#4490)
* Fix Tests Errors (#4491)
* Add UploadMediaDetailFragment Unit Tests (#4492)
* Localisation updates from https://translatewiki.net.
* Folder Fragment test
* Folder Fragment test done
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* Folder Fragment test
* Folder Fragment test done
* Fragment test complete
* Added Custom Selector View Model Test
* ImageFileLoaderTest
* Update strings.xml
* Custom Selector Activiy test
* Image Loader Test
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* Image Loader Improvements (#4516)
* ImageLoader Test Updated (#4517)
* [GSoC] Improvement and bug Fixes (#4522)
* Improvement and bug Fixes
* fixed ellipsize
* Saving selector state (#4526)
* [GSoC] Saved Image Fragment Scroll State (#4528)
* Saved Image Fragment Scroll State
* Fix delete image
* Fixed Delete bug
* Changed custom selector icon
* rebase fix
* [GSoC] Master rebase. (#4505)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Fixes#3694 Pre-select places as depictions (#4452)
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Typo fixes (#4461)
* Fixed typo on class documentation of TextUtils
* corrected comma placement in documentation
* Fixed typos in comments
* fix-issue-4424 (#4445)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix edit categories ui (#4414)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fix doom version issue (#4463)
* Update db version
* DBOpenHelper version update
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* Fixes#4437 - Changed indentation on files with 2 spaces to 4 spaces (#4462)
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* Use more understandable strings (#4470)
* Fix#3792 Missing Column Issue (#4468)
* Fix Missing Column Issue
* Fix tests
* Add UploadCategoriesFragment Unit Tests (#4473)
* Panorama (#4467)
* panoramic images fixed
* made requested changes
* Minor refactoring
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
* Localisation updates from https://translatewiki.net.
* Main activity title is sometimes "Contributions", sometimes "Commons" (#4472)
Fixes#4438 Replace == with equals() in onRestoreInstanceState
* Localisation updates from https://translatewiki.net.
* caption and description copyable (#4481)
* Removed next button in quiz (#4382)
* issues resolved
* modification done
* warning fixed
* issues resolved
* Button added
* don't know function added
* Button added
* modification done
* modification done
* Localisation updates from https://translatewiki.net.
* Added option to show and modify location while uploading (#4475)
* initial commit
* Everything done
* minor modification
* minor modification
* Issues fixed
* minor modifications
* issue fixed
* Issues fixed
* Tutorial removed from log out state (#4479)
* tutorial removed from log out state
* Issue removed
* Update changelog.md
* Versioning for v3.0.2
* Fix#4482 (#4484)
* Fix crash when image resolution is very high (#4483)
* Localisation updates from https://translatewiki.net.
* Add Contributions Fragment Unit Tests (#4490)
* Fix Tests Errors (#4491)
* Add UploadMediaDetailFragment Unit Tests (#4492)
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* [GSoC] Image Selection (#4457)
* Localisation updates from https://translatewiki.net.
* Fixes#4357 After switching to different account, contributions screen shows pictures of previous account (#4421)
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* Remove unnecessary whitespace from a message (#4439)
* Merge v3.0.1 into master (#4446)
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Localisation updates from https://translatewiki.net.
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Added a feature for editing coordinates (#4418)
* not
* Place Picker added
* Pick location and API call linked
* minor warnings resolved
* Code conventions followed
* issue fixed
* Wikitext edited properly
* minor modification
* Location Picker added
* Bottom sheet removed
* Location picker fully implemented
* credit added
* credit added
* issues fixed
* issues fixed
* minor issue fixed
* Some build issues occured merging release v3.0 are fixed. One paranthesis issue is solved, a method about UploadService is removed, since we don't use it anymore. (#4451)
* Localisation updates from https://translatewiki.net.
* Fixes 4344 - Duplicate Uploads (#4442)
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Image selection added
* Forwarded activity result to upload wizard
* Initialised xmls, made folder and image item.
* xmls done
* xmls completed
* removed unwanted attribute
* Created models, adapters and view models (#4441)
* created models, adapters and view models
* Added Image Fragment
* back button linked
* Documentation and refractor
* spaces
* Butterknife annotation
* DiffUtil
* Added Examples
* Extended Custom selector From Base Activity
* made view model injectable
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* Image selection added
* Forwarded activity result to upload wizard
* [GSOC] Added Image Fetch (#4449)
* Added basic Fetch
* added permission request
* Folder count rectified
* Loaded thumbnail
* disabled overlay
* Added sha1 function
* Documented the code
* fixed merge errors
* Documented the remaining function
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
* [GSoC] Show uploaded images differently. (#4464)
* uploaded images shown differently
* Loaded images before query
* Handled exceptions, Made ImageLoader injectable, Document and clean code
* [GSoC] Added Uploaded status table in room database. (#4476)
* added Uploaded status table in room database
* Added unique property, minor refractoring
* Database intigrated
* Database integrated
* Handled result null exception
* Exceptions handled and refractored
* Introduced constants
* moved to sealed class
* No database insert on network error
* queried original image
* documented the code
* Updated uploaded status on upload success
* Image Helper test (#4485)
* [GSoC] Adapter Tests (#4488)
* Added FolderAdapterTest
* Image Adapter Test
* merge fix
* rebase fix
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* Tests updated (#4538)
* orientation fixed (#4540)
* refractoring (#4541)
* refractoring (#4545)
* [GSoC] Welcome Dialog (#4546)
* Welcome Dialog
* Condition Fix
* Orientation, back button Fix
* [GSoC] Image preview (#4559)
* Image preview
* refractor
* update database version
* remove duplicates
Co-authored-by: Aditya Srivastava <iamaditya2009@gmail.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: obsidian-zero <63155026+obsidian-zero@users.noreply.github.com>
Co-authored-by: Obsidian_zero <1198474846@qq.com>
Co-authored-by: Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
Co-authored-by: Ayan Sarkar <71203077+Ayan-10@users.noreply.github.com>
Co-authored-by: Brigham Byerly <6891883+byerlyb20@users.noreply.github.com>
Co-authored-by: Jamie Brown <jamiejbrown521@gmail.com>
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: Ashar <asharalikhan200@gmail.com>
* Integrate WLM
- Show monuments in maps along with nearby
* BugFix in Monuments
1. Single preference for monuments and campaigns
2. Expand collapse chips container in nearby
3. Typo fix in Monuments card in Nearby
4. If a nearby place is a monument as well - do not show them separately, show it as a monument instead
5. Bug fix, monument radius, use the same one as that of nearby
* More bug fixes
1. Possible NPE in nearby
2. Added column location_address in BookmarkLocationDao
3. Bug Fix - Display Date in WLM card
4. WLM card on click takes to nearby
* Use lowercase country code in WLM uploads
* Bug-Fix, WLM Campaign Icon
* 1. Updated monuments query to use any of the following properties for monuments - [P1435, P2186, P1459, P1460, P1216, P709, P718, P5694] 2. Append WikiData QID to descriptions template
* Updated WLM Banner String, Handle NPE in contributions callback
* Added nearby-monuments query log lines
* Handle WLM Query exception : - if an exception is thrown in WLM query, continue showing the nearby items if that succeeds
* Fix BookmarkLocationDaoTest
* Added Column Address in BookmarkLocationDaoTest
* Use fallback description as usual nearby pins even for WLM pins, instead of relying on P6375
* Test fix in BookmarkLocationDao
* Updated template for WLM, removed redundant feilds
* Fixed WLM template
* Removed categories from WLM template
* Fixed BookmarkControllerTest
* Fixed BookmarkLocationFragmentUnitTest
* fix ModelFunctions
* Fixed BookmarksDaoLocationTest
* Fixed WLM template
* #4005 For images in set removed if user selected one image
* #4005 changed code as suggested
* fixed syntax
* added javadoc
* added more java doc
* refactored to more meaningful documentation
* reverted the Project.xml file
* cleaned documentations a little bit
* Edited Project.xml to make indent size 4
* Changed files with 2 space indentation to use 4 space indentation
* Edited Project.xml to make indent size 4
* changed files with 2 space indent to 4 space indent
* fix :Back Pressed Event not work in Explore tab when user not login (#4404)
* fix :Back Pressed Event not work in Explore tab
* minor changes
* fix :Upload count or number of contribution does not get updated when media is successful uploaded (#4399)
* * fix:Number of Contributions not updated
* Add javadocs
* minor changes
* made minor changes
* String was nonsense and untranslatible, fixed (#4466)
* Ability to show captions and descriptions in all entered languages (#4355)
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
Co-authored-by: Prince kushwaha <65972015+Prince-kushwaha@users.noreply.github.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
* implement Ability to show captions and descriptions in all entered languages
*Add Javadoc
* handle Back event of fragment(mediaDetailFragment)
* fix minor bugs
* add internationalization
* revert previous changes
* fix visibility bug
* resolve conflict
* WikidataEditService: stop automatically adding WikidataPlace as a depiction
When the user initiates the upload process from Nearby and also manually adds the place as a depiction, the depiction is added twice. Since this behavior is invisible to the user, it is being removed in preparation for auto-selecting the place as a depiction on the DepictsFragment screen.
* DepictsFragment: auto-select place as a depiction
Pass the Place reference from UploadActivity to DepictsFragment and select the corresponding DepictedItem. Using the place id, retrieve the corresponding Entity to create and select a DepictedItem.
* UploadRepository: use Place from UploadItem to obtain a DepictedItem
Instead of passing a Place object from UploadActivity to DepictsFragment and then passing the Place object up the chain to obtain and select a DepictedItem, retrieve the Place object directly within UploadRepository
* DepictsFragment: select Place depiction when fragment becomes visible
* UploadDepictsAdapter: make adapter aware of selection state
Update selection state when recycled list items are automatically selected, preventing automatically selected items from appearing as unselected until they are forced to re-bind (i.e. after scrolling)
* DepictsFragment: pre-select place depictions for all UploadItems
If several images are selected and set to different places, pre-select all place depictions to reinforce the intended upload workflow philosophy (i.e. all images in a set are intended to be from/of the same place). See discussion in commons-app/apps-android-commons#3694
* DepictsFragment: scroll to the top every time list is updated
* Fixes 4344
- Update the retention policy of the Work Manager to ExistingWorkPolicy.APPEND_OR_REPLACE- which would append the new work to the end of existing one. This helps remove the while loop in UploadWorker which was meant to handle the cases where a new worker would be created for retries. The while loop seemed to have race conditions uploading duplicate entries.
* Update states to IN_PROGRESS before uploads are processed
* Versioning and changelog for v3.0.0 (#4152)
* Versioning for v3.0.0
* Update changelog.md
* Handled migration 8-9-10 in BookmarksLocationDao (#4154)
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* #Fixes #4141
- Handled migrations for BookmarkLocationsDao from 8-9-10
* Fixes#4179 (#4180)
* Handled null pointer exception in MainActivity->ContributionsFragment#backButtonClicked()
* Updated >ContributionsFragment#backButtonClicked() to handle back press properly
* Fixes#4179 (#4181)
* Handled possible null check on MediaDetails in BookmarkListRootFragment#backPressed()
* Cherrypick for hotfix3.1 (#4205)
* Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
Fixes#4159 On Explore Tab, All Available Options on toolbar in media detail view are only targeting the first media in the list.
* fixed bug: App crashes on viewing review in Review Fragment #4132 (#4146)
* fixed bug:app crashes on viewing review in Review Fragment #4135
* Fixed the issue with back button in contribution tab. (#4177)
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Fixed the issue with back navigation button on toolbar in explore tab. (#4175)
* Fix (#4148) Issues on theme change
* fixed themeChange crashes
* fixed comments
* Overlooked the title bar
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
* Fixes#4173 (#4396)
* Fix#4147 Pre-fill desc in Nearby uploads with Wikidata item's label + description (#4390)
* Update query to fetch descriptions
* Make description added to NearbyResultItem
* Make string operations to display description and label in a combined way
* Fix reviews, remove long description from list and swap label and description texts
* Fix repeated information issue
* Fix double information issue
* fix style issues
* Remove douplicated information
* Changes made (#4354)
* Remove nonexistent method
* Fix#4283 IllegalStateException (#4440)
* Fix#4283 IllegalStateException
* Fix flickering issue
* Versioning for v3.0.1
* Update changelog.md
Co-authored-by: Ashish <ashishkumar468@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Pratham Pahariya <54663429+Pratham2305@users.noreply.github.com>
Co-authored-by: Shabir Ahmad <56585337+shabar-shab@users.noreply.github.com>
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
Co-authored-by: Aditya-Srivastav <54016427+4D17Y4@users.noreply.github.com>
Co-authored-by: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com>
Co-authored-by: Vinayak Aggarwal <56196007+vinayak0505@users.noreply.github.com>
* Update UploadMediaDetailFragment.java
* Update LoginActivity.java
Clear CompositeDisposable after logging in successfully. It may help solve the problem of saving the contribution to the previous account
* Revert "Update UploadMediaDetailFragment.java"
This reverts commit b1b4257f20.
Co-authored-by: Obsidian_zero <1198474846@qq.com>
* fix issue with nominating for deletion
* Fix UI issue
* minor improvements
* fix App crash
* Added Javadoc and other minor improvements
* Updated string name
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fix the issue with contributions not appearing after logging in again
* fix old contribution appearing on top
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* * show MediaDetailFragment in ReviewActivity on image click
* Add javadoc
* Reformated code of ReviewActivity xml
* fix typos
* add unit test
* made minor changes
* Fixes#3790
Use WorkManagers to process upload contributions
** Removed UploadService and Added UploadWorker to process contributions Upload
** Made nescessary changes to remove the usages of the Service from the classes
** UI Fxies- Minor changes in the retry and cancel uplaod icons to give them a clickable area of 48 dp
* Fixes#3790
Use WorkManagers to process upload contributions
** Removed UploadService and Added UploadWorker to process contributions Upload
** Made nescessary changes to remove the usages of the Service from the classes
** UI Fxies- Minor changes in the retry and cancel uplaod icons to give them a clickable area of 48 dp
* Updated JavaDocs in UploadWorker, Fixed Test cases
* Updated JavaDocs in UploadWorker, Fixed Test cases
* Updated gradle
* Revert "Updated gradle"
This reverts commit c8979fe6dc.
* rolledback to compileSDKVersion 28, fixed tests
* Don't call the show notifications on the main thread
* Bug Fix- Duplicate contributions, handle upload stash errors
* Simplify peer review button text (#3376)
The lengthy button text was not showing correctly, discussions concluded
that the button texts could be simplified to just "yes" or "no". To ensure
code read-ability, the buttons were renamed. Also made slight code style
adjustments to ReviewImageFragment.java and fragment_review_image.md.
Bug: #3376
* Remove string translate file changes from patch
* fix issue with item with endtime shown as existing
* Removed destroyed and endtime, Added comments and also fixed the broken tests
* minor fix
* Added comments
* fix no such column location_exists error
* minor improvement
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* fixes issue with depiction names in random languages
* minor change
* using if conditions to check
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* Added ability to access nearby tab without location permissions
* added ability to remember user choice if the permission is denied.
* fixed the issue with permission dialog box in contribution tab.
* changed name for stored variables
* minor change
Co-authored-by: Pratham2305 <Pratham2305@users.noreply.github.com>
* #fixes-4143
In ReviewActivity overrides two function-> onResume() and onPause()
* Fixed the Bug-#4143
* reformed the codechange
* reformed the codechange
* Add javadoc
* Add javadoc
* fix-Incomplete Nearby List shown in Landscape mode (#2270)
* fix-Incomplete Nearby List shown in Landscape mode (#2770)
* added the setLayoutParams() method
* reformed the codechange
Description (required)
Fixes commons-app#4161
In the comments of the class PageEditClient.java "@param pagetitle" is written in three areas in this file. It should have been "@param pageTitle" with capital T as pageTitle is being passed as an argument rather than pagetitle.
What changes did you make and why?
Changes are made in the comments of fil where the parameters for Observable method are stated. pagetitle has been changed to pageTitle as the correct argument passed. This change would increase the code readability for fellow developers.
* fixed the contribution crash on scroll
* Investigation
Just to get the Log of the issue
* fixed null data causing scroll to top
* Removed unneeded log import.
For alpha builds we use the gradle-play-publisher to automatically package and publish the app. In older versions there was a compatibility bug with Gradle 6.3 (https://github.com/Triple-T/gradle-play-publisher/issues/797). Using the updated version (2.8.1) should fix the problem.
There is version 3.0.0, however I've stuck to 2.8.1 as the breaking change of 3.0.0 is that it no longer supports PKCS keys (.p12 files) which we use.
Fixes#3946
"Telemetry Opt Out" is a contradictory name for the telemetry setting
as it contradicts the option description by conveying that enabling
the setting means the user has opted out of telemetry while that is
not the case. Enabling the setting means telemetry would be sent
to Mapbox.
So, use a better name that conveys the meaning in a better way without
any contradiction.
* Fixes#3341, #4018
* Defined two feild author and user in Media and used them at the corresponding places
Minor bug fixes
-displaying userName in uploadedBy.
-modified HTML parsing in getArtist.
-Replaced creator with author.
* Fixes#3341, #4018
* Defined two feild author and user in Media and used them at the corresponding places
Minor bug fixes
-displaying userName in uploadedBy.
-modified HTML parsing in getArtist.
-Replaced creator with author.
* fixes#4001
* Overrides the onSaveInstanceState method and onRestoreInstanceState method in LoginActivity.java
* In onSaveInstanceState save ProgressDailog state or visiblity and text of TextView(errorMessage)
* In onRestoreInstanceState restore All saved Data
* Update the commit -1a92b17e37
* formatting the codechanges
* reformated the codechange
* Add additional classes from 2019 hackathon implementation
* Make first tab work
* Make explore tab work
* Handle back button for contrib and nearby
* Fix framelayout and nav bar allignment
* Fix nav bar tint
* Fix nearby card layout
* Make contributions number visible
* Change menu icon according to fragment
* Make notification icon work and remove drawer
* Make favourites accessible from nav bar
* Turn bookmark and explore activities into fragments
* Use bottom sheet instead of more fragment
* Add actions
* Remove unused classes
* Fix indentation
* remove more fragment title
* Fix explore fragment indentation
* Make toolbar settings as we wanted
* Set card view styles
* Make colors for explore actiivty
* Remove drawer from achievements activity
* Add back button to achievements activity
* remove drawer from review activity
* Remove drawer from settings activity
* Remove drawer from about activity
* Fix dagger injection of fragment
* Implement skip login version
* Add theme missing colors
* Add style to moresheet
* refactor name
* call login with button
* Remove all old bookmarks activity dependency
* Make explore tab items clickable
* Do nothing if same tab is selected
* Fix notification icon color for dark theme
* Fix wrong drawable colors
* Handle back button after media details is visible from contrib and explore fragments
* make favourites open media details
* Fix profile icon
* Make user name visible instead
* Move user back to contrib fragment
* Remove NavigationBaseAvticity
* Fix typo in bookmark fragment
* Fix menu button colors
* Remove explore activity
* remove drawer and dependencies
* Make bookmark media details visible
* Cleanup code
* Code cleanup
* Remove unused layout
* Make contriblist UI look like in mockups
* Change limited connecton toggle
* Move list menu item to nearby fragment
* Fix search button crash
* Make media detail appear
* Back button added
* Fix back button npe
* Change bookmark list view
* Fix always the firs item displayed issue
* Allign contrib list bottom line to simple drawee bottom
* fix fragment string
* Fix back button for mobile uploads
* Make lists appear
* Make fav item selected
* Make favourites clickable
* Add back button to media details
* Add toolbar of notification activity
* Change contributions icon
* Fix card UI
* Fix back button in explore
* Make card views look similar to mockups
* Solve campaign bug visible issue
* Make borders a little softer
* Refactored scrollToUserRank to account for users scrolling from below their rank
* Refactored my change to use a similar method
* Added comments to change
* Removed leftover cruft
* Reverted package updates
* Added tests for the LeaderBoard UI
* README: use F-droid badge with surrounding space
The F-droid badge in Commons has a newer revision that doesn't have
the surrounding blank space thus resulting in it being rendered bigger
than the play store badge.
Link to the older version of the image with surrounding blank space
to ensure both badges are of the same size.
* REDAME: bring back alt text for F-droid badge
Re-add the unintentionally removed F-droid badge alt text.
* Fixes#3923
* Handled possible missing backpress cases in MainActivity-nearby
* Fixes#3923
* Handled possible missing backpress cases in MainActivity-nearby
* Fixes#3920
* Delete stale log files post the zip file's size reaches 1000kb
* Fixes#3920
* Delete stale log files (if the size reaches more than 1000kb) on App startup to make room for fresh logs
* #3624 DateTimeFormat wrong - match pattern returned from servers (#3625)
* Revert "Fixes: #3179 Make category search non case-sensitive (#3326)" (#3636)
Simply lower casing the name of the category sent to the server
doesn't result in the server doing a case insensitive category
search. In fact, it reduces the category search space as only
categories that has a lower case character is searched even
if the search text contains upper case characters.
The test case did not catch this issue as the first character
of the title is case insensitive[1].
So, revert the changes done in commit afdeaae075.
See further disucssion in the issue thread of #3179 starting
from [2].
[1]: https://www.mediawiki.org/wiki/Manual:Page_title
[2]: https://github.com/commons-app/apps-android-commons/issues/3179#issuecomment-605462140
* Bugfix/security exception (#3627)
* Fixes#3626
* Check is file is actually created before writing to file, file picker android
* Handle Security exception
* Fixes#3436 and #2881: Media Detail design Overhaul (#3505)
* ic_map_dark_24dp: map icon for white background
* ic_info_outline_dark_24dp: info icon for dark background
* MediaDetailFragment: update the spacer as per image aspect ratio
* fragment_media_detail: design overhaul
* fragment_media_detail: remove redundant background color statements
* make requested changes
* add dark mode support
* minor ui tweak
* white map icon in dark mode
* make rquested changes
* make requested changes to layout
* fix misalignment of category list
* subtle amendments
* convert comments to javadocs
* minor amendments
* minor changes
* add styles for media detail
* Media detail fragment refactored
* make suggested changes
* minor name fix
* fix the delete button border
* Fixes#3639 (Fix Save State implementation of CheckBoxTriState ) (#3686)
* Add #3723 and #3721 to 2.13 release, fix conflicts
Conflicts were caused by merging #3723 before #3721 , so I just rolled both into one commit.
* Fix NullPointer when clicking on image in MediaDetailFragment (#3730)… (#3739)
* Update changelog.md
* Versioning for v2.13
* Fixes#3705 (Crash when viewing pic I just uploaded) (#3782)
* Fixes#3705
* Let the MediaDetailPager fragment know when the contributions have been updated
* Handle NPE, null check on adapter in MediaDetailPagerFragment
* Fixed BookmarkLocationsDao DB migration (#3793)
* Fixes#3725 (#3795)
* Downgraded okhttp version to support Api 19 devices
* Handled null CompoundDrawable[2] in etTitle-> UploadMediaDetailsFragment (#3828)
* DownSample Upload image to be shown in UploadMediaDetailFragment to handle OOM, Bitmap Too large exception (#3830)
* Fixes#3829
* DownSample Upload image to be shown in UploadMediaDetailFragment to handle OOM, Bitmap Too large exception
* removed unused imports, handled possible exceptions
* Let Fresco handle the downsampling of image
* invalidate in onTransformEnd
* Expose an interface TransformationListener in ZoomableDraweeView to listen to transformation change end
* removed photoView dependency
* removed unused imports in ZoomableActivity
* Bugfix, expand/collapse
* changed functio name
* Bugfix/p18 uploads (#3869)
* updated gradle plugin version
* BugFix #3856
* Do not use preference for deciding acceptable lat long for nearby uploads, instead save the corresponding location in the Contribution via UploadItem
* Marshall contribution's hasInvalidLocation
* reset un-related changes
* Fixed test cases
* Minor code formatting and docs
* Fixes#3882 (#3883)
* Make hasInvalidLocation non-null integer with default value 0
Co-authored-by: Ashish Kumar <ashish@Ashishs-MacBook-Air.local>
* Fixes#3766, Added OPENSTREET attribution (#3889)
* Fixes#3766
* Added OPENSTREET attribution in nearby
* Added custom text attribution in Nearby
* Deleted unused class CustomBorderTextView
* review suggested changes
* modified telemetry summary string
* Versioning and changelog for v2.13.1 (#3908)
* Update changelog.md
* Versioning for v2.13.1
* Fixes#3914 (#3915)
* Verify user login before setting upload count
* fixed compile-time error
* fix erros
* delete emptied files
* remove empty file CategoriesModel.java
Co-authored-by: Seán Mac Gillicuddy <seantheappdev@gmail.com>
Co-authored-by: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
Co-authored-by: Kshitij Bhardwaj <44129798+kbhardwaj123@users.noreply.github.com>
Co-authored-by: Vitaly V. Pinchuk <vetal.978@gmail.com>
Co-authored-by: Josephine Lim <josephinelim86@gmail.com>
Co-authored-by: Ashish Kumar <ashish@Ashishs-MacBook-Air.local>
* Fixes#3734
* Donot ignore case while searching categories
* Fixed test-cases to ensure search terms are passed as it is to the CategoryClient
* Used a First_Char_Caps title list term just to ensure test case tests as intended
* Fixed searchAll with empty term test case
* [GSoC] Fixes#3789 Updated UI of achievements activity to display level in first tab & Leaderboard in the second tab (#3794)
* Updated UI of achievements activity to display level in first tab and Leaderboard in the second tab
* Removed hardcoded string
* Fixes#3861 Use the APIs to fetch leaderboard’s based on uploads via mobile app (all time) and display it in the Leaderboard screen. (#3865)
* [GSoC] Added Unit Tests and Fixed Landscape Mode Bug (#3872)
* Fixes#3861 Use the APIs to fetch leaderboard’s based on uploads via mobile app (all time) and display it in the Leaderboard screen.
* Fixed Bug - missing data in landscape mode
* Added Unit Tests for Leaderboard
* Added JavaDocs
* Updated JavaDocs
* [GSoC] Added Pagination to Leaderboard (#3881)
* Fixes#3861 Use the APIs to fetch leaderboard’s based on uploads via mobile app (all time) and display it in the Leaderboard screen.
* Fixed Bug - missing data in landscape mode
* Added Unit Tests for Leaderboard
* Added JavaDocs
* Updated JavaDocs
* Added Pagination
* Added Merge Adapter
* Fixed Test Case
* Added Smooth Scroll
* Added Progress Bar for Paging
* Fixed Gradle
* [GSoC] Added option to set a new avatar (#3892)
* Fixes#3861 Use the APIs to fetch leaderboard’s based on uploads via mobile app (all time) and display it in the Leaderboard screen.
* Added option to set a new avatar
* [GSoC] Added Click to open user profile for leaderboard (#3887)
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* #3749 Improve MediaClient UnitTests (#3846)
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadCategoryDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - update BaseAdapter to be easier to use
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchImagesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchCategoriesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace NotificationRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadDepictsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace PlaceRenderer
* #3756 Convert SearchDepictionsFragment to use Pagination - convert SearchDepictionsFragment
* #3756 Convert SearchDepictionsFragment to use Pagination - fix presenter unit tests now that view is not nullable - fix Category prefix imports
* #3756 Convert SearchDepictionsFragment to use Pagination - test DataSource related classes
* #3756 Convert SearchDepictionsFragment to use Pagination - reset rx scheduler - ignore failing test
* #3760 Convert SearchCategoriesFragment to use Pagination - extract functionality of pagination to base classes - add category pagination
* #3772 Convert SearchImagesFragment to use Pagination - convert SearchImagesFragment - tidy up showing the empty view - make search fragments show snackbar with appropriate text
* #3772 Convert SearchImagesFragment to use Pagination - allow viewpager to load more data
* #3760 remove test that got re-added by merge
* #3760 remove duplicate dependency
* #3772 fix compilation
* #3780 Create media using a combination of Entities & MwQueryResult - construct media with an entity - move fields from media down to contribution - move dynamic fields outside of media - remove unused constructors - remove all unnecessary fetching of captions/descriptions - bump database version
* #3808 Construct media objects that depict an item id correctly - use generator to construct media for DepictedImages
* #3810 Convert DepictedImagesFragment to use Pagination - extract common media paging methods - convert to DepictedImages to use pagination
* #3810 Convert DepictedImagesFragment to use Pagination - rename base classes to better reflect usage
* #3810 Convert DepictedImagesFragment to use Pagination - map to empty result with no pages
* #3810 Convert DepictedImagesFragment to use Pagination - align test with returned values
* #3780 Create media using a combination of Entities & MwQueryResult - update wikicode to align with expected behaviour
* #3780 Create media using a combination of Entities & MwQueryResult - replace old site of thumbnail title with most relevant caption
* #3818 Convert SubDepictionListFragment to use Pagination - replace SubDepictionList with Child and Parent Fragments - replace contracts with simple presenter declarations - move classes to appropriate packages - delete unused network models - delete duplicated paging classes
* #3820 Convert CategoryImagesListFragment to use Pagination - replace CategoryImagesListFragment with CategoriesMediaFragment - disallow the construction of media objects without imageinfo
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert subcategories - add continuation support in category client - rely on interfaces for callbacks of PageableMediaFragments
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert parent categories - delete list fragment - creat base class to support continuation requests in clients
* #3822 Convert SubCategoryImagesListFragment to use Pagination - add tests for ParentCategoriesDataSource
* #3822 Convert SubCategoryImagesListFragment to use Pagination - remove no longer applicable test
* #3749 Improve MediaClient UnitTests - test rewrite
* #3749 Improve MediaClient UnitTests - align with buildConfig property
* With pause and resume for uploads (#3858)
* With pause and resume for uploads
* Dispose current upload
* Make pause and resume work
* Check stash validity
* With java docs
* minor
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Add nearby presenter unit tests (#3615)
* init the test file
* Add tests to check if searchthisarea button action and checkbox actions are added after initialize test
* Add tests to locked unlocked nearby cases
* Add tests for null cases in updateMapAndList method
* Add test to check which locations are used to populate places, depending to LocationChangeType
* Add tests to test users position is not followed if blue dot (current location marker) is not visible
* Add tests to decide search this area method visibility on camera move
* Add tests for multi filteirng of placetypes
* add tests for single place type selection too
* Add tests to tests search view focus gain and bottom sheet visibilities
* Add tests for SearchCloseToCurrentLocation
* Remove two unneeded getter and setter for isNearbyLocked, use @VisibleForTesting annotation instead
* Add VisibleForTesting annotation to initializeNearbyOperations method so that it will be private by default
* Add missing tests
* Add tests for map updated case and add missing lines those are being tested
* Add some missind method verifications
* Create real latlang objects isntead of spying them
* Use a real presenter object instead of a spy
* Revert nonneeded @VisibleForTest annotations, instead reach via lockUnlock method
* Reduce code repetitions
* Do not call a test from another test method
* Add some more tests
* Fix minor issues
* Hidden categories are not showed in suggested categories (#3853)
* Localisation updates from https://translatewiki.net.
* Clarify that the caption would also be used as the image title (#3876)
The app uses the fist caption as the file title. This should also
be communicated to the user via the info box as they would not be
aware of it otherwise.
* Localisation updates from https://translatewiki.net.
* Added Click event for leaderboard, Fixed#3886
* Fixed Travis
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: Seán Mac Gillicuddy <seantheappdev@gmail.com>
Co-authored-by: Vivek Maskara <maskaravivek@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Paulina <63326136+PaulinaQuintero@users.noreply.github.com>
Co-authored-by: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
* [GSoC] Added Leaderboard Filters (#3902)
* Attempt to add filters
* Basic Filter Working
* Filter Improved
* Filter Completed
* Add JavaDocs
* Added Test for Update Avatar
* Decreased Margin of Filter
* [GSoC] Updated leaderboard string (#3897)
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* #3749 Improve MediaClient UnitTests (#3846)
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadCategoryDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - update BaseAdapter to be easier to use
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchImagesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchCategoriesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace NotificationRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadDepictsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace PlaceRenderer
* #3756 Convert SearchDepictionsFragment to use Pagination - convert SearchDepictionsFragment
* #3756 Convert SearchDepictionsFragment to use Pagination - fix presenter unit tests now that view is not nullable - fix Category prefix imports
* #3756 Convert SearchDepictionsFragment to use Pagination - test DataSource related classes
* #3756 Convert SearchDepictionsFragment to use Pagination - reset rx scheduler - ignore failing test
* #3760 Convert SearchCategoriesFragment to use Pagination - extract functionality of pagination to base classes - add category pagination
* #3772 Convert SearchImagesFragment to use Pagination - convert SearchImagesFragment - tidy up showing the empty view - make search fragments show snackbar with appropriate text
* #3772 Convert SearchImagesFragment to use Pagination - allow viewpager to load more data
* #3760 remove test that got re-added by merge
* #3760 remove duplicate dependency
* #3772 fix compilation
* #3780 Create media using a combination of Entities & MwQueryResult - construct media with an entity - move fields from media down to contribution - move dynamic fields outside of media - remove unused constructors - remove all unnecessary fetching of captions/descriptions - bump database version
* #3808 Construct media objects that depict an item id correctly - use generator to construct media for DepictedImages
* #3810 Convert DepictedImagesFragment to use Pagination - extract common media paging methods - convert to DepictedImages to use pagination
* #3810 Convert DepictedImagesFragment to use Pagination - rename base classes to better reflect usage
* #3810 Convert DepictedImagesFragment to use Pagination - map to empty result with no pages
* #3810 Convert DepictedImagesFragment to use Pagination - align test with returned values
* #3780 Create media using a combination of Entities & MwQueryResult - update wikicode to align with expected behaviour
* #3780 Create media using a combination of Entities & MwQueryResult - replace old site of thumbnail title with most relevant caption
* #3818 Convert SubDepictionListFragment to use Pagination - replace SubDepictionList with Child and Parent Fragments - replace contracts with simple presenter declarations - move classes to appropriate packages - delete unused network models - delete duplicated paging classes
* #3820 Convert CategoryImagesListFragment to use Pagination - replace CategoryImagesListFragment with CategoriesMediaFragment - disallow the construction of media objects without imageinfo
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert subcategories - add continuation support in category client - rely on interfaces for callbacks of PageableMediaFragments
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert parent categories - delete list fragment - creat base class to support continuation requests in clients
* #3822 Convert SubCategoryImagesListFragment to use Pagination - add tests for ParentCategoriesDataSource
* #3822 Convert SubCategoryImagesListFragment to use Pagination - remove no longer applicable test
* #3749 Improve MediaClient UnitTests - test rewrite
* #3749 Improve MediaClient UnitTests - align with buildConfig property
* With pause and resume for uploads (#3858)
* With pause and resume for uploads
* Dispose current upload
* Make pause and resume work
* Check stash validity
* With java docs
* minor
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Add nearby presenter unit tests (#3615)
* init the test file
* Add tests to check if searchthisarea button action and checkbox actions are added after initialize test
* Add tests to locked unlocked nearby cases
* Add tests for null cases in updateMapAndList method
* Add test to check which locations are used to populate places, depending to LocationChangeType
* Add tests to test users position is not followed if blue dot (current location marker) is not visible
* Add tests to decide search this area method visibility on camera move
* Add tests for multi filteirng of placetypes
* add tests for single place type selection too
* Add tests to tests search view focus gain and bottom sheet visibilities
* Add tests for SearchCloseToCurrentLocation
* Remove two unneeded getter and setter for isNearbyLocked, use @VisibleForTesting annotation instead
* Add VisibleForTesting annotation to initializeNearbyOperations method so that it will be private by default
* Add missing tests
* Add tests for map updated case and add missing lines those are being tested
* Add some missind method verifications
* Create real latlang objects isntead of spying them
* Use a real presenter object instead of a spy
* Revert nonneeded @VisibleForTest annotations, instead reach via lockUnlock method
* Reduce code repetitions
* Do not call a test from another test method
* Add some more tests
* Fix minor issues
* Hidden categories are not showed in suggested categories (#3853)
* Localisation updates from https://translatewiki.net.
* Clarify that the caption would also be used as the image title (#3876)
The app uses the fist caption as the file title. This should also
be communicated to the user via the info box as they would not be
aware of it otherwise.
* Localisation updates from https://translatewiki.net.
* Delete NearbyMapFragment & NearbyListFragment (#3885)
* Fixes#3884
* Delete NearbyMapFragment & NearbyListFragment
* Fixed NearbyParentFragmentPresenterTest
* Localisation updates from https://translatewiki.net.
* Localisation updates from https://translatewiki.net.
* Add more nearby tests (#3877)
* more nearby tests added
* Add tests for Label class
* Add checkbox test javadocs
* Add javadocs for label
* Localisation updates from https://translatewiki.net.
* Updated strings.xml
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: Seán Mac Gillicuddy <seantheappdev@gmail.com>
Co-authored-by: Vivek Maskara <maskaravivek@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Paulina <63326136+PaulinaQuintero@users.noreply.github.com>
Co-authored-by: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
Co-authored-by: Ashish Kumar <ashishkumar468@gmail.com>
* Updated Strings
* Added JavaDocs for all methods and classes
* Added JavaDocs for all methods and classes
* Added More JavaDocs
* Revert string.xml
* Revert "Revert string.xml"
This reverts commit 00019b598a.
* Added protected
* Fixed strings.xml extra changes
* Revert codeStyle change
* Fixed extra string change
Co-authored-by: Vivek Maskara <maskaravivek@gmail.com>
Co-authored-by: translatewiki.net <l10n-bot@translatewiki.net>
Co-authored-by: Seán Mac Gillicuddy <seantheappdev@gmail.com>
Co-authored-by: neslihanturan <tur.neslihan@gmail.com>
Co-authored-by: Paulina <63326136+PaulinaQuintero@users.noreply.github.com>
Co-authored-by: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
Co-authored-by: Ashish Kumar <ashishkumar468@gmail.com>
* Add a simple message
* Categories are edited
* Display categories
* read whole page
* Revert wrong changes
* Add newly added category field
* Doesnt displaey alreasy added categories
* add strings for notifications
* clean code
* Readd accidentally removed imports
* Fix edit layout style
* Fix category update messages
* Pass isWikipediaButtonDisplayed information to fragment
* Remove unused class
* Fix strings
* Fix string
* Add exeption for uncategorised images too
* Revert project.xml changes
* fix update buttonvisibility issue
* Make sure it works for auto added categories too
* make the button visible
* Make the button appear when categories are entered
* Include cancel button
* Make view updated too
* Make category view edited
* Update categories in an hacky way
* Fix unnecessary method call
* Add notes for short term fix to display added category
* Fix tests
* Fix strings
* Fix click issue
The app uses the fist caption as the file title. This should also
be communicated to the user via the info box as they would not be
aware of it otherwise.
* init the test file
* Add tests to check if searchthisarea button action and checkbox actions are added after initialize test
* Add tests to locked unlocked nearby cases
* Add tests for null cases in updateMapAndList method
* Add test to check which locations are used to populate places, depending to LocationChangeType
* Add tests to test users position is not followed if blue dot (current location marker) is not visible
* Add tests to decide search this area method visibility on camera move
* Add tests for multi filteirng of placetypes
* add tests for single place type selection too
* Add tests to tests search view focus gain and bottom sheet visibilities
* Add tests for SearchCloseToCurrentLocation
* Remove two unneeded getter and setter for isNearbyLocked, use @VisibleForTesting annotation instead
* Add VisibleForTesting annotation to initializeNearbyOperations method so that it will be private by default
* Add missing tests
* Add tests for map updated case and add missing lines those are being tested
* Add some missind method verifications
* Create real latlang objects isntead of spying them
* Use a real presenter object instead of a spy
* Revert nonneeded @VisibleForTest annotations, instead reach via lockUnlock method
* Reduce code repetitions
* Do not call a test from another test method
* Add some more tests
* Fix minor issues
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadCategoryDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - update BaseAdapter to be easier to use
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchImagesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchCategoriesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace NotificationRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadDepictsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace PlaceRenderer
* #3756 Convert SearchDepictionsFragment to use Pagination - convert SearchDepictionsFragment
* #3756 Convert SearchDepictionsFragment to use Pagination - fix presenter unit tests now that view is not nullable - fix Category prefix imports
* #3756 Convert SearchDepictionsFragment to use Pagination - test DataSource related classes
* #3756 Convert SearchDepictionsFragment to use Pagination - reset rx scheduler - ignore failing test
* #3760 Convert SearchCategoriesFragment to use Pagination - extract functionality of pagination to base classes - add category pagination
* #3772 Convert SearchImagesFragment to use Pagination - convert SearchImagesFragment - tidy up showing the empty view - make search fragments show snackbar with appropriate text
* #3772 Convert SearchImagesFragment to use Pagination - allow viewpager to load more data
* #3760 remove test that got re-added by merge
* #3760 remove duplicate dependency
* #3772 fix compilation
* #3780 Create media using a combination of Entities & MwQueryResult - construct media with an entity - move fields from media down to contribution - move dynamic fields outside of media - remove unused constructors - remove all unnecessary fetching of captions/descriptions - bump database version
* #3808 Construct media objects that depict an item id correctly - use generator to construct media for DepictedImages
* #3810 Convert DepictedImagesFragment to use Pagination - extract common media paging methods - convert to DepictedImages to use pagination
* #3810 Convert DepictedImagesFragment to use Pagination - rename base classes to better reflect usage
* #3810 Convert DepictedImagesFragment to use Pagination - map to empty result with no pages
* #3810 Convert DepictedImagesFragment to use Pagination - align test with returned values
* #3780 Create media using a combination of Entities & MwQueryResult - update wikicode to align with expected behaviour
* #3780 Create media using a combination of Entities & MwQueryResult - replace old site of thumbnail title with most relevant caption
* #3818 Convert SubDepictionListFragment to use Pagination - replace SubDepictionList with Child and Parent Fragments - replace contracts with simple presenter declarations - move classes to appropriate packages - delete unused network models - delete duplicated paging classes
* #3820 Convert CategoryImagesListFragment to use Pagination - replace CategoryImagesListFragment with CategoriesMediaFragment - disallow the construction of media objects without imageinfo
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert subcategories - add continuation support in category client - rely on interfaces for callbacks of PageableMediaFragments
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert parent categories - delete list fragment - creat base class to support continuation requests in clients
* #3822 Convert SubCategoryImagesListFragment to use Pagination - add tests for ParentCategoriesDataSource
* #3822 Convert SubCategoryImagesListFragment to use Pagination - remove no longer applicable test
* #3749 Improve MediaClient UnitTests - test rewrite
* #3749 Improve MediaClient UnitTests - align with buildConfig property
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadCategoryDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - update BaseAdapter to be easier to use
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchImagesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchCategoriesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace NotificationRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadDepictsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace PlaceRenderer
* #3756 Convert SearchDepictionsFragment to use Pagination - convert SearchDepictionsFragment
* #3756 Convert SearchDepictionsFragment to use Pagination - fix presenter unit tests now that view is not nullable - fix Category prefix imports
* #3756 Convert SearchDepictionsFragment to use Pagination - test DataSource related classes
* #3756 Convert SearchDepictionsFragment to use Pagination - reset rx scheduler - ignore failing test
* #3760 Convert SearchCategoriesFragment to use Pagination - extract functionality of pagination to base classes - add category pagination
* #3772 Convert SearchImagesFragment to use Pagination - convert SearchImagesFragment - tidy up showing the empty view - make search fragments show snackbar with appropriate text
* #3772 Convert SearchImagesFragment to use Pagination - allow viewpager to load more data
* #3760 remove test that got re-added by merge
* #3760 remove duplicate dependency
* #3772 fix compilation
* #3780 Create media using a combination of Entities & MwQueryResult - construct media with an entity - move fields from media down to contribution - move dynamic fields outside of media - remove unused constructors - remove all unnecessary fetching of captions/descriptions - bump database version
* #3808 Construct media objects that depict an item id correctly - use generator to construct media for DepictedImages
* #3810 Convert DepictedImagesFragment to use Pagination - extract common media paging methods - convert to DepictedImages to use pagination
* #3810 Convert DepictedImagesFragment to use Pagination - rename base classes to better reflect usage
* #3810 Convert DepictedImagesFragment to use Pagination - map to empty result with no pages
* #3810 Convert DepictedImagesFragment to use Pagination - align test with returned values
* #3780 Create media using a combination of Entities & MwQueryResult - update wikicode to align with expected behaviour
* #3780 Create media using a combination of Entities & MwQueryResult - replace old site of thumbnail title with most relevant caption
* #3818 Convert SubDepictionListFragment to use Pagination - replace SubDepictionList with Child and Parent Fragments - replace contracts with simple presenter declarations - move classes to appropriate packages - delete unused network models - delete duplicated paging classes
* #3820 Convert CategoryImagesListFragment to use Pagination - replace CategoryImagesListFragment with CategoriesMediaFragment - disallow the construction of media objects without imageinfo
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert subcategories - add continuation support in category client - rely on interfaces for callbacks of PageableMediaFragments
* #3822 Convert SubCategoryImagesListFragment to use Pagination - convert parent categories - delete list fragment - creat base class to support continuation requests in clients
* #3822 Convert SubCategoryImagesListFragment to use Pagination - add tests for ParentCategoriesDataSource
* #3822 Convert SubCategoryImagesListFragment to use Pagination - remove no longer applicable test
* #3841 Unit Test DepictsClient - add tests
* #3841 Unit Test DepictsClient - fix return types
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadCategoryDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - update BaseAdapter to be easier to use
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchImagesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchCategoriesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace NotificationRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadDepictsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace PlaceRenderer
* #3756 Convert SearchDepictionsFragment to use Pagination - convert SearchDepictionsFragment
* #3756 Convert SearchDepictionsFragment to use Pagination - fix presenter unit tests now that view is not nullable - fix Category prefix imports
* #3756 Convert SearchDepictionsFragment to use Pagination - test DataSource related classes
* #3756 Convert SearchDepictionsFragment to use Pagination - reset rx scheduler - ignore failing test
* #3760 Convert SearchCategoriesFragment to use Pagination - extract functionality of pagination to base classes - add category pagination
* #3772 Convert SearchImagesFragment to use Pagination - convert SearchImagesFragment - tidy up showing the empty view - make search fragments show snackbar with appropriate text
* #3772 Convert SearchImagesFragment to use Pagination - allow viewpager to load more data
* #3760 remove test that got re-added by merge
* #3760 remove duplicate dependency
* #3772 fix compilation
* #3780 Create media using a combination of Entities & MwQueryResult - construct media with an entity - move fields from media down to contribution - move dynamic fields outside of media - remove unused constructors - remove all unnecessary fetching of captions/descriptions - bump database version
* #3808 Construct media objects that depict an item id correctly - use generator to construct media for DepictedImages
* #3810 Convert DepictedImagesFragment to use Pagination - extract common media paging methods - convert to DepictedImages to use pagination
* #3810 Convert DepictedImagesFragment to use Pagination - rename base classes to better reflect usage
* #3810 Convert DepictedImagesFragment to use Pagination - map to empty result with no pages
* #3810 Convert DepictedImagesFragment to use Pagination - align test with returned values
* #3780 Create media using a combination of Entities & MwQueryResult - update wikicode to align with expected behaviour
* #3780 Create media using a combination of Entities & MwQueryResult - replace old site of thumbnail title with most relevant caption
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadCategoryDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - update BaseAdapter to be easier to use
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchImagesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchCategoriesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace NotificationRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadDepictsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace PlaceRenderer
* #3756 Convert SearchDepictionsFragment to use Pagination - convert SearchDepictionsFragment
* #3756 Convert SearchDepictionsFragment to use Pagination - fix presenter unit tests now that view is not nullable - fix Category prefix imports
* #3756 Convert SearchDepictionsFragment to use Pagination - test DataSource related classes
* #3756 Convert SearchDepictionsFragment to use Pagination - reset rx scheduler - ignore failing test
* #3760 Convert SearchCategoriesFragment to use Pagination - extract functionality of pagination to base classes - add category pagination
* #3772 Convert SearchImagesFragment to use Pagination - convert SearchImagesFragment - tidy up showing the empty view - make search fragments show snackbar with appropriate text
* #3772 Convert SearchImagesFragment to use Pagination - allow viewpager to load more data
* #3760 remove test that got re-added by merge
* #3760 remove duplicate dependency
* #3772 fix compilation
* #3780 Create media using a combination of Entities & MwQueryResult - construct media with an entity - move fields from media down to contribution - move dynamic fields outside of media - remove unused constructors - remove all unnecessary fetching of captions/descriptions - bump database version
* #3808 Construct media objects that depict an item id correctly - use generator to construct media for DepictedImages
* #3780 Create media using a combination of Entities & MwQueryResult - update wikicode to align with expected behaviour
* #3780 Create media using a combination of Entities & MwQueryResult - replace old site of thumbnail title with most relevant caption
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadCategoryDepictionsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - update BaseAdapter to be easier to use
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchImagesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace SearchCategoriesRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace NotificationRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace UploadDepictsRenderer
* #3468 Switch from RvRenderer to AdapterDelegates - replace PlaceRenderer
* #3468 fix constant import
* #3468 Switch from RvRenderer to AdapterDelegates - resolve id conflict
* Remove bookmark button from row button set and put to upper level list item
* Fix npe caused by lookinf for parent fragment, we don't have one anymore
* style
* Add new icons for bookmarked places
* Change bookmarked info when bookmarked
* Add pic field to bookmark dao so that we can retrieve them later
* Put bookmarks as the first item of list
* Add bookmark as a label
* Add logic to filter nearby
* remove unneeded changes
* fix word
* Remove logs
* Remove unused part of code
* Fix tests
* Remove logs
* simplify icon picking
* remove redundant margin left
* Remove non needed map and swap
* Add main thread annotation
* Fix tests
* Nearby: make list resize and display message when empty
* refactored and renamed for clarity
* refactoring and simplifying based on comments
* refactoring and simplifying based on comments
* removing vertical orientation
* Updated Navigation Base Activity Unit Tests
* Standardise function call
* Standardise function call
Co-authored-by: Adam Jones <jones_adam@rocketmail.com>
1. The languages were shown with the characters of the given language (i.e. Mandarin was displayed with Chinese characters).
2. The languages were not sorted
How I fixed them:
1. I changed the list that was called from AppLanguageLookUpTable from localized to cannonical.
2. I imported List and Collections and I sorted said list in lexicographical order.
* #3601 [structured-commons] Wrong thumbnails at the "depictions" step when uploading - fix imageview rendering code
* #3601 [structured-commons] Wrong thumbnails at the "depictions" step when uploading - show selected depictions at the top - ensure updates to nearby places are reflected
* #3601 [structured-commons] Wrong thumbnails at the "depictions" step when uploading - don't set imageUrl when the url is none
* #3601 [structured-commons] Wrong thumbnails at the "depictions" step when uploading - rewrite unit tests
* #3601 [structured-commons] Wrong thumbnails at the "depictions" step when uploading - minor cleanup
* #3601 [structured-commons] Wrong thumbnails at the "depictions" step when uploading - fix erroneous cache access
* #3222 Merge master into Structured Data branch, fix conflicts (#3447)
* [WIP] Fixes#2942. Set 'depicts' automatically for images uploaded via 'Nearby'
* 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
* refactored title
* ui for depicts
* bug fix
* basic architecture for depicts
* adde architecture components for depicts
* [WIP] ApacheHttpClientMediaWikiApi.wikidataEditEntity: JSON param creation uses object instead of string
* resolved dagger errors
* multilingual captions and next button error resolved
* fixed next button issues in depicts fragment
* captions and depicts
* resolved previous button click issues
* fixed bindview error and added multi-captions
* replaced description and caption with uploadmediadetail
* refactored few classes
* modified ui of depicts
* minor fixes
* Bug fix, reduced the add description edit text clickable bound (#2973)
* moved depicts before categories
* replaced previous filename with captions
* removed time from filename
* added depicts suggestions
* [WIP] Wikidata Sandbox (Q4115189) test
* changes layout of layout_upload_depicts
* changed layout of upload_depicts
* code stuck at IO_SCHEDULER
* labels and description for depicts activity
* 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)
* [WIP] Fixed duplicated subscriprion for 'addPropertyP180'
* added documentation
* fixed issue #3006
* resolved issue #3004
* fixed issue with categoryPresenterTest.kt
* send captions as labels
* fixed issue with the captions
* optimised imports
* added upload for captions
* minor changes
* resolved issue with uploading captions
* resolved issue with api call
* uploading captions to wikibase
* added some tests and documentation
* undo formatting changes
* uploaded captions as labels to wikibase
* minor changes
* resolved error with spinner adpater
* adding captions to local database
* Fixed issue #3035
* fixed issue #3033
* fixed issue #3005
* fixed issue #3005
* added search for depicts
* fixed issue with compile time
* fixe issue with project build
* fixed issue #3044
* merged uploading depicts into branch
* uploading depicts
* rebased branch
* fixed crash due to depicts
* modified depicts interface
* Resolve merge conflicts
* Fix issues with API calls
* Use wikidata token
* searching depictions from depicts activity
* added some documentation and other changes
* fixed crash on selecting depictions
* sending wikidataentity id to upload depictions
* added changes after review
* Fixed issue with next button diabling in media detail activity
* added tests for depictions
* added all the unit tests and fixed few more issues
* showing captions in media details
* show captions in media details
* added documentations and worked upon review comments
* parsing response for depictions
* displaying captions and depiction QID in media detail
* added documentation
* fetching labels from QIDs
* captions working perfectly
* added documentations and code cleaning
* minor changes
* minor changes
* Showing items in explore
* added search via depicts in explore
* Added setOffscreenPageLimit in ViewPager
* show captions in explore
* show captions in home
* showing depict images under items
* added documentation and code refactoring
* enabled pagination in depiction search
* added some tests and media deatils in depiction detail activity
* fixed bug with back button in media
* fixed issue #3100
* fixed issue #3098
* fixed issue #3099
* fixed issue #3104 and #3098
* showing captions in place of title in home and explore:media
* show captions in explore:depiction image list activity
* showing depictions in media details
* showing depictions in media details in production flavor
* fixed issue #3108 and #3107
* fix isse #3108
* fixed issue #3110 and #3112
* fixed issue #3113
* added documentations
* fixed issue #3076 and #3109
* added depiction search test
* fixed issue #3113
* fixed issue #3111
* fixed issue #3106
* Showing items in explore
* minor change
* fixed issue #3118 and some other changes
* added MVP in searchdepictionsfragment
* added mvp architecture
* added MVP architecture to DepictedImagesDetailsActivity
* added documentation and some minor changes
* added image to depicted item in search depictions
* * Use callbacks from renderer to fetch thumbnails
* adding fresco to load image in depictions
* adding thumbnail image for depictions in upload and explore
* pagination issues
* fixed issue --(showing previous depiction thumbnail in explore)
* Fixed the logic for pagination
* hide progress on success of last page
* adding sub-items and parent items to search in explore
* minor changes for review comments
* fixed issue #3119
* fixed issue #3130
* changes after review comments
* showing child classes for depictions
* Showing child items
* showing parent classes for depicted items
* adding localised search for parent and child items
* clicking on any child class or parent class should call the corresponding class items
* fixed issue of showing wrong thumbnail for P18 item
* fixed issue #3132
* added test for DepictedImagesPresenter.java
* added unit tests for depicted items parent and child classes
* removed unused imports and code formatting
* fixed issue in search test
* deleting unnecessary .attach_pid9313 file
* deleting unnecessary .attach_pid9655 file
* added SearchDepictionsPresenterTest
* changes after review comments
* updates for review comments
* added more documentations
* removed unused code and classes and addressed spacing changes
* changes after review
* fixed build issues in the app
* worked on some review comments
* fixed issue:wrong thumbnail appears on wikidata item
* minor change
* worked on some review changes
* worked on review comments
* minor change
* addressed remaining review comments
* replaced hardcoded jpgs with pageIds to fetch captions
* added documentation
* removed hardcoded extensions and worked on review comments
* review comments
* [WIP] Added Depicts values for flavors
* [WIP] Minor fix
* [WIP] Minor fixes
* [WIP] Fixed URL
* [WIP] Fixed URLs and tokens
* Fixed MediaClient: added check for null in continuation store
* Fixed Media::from, changed return from null to new Media()
* [WIP] Merged with master
* Fix#3254 Displays a proper message in explore section when no result for caption
* Updated Mockito to org.mockito:mockito-inline:2.13.0
* [WIP] Fixed tests after merging
* [WIP] Fixed some JUnit tests
* Fixed 'accessing from wrong thread' error
* #3222 Delete manifest declaration of activity as fragment - stop casting MainActivity to CatgoryImagesCallback - fix tests
* Remove unit test not associated with any class - make CategoryPresenterTest more idiomatic
* fix compilation errors
Co-authored-by: Vitaly V. Pinchuk <vetal.978@gmail.com>
Co-authored-by: Ashish Kumar <ashishkumar468@gmail.com>
Co-authored-by: vanshikaarora <vanshikaa937@gmail.com>
Co-authored-by: Vivek Maskara <maskaravivek@gmail.com>
Co-authored-by: Vanshika Arora <34261945+vanshikaarora@users.noreply.github.com>
Co-authored-by: Somanshu and Himanshu <somanshS14@gmail.com>
* #3482 Use Room in Structured Data branch - remove unused code (#3483)
* #3482 Use Room in Structured Data branch - remove unused code
* #3482 Use Room in Structured Data branch - fix unit test compilation
* #3482 Use Room in Structured Data branch - add kdoc
* #3490 Depiction Search in upload shows No Results before it gets results (#3491)
* #3482 Use Room in Structured Data branch - remove unused code
* #3482 Use Room in Structured Data branch - fix unit test compilation
* #3490 Depiction Search in upload shows No Results before it gets results - stop showing error on subscription
* #3490 Depiction Search in upload shows No Results before it gets results - update test cases
* make labels nullable too
* fix unit test compilation
* #3222 remove lingering reference to depiction content provider
* Fix Crash
* #3222 Merge master into Structured Data branch, fix conflicts - review fixes
* Fix method invocations
* #3529 Captions/depictions are not saved to Commons (#3574)
* #3529 Captions/depictions are not saved to Commons - make copy of list of depictionEntityIds - uncomment editBaseDepictsProperty - refactor upload related classes
* #3529 Captions/depictions are not saved to Commons - fix wrong ArrayList usage
* #3529 Captions/depictions are not saved to Commons - fix test
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs (#3578)
* #3529 Captions/depictions are not saved to Commons - make copy of list of depictionEntityIds - uncomment editBaseDepictsProperty - refactor upload related classes
* #3529 Captions/depictions are not saved to Commons - fix wrong ArrayList usage
* #3529 Captions/depictions are not saved to Commons - fix test
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs - replace title with the first MediaDetail
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs - restore button disabling
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs - fix nearby place
* fix thumbnail issue 3526 (#3617)
* #3222 Merge master into Structured Data branch, fix conflicts - fix bad merge
* #3529 Captions/depictions are not saved to Commons (#3588)
* #3529 Captions/depictions are not saved to Commons - update flow to update appropriate data
* #3529 Captions/depictions are not saved to Commons - fix invoking of setlabel
* #3529 Captions/depictions are not saved to Commons - fix unit tests
* #3529 Captions/depictions are not saved to Commons - use constant for @Named
* #3529 Captions/depictions are not saved to Commons - remove captions interface
* #3529 Captions/depictions are not saved to Commons - delete unused Contribution fields - enforce Single Responsibility by using PageContentsCreator
* #3529 Captions/depictions are not saved to Commons - prefix id with M - remove language from url and only add from Field
* #3529 Captions/depictions are not saved to Commons - make edits of depictions and captions sequential
* #3529 Captions/depictions are not saved to Commons - remove unused model fields
* #3529 Captions/depictions are not saved to Commons - weaken type of categories - copy list on Contribution creation
* #3529 Captions/depictions are not saved to Commons - mark Media fields private - weaken types - remove partly implemented fields
* #3529 Captions/depictions are not saved to Commons - add semi colon
* #3529 Captions/depictions are not saved to Commons - fix test
* Fix issue 3526 Unlike "Items" tab, "child classes" tab does not display description nor image thumbnail (#3619)
* fix thumbnail issue 3526
* Fix Description issue 3526
* revert changes on this file, not finished with it yet
* Fix Description for Child and Parent classes - issue 3526
* Remove conflict text in file
* Remove retrofit.HEAD import
* Incorporated review comments
* Fix issue 3137 (#3637)
* Fix issue 3137
* Remove import Timber
* Remove unnecessary space
* #3222 Merge master into Structured Data branch, fix conflicts - revert logging
* Fix build
* #3661 No Depictions Selected Dialog has reversed buttons - fix button order
* Revert "#3661 No Depictions Selected Dialog has reversed buttons - fix button order"
This reverts commit d8f9809584.
* #3222 Merge master into Structured Data branch, fix conflicts - remove unused methods/fields
* #3661 No Depictions Selected Dialog has reversed buttons - fix button order (#3662)
* #3653 Many Mnull requests - stop requesting captions for null ids (#3657)
* #3653 Many Mnull requests - stop requesting captions for null ids
* #3653 Many Mnull requests - move log line
* #3633 [structured-data branch] In depictions selection screen, suggest nearby items (#3650)
* #3633 [structured-data branch] In depictions selection screen, suggest nearby items - for empty search terms show nearby items for depictions
* #3633 [structured-data branch] In depictions selection screen, suggest nearby items - use linear radii progression to search for places
* #3666 Crash when uploading on structured-data branch - revert cleanup of UploadController (#3670)
* #3222 Merge Structured Data branch into master - fix caption rendering in new UI
* #3222 Merge Structured Data branch into master - upgrade retrofit + okhttp
* #3664 Stop using JsonObject on StructuredData (#3672)
* #3664 Stop using JsonObject on StructuredData - remove usage in Media classes - remove from depicts client - create partial network models
* #3664 Stop using JsonObject on StructuredData - allow partial mapping of polymorphic models by returning null in typeadapter
* #3664 Stop using JsonObject on StructuredData - use models for editing depicts property
* #3664 Stop using JsonObject on StructuredData - use models for sparql parent query
* #3664 Stop using JsonObject on StructuredData - fix unit test compilation
* #3664 Stop using JsonObject on StructuredData - unify sparql responses
* #3664 Stop using JsonObject on StructuredData - minor cleanup of misnamed/unused/too broad visibility
* #3664 Stop using JsonObject on StructuredData - share variable names and logic for the Sarql queries
* #3664 Stop using JsonObject on StructuredData - add error logging
* #228 Overwrite happens - fix extension of filename (#3689)
* #3675 Rename buttons of the dialog box shown when no depiction is selected - remove "yes, submit" and "no, go back" (#3688)
* #3680 Tip appears even when not tapping the (i) icon - use TextInputLayout EndIcons (#3683)
* #3680 Tip appears even when not tapping the (i) icon - use TextInputLayout EndIcons
* #3680 Tip appears even when not tapping the (i) icon - reaorder endIcon mode call so tinting is applied
* structured data - fix compilation
Co-authored-by: Vitaly V. Pinchuk <vetal.978@gmail.com>
Co-authored-by: Ashish Kumar <ashishkumar468@gmail.com>
Co-authored-by: vanshikaarora <vanshikaa937@gmail.com>
Co-authored-by: Vivek Maskara <maskaravivek@gmail.com>
Co-authored-by: Vanshika Arora <34261945+vanshikaarora@users.noreply.github.com>
Co-authored-by: Somanshu and Himanshu <somanshS14@gmail.com>
Co-authored-by: vvijayalakshmi21 <34595292+vvijayalakshmi21@users.noreply.github.com>
* #3222 Merge master into Structured Data branch, fix conflicts (#3447)
* [WIP] Fixes#2942. Set 'depicts' automatically for images uploaded via 'Nearby'
* 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
* refactored title
* ui for depicts
* bug fix
* basic architecture for depicts
* adde architecture components for depicts
* [WIP] ApacheHttpClientMediaWikiApi.wikidataEditEntity: JSON param creation uses object instead of string
* resolved dagger errors
* multilingual captions and next button error resolved
* fixed next button issues in depicts fragment
* captions and depicts
* resolved previous button click issues
* fixed bindview error and added multi-captions
* replaced description and caption with uploadmediadetail
* refactored few classes
* modified ui of depicts
* minor fixes
* Bug fix, reduced the add description edit text clickable bound (#2973)
* moved depicts before categories
* replaced previous filename with captions
* removed time from filename
* added depicts suggestions
* [WIP] Wikidata Sandbox (Q4115189) test
* changes layout of layout_upload_depicts
* changed layout of upload_depicts
* code stuck at IO_SCHEDULER
* labels and description for depicts activity
* 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)
* [WIP] Fixed duplicated subscriprion for 'addPropertyP180'
* added documentation
* fixed issue #3006
* resolved issue #3004
* fixed issue with categoryPresenterTest.kt
* send captions as labels
* fixed issue with the captions
* optimised imports
* added upload for captions
* minor changes
* resolved issue with uploading captions
* resolved issue with api call
* uploading captions to wikibase
* added some tests and documentation
* undo formatting changes
* uploaded captions as labels to wikibase
* minor changes
* resolved error with spinner adpater
* adding captions to local database
* Fixed issue #3035
* fixed issue #3033
* fixed issue #3005
* fixed issue #3005
* added search for depicts
* fixed issue with compile time
* fixe issue with project build
* fixed issue #3044
* merged uploading depicts into branch
* uploading depicts
* rebased branch
* fixed crash due to depicts
* modified depicts interface
* Resolve merge conflicts
* Fix issues with API calls
* Use wikidata token
* searching depictions from depicts activity
* added some documentation and other changes
* fixed crash on selecting depictions
* sending wikidataentity id to upload depictions
* added changes after review
* Fixed issue with next button diabling in media detail activity
* added tests for depictions
* added all the unit tests and fixed few more issues
* showing captions in media details
* show captions in media details
* added documentations and worked upon review comments
* parsing response for depictions
* displaying captions and depiction QID in media detail
* added documentation
* fetching labels from QIDs
* captions working perfectly
* added documentations and code cleaning
* minor changes
* minor changes
* Showing items in explore
* added search via depicts in explore
* Added setOffscreenPageLimit in ViewPager
* show captions in explore
* show captions in home
* showing depict images under items
* added documentation and code refactoring
* enabled pagination in depiction search
* added some tests and media deatils in depiction detail activity
* fixed bug with back button in media
* fixed issue #3100
* fixed issue #3098
* fixed issue #3099
* fixed issue #3104 and #3098
* showing captions in place of title in home and explore:media
* show captions in explore:depiction image list activity
* showing depictions in media details
* showing depictions in media details in production flavor
* fixed issue #3108 and #3107
* fix isse #3108
* fixed issue #3110 and #3112
* fixed issue #3113
* added documentations
* fixed issue #3076 and #3109
* added depiction search test
* fixed issue #3113
* fixed issue #3111
* fixed issue #3106
* Showing items in explore
* minor change
* fixed issue #3118 and some other changes
* added MVP in searchdepictionsfragment
* added mvp architecture
* added MVP architecture to DepictedImagesDetailsActivity
* added documentation and some minor changes
* added image to depicted item in search depictions
* * Use callbacks from renderer to fetch thumbnails
* adding fresco to load image in depictions
* adding thumbnail image for depictions in upload and explore
* pagination issues
* fixed issue --(showing previous depiction thumbnail in explore)
* Fixed the logic for pagination
* hide progress on success of last page
* adding sub-items and parent items to search in explore
* minor changes for review comments
* fixed issue #3119
* fixed issue #3130
* changes after review comments
* showing child classes for depictions
* Showing child items
* showing parent classes for depicted items
* adding localised search for parent and child items
* clicking on any child class or parent class should call the corresponding class items
* fixed issue of showing wrong thumbnail for P18 item
* fixed issue #3132
* added test for DepictedImagesPresenter.java
* added unit tests for depicted items parent and child classes
* removed unused imports and code formatting
* fixed issue in search test
* deleting unnecessary .attach_pid9313 file
* deleting unnecessary .attach_pid9655 file
* added SearchDepictionsPresenterTest
* changes after review comments
* updates for review comments
* added more documentations
* removed unused code and classes and addressed spacing changes
* changes after review
* fixed build issues in the app
* worked on some review comments
* fixed issue:wrong thumbnail appears on wikidata item
* minor change
* worked on some review changes
* worked on review comments
* minor change
* addressed remaining review comments
* replaced hardcoded jpgs with pageIds to fetch captions
* added documentation
* removed hardcoded extensions and worked on review comments
* review comments
* [WIP] Added Depicts values for flavors
* [WIP] Minor fix
* [WIP] Minor fixes
* [WIP] Fixed URL
* [WIP] Fixed URLs and tokens
* Fixed MediaClient: added check for null in continuation store
* Fixed Media::from, changed return from null to new Media()
* [WIP] Merged with master
* Fix#3254 Displays a proper message in explore section when no result for caption
* Updated Mockito to org.mockito:mockito-inline:2.13.0
* [WIP] Fixed tests after merging
* [WIP] Fixed some JUnit tests
* Fixed 'accessing from wrong thread' error
* #3222 Delete manifest declaration of activity as fragment - stop casting MainActivity to CatgoryImagesCallback - fix tests
* Remove unit test not associated with any class - make CategoryPresenterTest more idiomatic
* fix compilation errors
Co-authored-by: Vitaly V. Pinchuk <vetal.978@gmail.com>
Co-authored-by: Ashish Kumar <ashishkumar468@gmail.com>
Co-authored-by: vanshikaarora <vanshikaa937@gmail.com>
Co-authored-by: Vivek Maskara <maskaravivek@gmail.com>
Co-authored-by: Vanshika Arora <34261945+vanshikaarora@users.noreply.github.com>
Co-authored-by: Somanshu and Himanshu <somanshS14@gmail.com>
* #3482 Use Room in Structured Data branch - remove unused code (#3483)
* #3482 Use Room in Structured Data branch - remove unused code
* #3482 Use Room in Structured Data branch - fix unit test compilation
* #3482 Use Room in Structured Data branch - add kdoc
* #3490 Depiction Search in upload shows No Results before it gets results (#3491)
* #3482 Use Room in Structured Data branch - remove unused code
* #3482 Use Room in Structured Data branch - fix unit test compilation
* #3490 Depiction Search in upload shows No Results before it gets results - stop showing error on subscription
* #3490 Depiction Search in upload shows No Results before it gets results - update test cases
* make labels nullable too
* fix unit test compilation
* #3222 remove lingering reference to depiction content provider
* Fix Crash
* #3222 Merge master into Structured Data branch, fix conflicts - review fixes
* Fix method invocations
* #3529 Captions/depictions are not saved to Commons (#3574)
* #3529 Captions/depictions are not saved to Commons - make copy of list of depictionEntityIds - uncomment editBaseDepictsProperty - refactor upload related classes
* #3529 Captions/depictions are not saved to Commons - fix wrong ArrayList usage
* #3529 Captions/depictions are not saved to Commons - fix test
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs (#3578)
* #3529 Captions/depictions are not saved to Commons - make copy of list of depictionEntityIds - uncomment editBaseDepictsProperty - refactor upload related classes
* #3529 Captions/depictions are not saved to Commons - fix wrong ArrayList usage
* #3529 Captions/depictions are not saved to Commons - fix test
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs - replace title with the first MediaDetail
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs - restore button disabling
* #3503 Remove Title/Caption From MediaUploadDetail and only use Caption/Description pairs - fix nearby place
* fix thumbnail issue 3526 (#3617)
* #3222 Merge master into Structured Data branch, fix conflicts - fix bad merge
* #3529 Captions/depictions are not saved to Commons (#3588)
* #3529 Captions/depictions are not saved to Commons - update flow to update appropriate data
* #3529 Captions/depictions are not saved to Commons - fix invoking of setlabel
* #3529 Captions/depictions are not saved to Commons - fix unit tests
* #3529 Captions/depictions are not saved to Commons - use constant for @Named
* #3529 Captions/depictions are not saved to Commons - remove captions interface
* #3529 Captions/depictions are not saved to Commons - delete unused Contribution fields - enforce Single Responsibility by using PageContentsCreator
* #3529 Captions/depictions are not saved to Commons - prefix id with M - remove language from url and only add from Field
* #3529 Captions/depictions are not saved to Commons - make edits of depictions and captions sequential
* #3529 Captions/depictions are not saved to Commons - remove unused model fields
* #3529 Captions/depictions are not saved to Commons - weaken type of categories - copy list on Contribution creation
* #3529 Captions/depictions are not saved to Commons - mark Media fields private - weaken types - remove partly implemented fields
* #3529 Captions/depictions are not saved to Commons - add semi colon
* #3529 Captions/depictions are not saved to Commons - fix test
* Fix issue 3526 Unlike "Items" tab, "child classes" tab does not display description nor image thumbnail (#3619)
* fix thumbnail issue 3526
* Fix Description issue 3526
* revert changes on this file, not finished with it yet
* Fix Description for Child and Parent classes - issue 3526
* Remove conflict text in file
* Remove retrofit.HEAD import
* Incorporated review comments
* Fix issue 3137 (#3637)
* Fix issue 3137
* Remove import Timber
* Remove unnecessary space
* #3222 Merge master into Structured Data branch, fix conflicts - revert logging
* Fix build
* #3661 No Depictions Selected Dialog has reversed buttons - fix button order
* Revert "#3661 No Depictions Selected Dialog has reversed buttons - fix button order"
This reverts commit d8f9809584.
* #3222 Merge master into Structured Data branch, fix conflicts - remove unused methods/fields
* #3661 No Depictions Selected Dialog has reversed buttons - fix button order (#3662)
* #3653 Many Mnull requests - stop requesting captions for null ids (#3657)
* #3653 Many Mnull requests - stop requesting captions for null ids
* #3653 Many Mnull requests - move log line
* #3633 [structured-data branch] In depictions selection screen, suggest nearby items (#3650)
* #3633 [structured-data branch] In depictions selection screen, suggest nearby items - for empty search terms show nearby items for depictions
* #3633 [structured-data branch] In depictions selection screen, suggest nearby items - use linear radii progression to search for places
* #3666 Crash when uploading on structured-data branch - revert cleanup of UploadController (#3670)
* #3222 Merge Structured Data branch into master - fix caption rendering in new UI
* #3222 Merge Structured Data branch into master - upgrade retrofit + okhttp
* #3664 Stop using JsonObject on StructuredData (#3672)
* #3664 Stop using JsonObject on StructuredData - remove usage in Media classes - remove from depicts client - create partial network models
* #3664 Stop using JsonObject on StructuredData - allow partial mapping of polymorphic models by returning null in typeadapter
* #3664 Stop using JsonObject on StructuredData - use models for editing depicts property
* #3664 Stop using JsonObject on StructuredData - use models for sparql parent query
* #3664 Stop using JsonObject on StructuredData - fix unit test compilation
* #3664 Stop using JsonObject on StructuredData - unify sparql responses
* #3664 Stop using JsonObject on StructuredData - minor cleanup of misnamed/unused/too broad visibility
* #3664 Stop using JsonObject on StructuredData - share variable names and logic for the Sarql queries
* #3664 Stop using JsonObject on StructuredData - add error logging
Co-authored-by: Vitaly V. Pinchuk <vetal.978@gmail.com>
Co-authored-by: Ashish Kumar <ashishkumar468@gmail.com>
Co-authored-by: vanshikaarora <vanshikaa937@gmail.com>
Co-authored-by: Vivek Maskara <maskaravivek@gmail.com>
Co-authored-by: Vanshika Arora <34261945+vanshikaarora@users.noreply.github.com>
Co-authored-by: Somanshu and Himanshu <somanshS14@gmail.com>
Co-authored-by: vvijayalakshmi21 <34595292+vvijayalakshmi21@users.noreply.github.com>
* ic_map_dark_24dp: map icon for white background
* ic_info_outline_dark_24dp: info icon for dark background
* MediaDetailFragment: update the spacer as per image aspect ratio
* fragment_media_detail: design overhaul
* fragment_media_detail: remove redundant background color statements
* make requested changes
* add dark mode support
* minor ui tweak
* white map icon in dark mode
* make rquested changes
* make requested changes to layout
* fix misalignment of category list
* subtle amendments
* convert comments to javadocs
* minor amendments
* minor changes
* add styles for media detail
* Media detail fragment refactored
* make suggested changes
* minor name fix
* fix the delete button border
* optimise width loading
* amending as per the reviews
* aspect ratio updates after layout completion
* MediaDetailFragment: update aspect ratio using onGlobalLayoutListener
* remove unnecessary imports
* ZoomableActivity: add hierarchy to view for displaying progress bar
* CircularProgressBar: circular progress bar for ZoomableDraweeView
* ZoomableActivity: add indeterministic loading spinner
* activity_zoomable: add inderterministic Progressbar
* remove circular progressbar and make changes to controller listener
For some time now, GitHub is showing cards when we hover over an issue
number which gives us a quick summary of the issue. The issue title is
shown in the card among other things.
Given that and the fact that we already require the issue number to be
specified in the pull request description, it's now moot to
ask the contributors to include the issue title in the pull request
description. So, let's remove this unnecessary burden from them.
* #3408 Refactoring the FileProcessor and GPSExtractor classes - refactor FileProcessor
* #3408 Refactoring the FileProcessor and GPSExtractor classes - refactor and rename GpsExtractor
* #3408 Refactoring the FileProcessor and GPSExtractor classes - convert ImageCoordinates to kotlin
* #3408 Refactoring the FileProcessor and GPSExtractor classes - convert FileProcessor to kotlin
* #3408 Refactoring the FileProcessor and GPSExtractor classes - minor reformatting
* #3408 Refactoring the FileProcessor and GPSExtractor classes - fix compilation and naming issues
* #3408 Refactoring the FileProcessor and GPSExtractor classes - remove empty test
* #3408 Refactoring the FileProcessor and GPSExtractor classes - set coordinates for upload item if user chooses it
* Issue #3428: Swapped text in dialog buttons because, according to Android Convention, they were opposite each other
* Fixed Issue #3428 so it actually works correctly now: Swapped text in dialog buttons because, according to Android Convention, they were opposite each other
* Made sure that all of the places where the two types of showAlertDialog accurately match up with the new position of positive and negative text on the dialog box
Also removed occurences of empty lambda expressions and used null instead
* modified deletThisPicture to be accurate lambda call
* reverted mistake where ellipses replaced the three dots
* Fixes#3359
* Cache thumb url & imageUrl in local db
* Use Fresco's ImageRequest to show images in ContributionViewHolder[this was the issue, we should have always used this to show the image]
* Deleted DisplayableContribution (not needed anymore)
* Exposed abstract function in ContributionDao to updateContribution
* * Make position private in ContributionViewHolder
* Remove MediaDataExtractor from ContributionsFragment
* * Show placeholder image for Contributions while the image loads
* setHasStableId's ContributionsAdapter
* make Random variable private in ContributionViewHolder
* replace local variable-if-with ternary operator in ContributionViewHolder
* Fix indentation/formatting of ternary operator in ContributionViewHolder
* I might revert this commit[I have reasons]
* Create in-memory drawables in CVH's onBind, caches are bad, add mental overhead
* Revert "I might revert this commit[I have reasons]"
This reverts commit 627ac91517.
* minor formatting changes, reverted 627ac91517
* uh-oh missed semicolon, java
* minor formatting changes
* Add p18value variable to contrib
* set place.pic to candidate contribution
* Add p18 value to contrib
* Passes p18 value to wikidata upload service
* Checks if pic parameter of the wikidata item is empty or not. If not, it does not overrides the existing image, it is just a regular commons upload.
* Make public var private
* Make current tests pass
* Add test case for p18 value is not empty
* Fix wrong log message
* Add nonnul annotation and fix method javadoc
* scalebar added in map
* changes reverted in .idea/Project.xml
* magic numbers replaced with constants for scalebar
* Default setting for scaling unit
* Default setting for scalebar refresh interval
* Reformatted code for adding scalebar
* dimen values for scalebar params
* Revert stopgaps related to beta server cert issue
The upstream issue with Commons beta server has been
fixed now[1]. So, there's no point in stopgapping
the issue anymore. So, revert the related changes.
This reverts fa87eb5661
and df426f7c42 which
correspond to PRs #3350 and #3349 respectively.
[1]: https://phabricator.wikimedia.org/T243881#5861983
* Test-fix: fix the failing CI test
* #3493 App freezes for 15 seconds when you press Next in UploadMediaDetailsFragment - add apropriate schedulers and convert justs to fromCallable
* #3493 App freezes for 15 seconds when you press Next in UploadMediaDetailsFragment - remove test for removed functionality
* #3493 App freezes for 15 seconds when you press Next in UploadMediaDetailsFragment - replace kotlin with java
* Part of #3127
* Added Room Dependency
* Shifted ContributionsDao to use RoomDB
* Save and Fetch contributions via RoomDAO
* Bugfixes, fixed test cases, injected schedulers for ContributionsPresenter
* removed stetho
* Fixed ReviewHelperTest cases
* Fixed test cases in DeleteHelperTest
* Fetch all contributions [TODO add pagination to use this, maybe later in a seperate PR]
* Update Schema false in AppDatabase
* removed parameter from fetchControbutions
* Added logs for fetch contributions
* Fixed test case ContributionsPresenter
* Added an autogenerate primary key, submit save contributions on executor
* fixed getItemAtPosition
* MainActivity Config changes +=orientation
* BugFixes
* Make AppDataBase Singleton
* Set _id as autogenerate primary key [replacing the previously used filename, seems like they are not unique]
* Replace Execxutor Utils with Subscribers on Singles in UploadService
* BugFix, Upload Progress
* Remove un-nescessary null check on contributions in ContributionsListAdapter
* removed ContributionsListFragment [not-implemeted]
* Review suggested changes
* removed un-nescessary null checks
* provide ContributionsDao
* Minor bug fixes
* wip
* delete existing contributions table (from the existing db) on upgrade
* remove un-nescessary null checks in test classes
* shifted media to be a local variable in ReviewHelperTest
* removed captured folder
* Dispose composite disposables in UploadService
* replaced size check with isEmpty ContributionsPresenter
* transform saveContributions to a Completable
* Addressed comments in review
* Typo in Contributions
* ReasonBuilderTest (create media object instead of mocking)
* Use global Gson object instead of creating a new one in Converters
* Provide Gson to Converters from the CommonsApplicationComponent
* use static method instead of field instead of static field to provide GSON in Converters
* Modified gitignore to exclude captures/*
* MediaDetailFragment: add zoom feature
* fragment_media_detail: add SimpleDrawee for Scroll picture
* ZoomableActivity: activity which facilitates zoom in
* activity_zoomable: xml for zoom activity
* zoomControllers: controllers for handling gesture and zooming
* MediaDetailFragment: fixing name of image variable
* MediaDetailFragment: display as per the aspect ratio of image
* add zoom activity to AndroidManifest
* fix travis ci faliure
* fix resizing of image
* #3476 Use individual test commands on CI instead of check - use individual commands and narrow scope
* #3476 Use individual test commands on CI instead of check - fix indentation
* #3469 Update Gradle Play Publisher to resolve issues with travis build - update GPP/Gradle and use jacoco-android fork with gradle 6.0 support
* #3469 Update Gradle Play Publisher to resolve issues with travis build - remove extraneous space
* Added Support for System Wide Dark Theme
* changed methods to private
* Moved Strings to strings.xml
* Used Dagger to reduce code repetition
* Changes made as per review suggestions
* Minor Changes
* Fixes as per suggestions
* Minor Fixes as per suggestion
* made the variables static
* removed irrelevant code
It's common for users to expect that re-opening the app would
allow them to "continue where they left off". This also applies
for the case where they leave the app after opening an
external link. It's natural for them to expect that they would
see the webpage they left open when they re-open the app. This
doesn't happen for our app as we open custom tabs in a separate
activity. As a consequence, this makes the experience
un-intuitive.
Fix this by opening custom tabs in the same activity.
Fixes: #2944
Co-authored-by: Adam Jones <jones_adam@rocketmail.com>
* ic_custom_greyed_out_marker: removing grey marker
* NearbyParentFragment: changing function name and description
* change method name to hideAllMarkers
* Avoid showing the quiz pop-up twice to the user
Due to the current flow of code it's possible that in
some cases the quiz pop-up is shown to the user twice.
This is unnecessary and unintentional.
So, change the logic in such a way that the quiz pop-up
would be never be shown twice to the user.
Fixes: #3281
* Quiz: remove unused parameters from methods
Some methods don't seem to be using the parameters that
they receive. So, just remove the unused parameters.
It makes sense to not show the review activity for logged
out users for the same reasons that we don't allow users
to upload images.
We're even considering to limit the review activity to users
with a particular level of achievement[1]. So, it's valid to
not show review activity for logged out users who don't
have achievements levels at all.
[1]: https://github.com/commons-app/apps-android-commons/issues/2852
* Fixes#3303
* Refactor Nearby to alig lifecycle methods
* Pass updated place list to listfragment
* Added default zoom rate to mapbox
* Removed NearbyListFragmet and added the ui login to handle the same in NearbyParentFragment
* More code refactor
* Make BottomSheetList hideable
* onFragmentHide, hide the bottom sheets
* BigFix, Fragmet visibility, register/un-register camera move based on fragments lifecycke
* More code refactor
* Let the ExecutorUtil have non-ui thread
* Add Location Marker on non-ui thread (the non-ui stuffs)
* BugFixes
* Removed configchanges "orientation" from MainActivity in Manifest (That was messing with the fragment lifecycle)
* Some null checks
* Initialise lastknown location in onMapReady
* UI Fixes
* Adjusted UI to support dark and no-dark themes both (in nearby)
* Do not update map on Location Slightly changed
* Fix failing test case, let TestCommonsApplication extend Application instead of CommonsApplication
* start map view when nearby is visible
* start the map when NearbyFragmet is visible
* More bugfixes
* Added DUMMY view for NearbyPresenter's onDetach State
* Added a wrapper frame layout parent for MapView to preven it from drawing above other views
* More bugfixes (Fixes#3287)
* Gray out the un-selected markers from the nearby filter list
* BugFix, search this area should search the nearby places for the current camera position
* More BugFixes
* Handle null primitives with proxy
* Current location marker flow via permission flow
* onCameraMove should have null-check on NearbyController.latestSearchLocation instead of currentLocation
* Search for places around last focus location
* Handle location updates
* If the user is browsing the map, donot update the map with current location
* CategoriesModelTest: add methodA test for categories search
* CategoriesModelTest: use lateinit wherever possible
* CategoriesModelTest: make method name meaningful
* CategoryClient: fix category search case-sensitivity by converting to lower case as MW api is inherently case-sensitive, the results obtained will be same
* CategoryItem: reverting javadoc changes
* CategoriesModel: make category search case-insensitive
* CategoryItem: fix whitespaces
* Add tests for case-insensitivity
* CategoryClientTest: add more test cases
* CategoryClientTest: fix travis ci test
* CategoriesModelTest: changes mage to CategoriesModel and tested
* TextUtils: add mock textUtils for tests
* TextUtils: add more methods to mock for testing
* UploadControllerTest: fix the test resulting travis ci to fail
* Fixes#3336
* Donot redact locatio by default
* Correction inn default tag save
* Use same key across application for managedExifTags
* Updated key name to avoid class cast in existing build
* Fixes#3345
* Trust all hosts for beta
* Added a custom NetworkFetcger for Fresco when on beta
* removed unused assets
* make TestCommonsApplication extend Application instead of Commons Application
* Fixes#3320
* Added SSL certificate for commons beta
* Asked OKHTTP client to use SSLContext from beta certificate
* Probable Fix of #3345
* Use ConfigUtils to verify flavor
* Clear parent from customView if parent is not null
* Apply white search bar theme to nearby search
* Undo changes from bad merge
* Fix up tag formatting
type:Bug # Retained to categorize the issue as per organization-level type
body:
- type:markdown
attributes:
value:|
- Before creating an issue, please search the existing issues to see if a similar one has already been created.
- You can search issues by specific labels (e.g. `label:nearby`) or just by typing keywords into the search filter.
- type:textarea
attributes:
label:Summary
description:Summarize your issue (what goes wrong, what did you expect to happen)
validations:
required:true
- type:textarea
attributes:
label:Steps to reproduce
description:How can we reproduce the issue?
placeholder:|
1. Have the app open..
2. Go to..
3. Click on..
4. Observe..
validations:
required:true
- type:textarea
attributes:
label:Expected behaviour
placeholder:A menu should open..
validations:
required:true
- type:textarea
attributes:
label:Actual behaviour
placeholder:The app closes unexpectedly..
validations:
required:true
- type:markdown
attributes:
value:|
# Device information
- type:input
attributes:
label:Device name
description:What make and model device did you encounter this on?
placeholder:Samsung J7
validations:
required:false
- type:input
attributes:
label:Android version
description:What Android version (e.g., Android 6.0 Marshmallow or Android 11) are you running? Is it the stock version from the manufacturer or a custom ROM ?
placeholder:Android 10
validations:
required:true
- type:input
attributes:
label:Commons app version
description:You can find this information by clicking the right-most menu in the bottom navigation bar in the app and tapping 'About'. If you are building from our codebase instead of downloading the app, please also mention the branch and build variant (e.g. `master` and `prodDebug`).
placeholder:3.1.1
validations:
required:true
- type:textarea
attributes:
label:Device logs
description:Add logcat files here (if possible). Need help? See "[Getting app logs from Android Studio](https://commons-app.github.io/docs.html#getting-app-logs-from-android-studio)".
validations:
required:false
- type:textarea
attributes:
label:Screenshots
description:Add screenshots related to the issue (if available). Can be created by pressing the Volume Down and Power Button at the same time on Android 4.0 and higher.
validations:
required:false
- type:dropdown
attributes:
label:Would you like to work on the issue?
description:Please let us know whether you want to fix the issue by yourself. If not, anyone can get the issue assigned to them.
- Please do your best to search for duplicate issues before filing a new issue so we can keep our issue board clean.
- Every issue should have exactly one feature request described in it. Please do not file feedback list tickets as it is difficult to parse them and address their individual points.
- Feature Requests are better when they’re open-ended instead of demanding a specific solution e.g:“I want an easier way to do X” instead of “add Y”.
- type:textarea
attributes:
label:What is the user problem or growth opportunity you want to see solved?
validations:
required:false
- type:textarea
attributes:
label:How do you know that this problem exists today? Why is this important?
- Before creating an issue, please search the existing issues to see if a similar one has already been created.
- You can search issues by specific labels (e.g. `label:nearby`) or just by typing keywords into the search filter.
- type:textarea
attributes:
label:Feedback
description:Share your feedback about the app.
validations:
required:true
- type:input
attributes:
label:Wiki username
placeholder:Jimbo Wales
validations:
required:false
- type:markdown
attributes:
value:|
# Device information
- type:input
attributes:
label:Device name
description:What make and model device did you encounter this on?
placeholder:Samsung J7
validations:
required:false
- type:input
attributes:
label:Android version
description:What Android version (e.g., Android 6.0 Marshmallow or Android 11) are you running? Is it the stock version from the manufacturer or a custom ROM ?
placeholder:Android 10
validations:
required:false
- type:input
attributes:
label:Commons app version
description:You can find this information by clicking the right-most menu in the bottom navigation bar in the app and tapping 'About'. If you are building from our codebase instead of downloading the app, please also mention the branch and build variant (e.g. `master` and `prodDebug`).
* Addressed a bug that prevented the keyboard from appearing in various text fields, such as on the upload wizard
* Links in the "File usages" list are now clickable and will take you to the correct page.
* Titles for file usages are now clearer and easier to understand
* Bug fixes and stability improvements
## v6.0.1
### What's changed
* The app now supports Android 15 with an improved user interface
* Enhanced Nearby with robust and more reliable labels
* Bug fixes and stability improvements
## v5.6.1
### What's changed
* The app no longer uploads images to Wikidata if one exists already for a given item
* File usage displays correctly now
* No more infinite circular progress bar on nominating an image for deletion
* Enhanced location updates while using GPS
* Author/uploader names are now available in Media Details for Commons licensing compliance
* Improved usage of popups in Nearby
* Bug fixes and stability improvements
## v5.5.0
### What's changed
* Explore images will now be shown based on the map location and not at your current location
* Enhanced Wikidata feedback message
* Green labels in Explore map will no longer be hidden by other pins thumbnails
* Upload wizard's language drop-down now reflects the language used in the pin label
* Users can now pick only one image at a time while using the custom selector
* Bug fixes and stability improvements
## v5.4.1
### What's changed
* Custom picker now detects images that are already available on Commons
* Improve credit line in image list
* Show place cards with loaded names only in the Nearby list
* Fix the error that occurs while loading images in Explore
## v5.3.0
### What's changed
* Enable EmailAuth support
* Explore map images no longer show "Unknown"
* Fix crash when removing last two images of multiupload
* Mark ❌ for closed locations (P3999) in Nearby
* Fix two pin labels staying visible at the same time in Explore map
* Refactoring and minor UI improvements
## v5.2.0
v5.2.0 boasts several new functionalities like:
* A new refresh button lets you quickly reload the Nearby map
* Bookmarks now support categories
* Improved feedback and consistency in the user interface
* Bug fixes and performance improvements
### What's changed
* Implement "Refresh" button to clear the cache and reload the Nearby map.
* `CommonsApplication` migrate to kotlin & some lint fixes.
* Revert back to MainScope for database and UI updates and make database operations thread safe.
* Hide edit options for logged-out users in Explore screen.
* Introduced a button to delete the current folder in custom selector.
* Improve Unique File Name Search.
* Migration of several modules from Java to Kotlin.
* Fix modification on bottom sheet's data when coming from Nearby Banner and clicked on other pins.
* Bug fixes and enhancement of Achievements screen.
* Show where file is being used on Commons and other wikis.
* Migrate android.media.ExifInterface to androidx.exifinterface.media.ExifInterface as android.media.ExifInterface had security flaws on older devices.
* Make dialogs modal and always show the upload icon.
* Fix unintentional deletion of subfolders and non-images by custom selector.
* Bookmark categories.
* Add pull down to refresh in the Contributions screen.
* Fix race condition and lag when loading pin details, faster overlay management.
* Show cached pins in Nearby even when internet is unavailable
Full changelog with the list of contributors: [`v5.1.2...v5.2.0`](https://github.com/commons-app/apps-android-commons/compare/v5.1.2...v5.2.0).
## v5.1.2
### What's changed
* Fix the broken category search in the explore screen
## v5.1.1
### What's changed
* Use Android's new EXIF interface to mitigate security issues in old
EXIF interface.
* Make the icon that helps view the upload queue always visible as it ensures
that the queue accessible at all times.
## v5.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.
* 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.
* 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.
* 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.
* 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.
* Fixed an issue where editing depictions removed all other structured data from
images. Now, **only depictions are updated, preserving other associated data**.
* 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.
* 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.
### Bug fixes and various changes
* Improved the "Nearby" feature to fetch labels based on the user's preferred
language instead of defaulting to English.
* 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.
* Fixed an issue where the "Nominate for deletion" option is shown to logged out
users, preventing app errors and crashes.
* Updated the regex pattern that filters categories with an year in it to also
filter the 2020s.
* Fix an issue where past depictions were not shown as suggestions, despite
being saved correctly.
* 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.
* 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.
* 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.
* Revised author information retrieval to emphasize the custom author name from
the metadata instead of the default registered username.
* Enhanced notification classification to properly identify "email" type
notifications and prompting users to check their e-mail inbox when such
notifications are clicked.
* 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.
* Resolved pin color update issue in "Nearby" feature where the pin colour
failed to be updated after a successful image upload.
What's listed here is only a subset of all the changes. Check the full-list of
the changes in [this link](https://github.com/commons-app/apps-android-commons/compare/v5.0.2...v5.1.0).
Alternatively, checkout [this release on GitHub releases page](https://github.com/commons-app/apps-android-commons/releases/tag/v5.1.0)
for an exhaustive list of changes and the various contributors who contributed the same.
## v5.0.2
- Enhanced multi-upload functionality with user prompts to clarify that all images would share the
same category and depictions.
- Show Wikidata description on currently active Nearby pin to provide more useful information.
- 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.
- Added information on where user feedback is posted, helping users track existing feedback and
monitor their own submissions.
- 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.
- Ensured the 'Add Location' button is renamed to 'Edit Location' when copying the location of a
recently uploaded image, enhancing clarity and user experience.
- 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.
- Fixed an issue where caption and description fields would intermittently disappear when using
voice input, ensuring text remains visible and stable across all entries.
- Fixed a crash that occurred when attempting to remove multiple instances of caption/description
fields after initially adding them.
- Improve the text in the prompt shown when skipping login to sound more natural.
- 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.
- Resolved issue where the app failed to clear cookies upon logout.
## v5.0.1
Same as v5.0.0 except this fixes some R8 rules to ensure that the release
variants of the app work as intended.
## v5.0.0
### 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.
With this change, the app retrieves the map tiles from [Wikimedia maps](https://maps.wikimedia.org).
- 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.
- **Limited the uploads via the custom image picker** to a maximum of 20.
- 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.
- Implemented functionality to **automatically resume uploads** that become
stuck due to app termination or device reboot.
- 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.
- Implemented **voice input feature** for caption and description fields,
enabling users to dictate text directly into these fields.
- 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.
### 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.
- **Replaced Butterknife with ViewBinding** in various places of the app.
- 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.
- **Revamped the various location permission flows** to ensure consistency for
the sake of a better user experience.
### Bug fixes and various changes
- Resolved an issue where paused uploads that were subsequently cancelled were
still being uploaded.
- Fixed an issue where some user information such as upload count were not
displayed in the "Contributions" and "Profile" screens.
- Fixed the long-standing broken *"Picture of the Day" widget* to restore its
usability.
- Resolved an issue where some categories were hidden at the top of Upload
Wizard suggestions.
- Resolved an issue where there was a grey empty screen at Upload wizard when
the app was denied the files permission.
- Implemented logic to bypass media in Peer Review if the current reviewer is
also the user who uploaded the media.
- Corrected arrow image behaviour in the first upload screen: now displays down
arrow when details card is fully visible, aligning with expected user
interaction.
- Updated app icon to improve visibility and recognition on F-Droid.
- 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.
What's listed here is only a subset of all the changes. Check the full-list of
the changes in [this link](https://github.com/commons-app/apps-android-commons/compare/v4.2.1...v5.0.0).
Alternatively, checkout [this release on GitHub releases page](https://github.com/commons-app/apps-android-commons/releases/tag/v5.0.0)
for an exhaustive list of changes and the various contributors who contributed the same.
## v4.2.1
- 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 was showing 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
## v4.2.0
- 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
## 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
## v4.0.5
- Bumped min SDK to 29 to try and solve Google policy issue
- Reverted dialog
- Note: This encompasses versions 1031, 1032, and 1033, due to the Play Store's requirements to overwrite all the tracks with a post-fix version (otherwise no single track can be published)
## v4.0.4
- Added dialog for Google's location policy
## v4.0.3
- Added "Report" button for Google UGC policy
## v4.0.2
- Fixed bug with wrong dates taken from EXIF
- Fixed various crashes
## v4.0.1
- Fixed bug with no browser found
- Updated Mapbox SDK to fix hamburger crash
## v4.0.0
- Added map showing nearby Commons pictures
- Added custom SPARQL queries
- Added user profiles
- Added custom picture selector
- Various bugfixes
- Updated target SDK to 30
## v3.1.1
- Optimized Nearby query
- Added Sweden's property for WLM 2021
- Added link to wiki explaining how to contribute to WLM through app
- Fixed various bugs and crashes
## v3.1.0
- Added Wiki Loves Monuments integration for WLM 2021
## v3.0.2
- Fixed crash when uploading high res image
- Fixed crash when viewing images in Explore
## v3.0.1
- Pre-fill desc in Nearby uploads with Wikidata item's label + description
- Improved ACRA crash reporting
- Fixed various crashes
## v3.0.0
- Added Structured Data to upload workflow, users can now add depicts
- Added Leaderboard in Achievements screen
- Added to-do system for images with no categories/descriptions or with associated Wikipedia articles that have no pictures
- Users can now modify and add categories to their uploads from the media details view
- New UI for main screen
- Limited connection mode added, users can now pause and resume uploads
## v2.13.1
- Added OpenStreetMap attribution
- Fixed various crashes
- Fixed SQLite error in Nearby map
- Fixed issue with Nearby uploads not being associated with Wikidata p18
## v2.13.0
- New media details UI, ability to zoom and pan around image
- Added suggestions for a place that needs photos if user uploads a photo that is near one of them
- Modifications and fixes to Nearby filters based on user feedback
- Multiple crash and bug fixes
## v2.12.3
- Fixed issue with EXIF data, including coords, being removed from uploads
## v2.12.2
- Fixed crash on startup
## v2.12.1
- Fixed issue with Nearby loading in wrong location
- Various crash fixes
## v2.12.0
## v2.12.0
- Completed codebase overhaul
- Completed codebase overhaul
- Added filters for place type and place state to Nearby
- Added filters for place type and place state to Nearby
Summarize your issue in one sentence (what goes wrong, what did you expect to happen)
_Before creating an issue, please search the existing issues to see if a similar one has already been created. You can search issues by specific labels (e.g. `label:nearby`) or just by typing keywords into the search filter._
**Steps to reproduce:**
How can we reproduce the issue?
What did you expect the app to do, and what did you see instead?
**System logs:**
```
Add logcat files here (if possible).
Need help? See https://github.com/commons-app/apps-android-commons/wiki/Getting-app-logs-from-Android-Studio
```
**Device and Android version:**
What make and model device (e.g., Samsung J7) did you encounter this on?
What Android version (e.g., Android 4.0 Ice Cream Sandwich or Android 6.0 Marshmallow) are you running?
Is it the stock version from the manufacturer or a custom ROM ?
**Commons app version:**
You can find this information by going to the navigation drawer in the app and tapping 'About'. If you are building from our codebase instead of downloading the app, please also mention the branch and build variant (e.g. master and prodDebug).
**Screen-shots:**
Can be created by pressing the Volume Down and Power Button at the same time on Android 4.0 and higher.
**Would you like to work on the issue?**
Please let us know whether you want to fix the issue by yourself. If not, anyone can get the issue assigned to them.
The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Download the app [here][1], or view our [website][2].
The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Download the app [here][1], or view our [website][2].
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][3] and send us a pull request :-)
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][3] and send us a pull request! :-)
<imgsrc="https://upload.wikimedia.org/wikipedia/commons/9/96/%22Get_it_on_F-droid%22_Badge.png" alt="Get it on F-Droid"height="90"/></a>
<imgsrc="https://upload.wikimedia.org/wikipedia/commons/archive/9/96/20200131184248%21%22Get_it_on_F-droid%22_Badge.png" alt="Get it on F-Droid"height="90"/></a>
// To prevent leaked window when finish() is called, see http://stackoverflow.com/questions/32065854/activity-has-leaked-window-at-alertdialog-show-method