Commit graph

71 commits

Author SHA1 Message Date
Vivek Maskara
2021baa080 Consistent handling of web and geo urls (#2750)
* Consistent handling of web and geo urls

* Remove Google map intent
2019-03-28 18:23:36 +05:30
Vivek Maskara
57e685cf6c Fix #2593: Migrate to androidX (#2594)
* Update dependencies and migrate to androidX
* Make gradle properties tidy
2019-03-16 11:22:37 +00:00
Vanshika Arora
ea45335b4f Copy text to clipboard on Long Click (#2411)
* Fixed issue #2405

* Final changes
2019-02-06 01:58:34 +05:30
Vivek Maskara
d4fa9cfa45 Use wrapper for interacting with shared preferences (#2288)
* Use wrapper for accessing shared preferences across the app

* Use Json kv store for storing place object

* Fix tests

* Fix test failure

* Fix UI tests
2019-01-14 00:13:21 +05:30
Vivek Maskara
a48a09a785 Use dexter for requesting storage permissions (#2258)
* Use dexter for requesting storage permissions

* minor changes

* Fix minor issue
2019-01-02 18:11:19 +02:00
DylanRobson
55113b3018 Fix issue #2164 Links open with handleWebUrl. (#2220)
* AboutActivity links now open with the in-app tabbed browser.
* UploadActivity license and policy links now open with the in-app tabbed browser.
2019-01-01 16:21:33 +05:30
Reid
809c0c32d7 Add missing Javadocs to License, Media, and Utils classes (#1965)
* Add missing Javadocs to License, Media, and Utils classes
2018-12-20 21:12:18 +00:00
Vivek Maskara
f607c1c14d Multiple uploads with over haul (#1968)
* Added new upload activity that receives shared files from the gallery.  Cards show and hide, plus titles are correct.  Displayed thumbnails for the shared images

* Better handling of the view paging plus error handling for required fields.

* Code cleanup to make things more readable.

* Extracted a model from the category search fragment that can possibly be shared with the new upload activity.

* Added category selection to the combined upload screen.

* Cleanup before the home-stretch on the GUI.

* Adding license selection.

* Fixed build warnings + cleanup

* Start to support the dark theme.

* Work in progress to add quality checking.

* Fixing merge.

* GPSExtractor: optimized away the EXifInterface object

* Implemented submit functionality, temporarily fixed jacoco crash by disabling DUMMY UploadView object.

* Implemented uploading of categories along with the picture. The category screen now displays GPS and recent categories when nothing is searched.

* Implemented caching of files. Did some work on picture quality detection.

* Implemented too dark picture detection.

* Added a side card for zoom and map buttons along with pretty animations for stuff.

* Added duplicate image on commons checking and fixed files not getting proper file extensions in several places.

* Added support for map button and switched in-app upload buttons to UploadActivity

* Pretty pretty animations!

* Implemented zoom functionality for th background image. Just pinching on the image works instead of requiring buttons.

* Added multi-language descriptions with categories by region.

* Reimplemented the duplicate title checker and implemented a check against putting the same language twice in the description.

* Javadocs for Description and UploadPresenter, plus some general cleanup.

* Small code changes.

* Implemented login checks for the Upload screen.

* Implement receiving data from Nearby.

* Feature/permissions library (#1855)

* Added permission for Dexter, the runtime permission handling library

* [Preparing fir issue #1773] Added a utility function which would take the user to app settings screen where he could manually give us the required permission

* Added an alert dialog with positive and negative callback [Preparing fir issue #1773]

* Improvements in the way External Storage Permission is handled in MultipleShareActivity[Bug fix #1697]
1. Used dexter to handle the external storage permission
2. Behaviour changes : When user tries to share(uppload) images to commons via MultipleShareActivity, following decision tree is followed
	a. If the app has permission for external storage, normal upload operation is followed
	b. If the app does not has the permission for external storage, dexter is used to ask for the same
	c. If the user gives us the required permission, normal upload flow is proceeded
	d. If the doesnot gives us the required permission a rationale dialog is shown with the appropriate message to let him know why we need the permission
	e. If he presses okay, steps a-c are followed and if he presses cancel, we close the app.
	f. If while asking for permission, the user chooses never ask again, then next time he tries to upload an image via MSA, the rational dialog follows the app setting screen where he could manually give us the required permission and the onActivityResult of same is handled

* Added a Constants class to handle request and result codes from one place and other related constants common to the all app elements

* replaced hardcoded strings ok and cancel in DialogUtil to string resources

* init permission rationale dialog in activities onCreate

* Code formatting, updated access modifiers wherever required, added javadocs for new methods created

* *shifted constants to app class
*Added JavaDocs in PermissionUtils

* removed class REQUEST_CODES from CommonsApplication and instead put the enclosing constants in the App class itself

* Made Codacy happy.

* Abstarcted permission acquisition into new class DexterPermissionObtainer

* Fixed Nearby upload detection

* Migrated bad picture detection from AsyncTask to RxJava.

* Removed ShareActivity and related dead code

* Removed dead or duplicate code from FileProcessor

* Added info button to title EditText

* Fixed the add description button not disappearing.
Added "Starting Upload" toast.
Added link to the license on final screen.
Made it so that the map button is hidden when image lacks gps coords.

* Support in app multiple uploads

* Minor changes to fix build

* Changes to fix pending issues with upload flow

* Fix display of similar image fragment

* When uploading several files at once the date is missing #1854 (#2)

* Bug fix issue #1854
* updated ContributionsDao to save create date, which it was not doing currently [it was instead saving current date]
* UploadItem accepts are dateCreated param
* Added a function in UploadModel, getFileCreatedDate which tries to fetched the file creaction date from all possible content providers.

* Fix pending issues in upload flow

* Make multiple uploads work for Google Photos

* Fix default state for upload activity

* Fix keyboard state for license screen

* Fix descriptions for uploads

* wip

* Fix language spinner
2018-11-19 17:00:32 +05:30
freddytuxworth
3ccd690ce0 Add space after if (#1954) 2018-11-01 19:33:09 +02:00
Vivek Maskara
b0b4b08100 Fix log reporting for release builds (#1916)
* Fix log reporting for release builds

* Fix logs for release builds

* wip

* Clean up the branch to exclude unrelated changes

* With java docs

* Uncomment quiz checker

* Check for external storage permissions before sending logs

* With more java docs

* Fix crash while zipping log files

* Do not log token and cookies

* Add instruction to restart app
2018-10-14 22:19:43 +11:00
Vivek Maskara
02fe0044a6 Merge release branch to master (#1932)
* Bugfix/upload via share (#1920)

* Bug Fix #1878
* Added a java library to fetch the MIME type from input stream
* Fetch MIME type using this and use the contribution tag only when this fails:

* formatting changes, removed unused commented out line

* Versioning and changelog for v2.8.5 (#1923)

* Versioning for v2.8.5

* Update changelog.md
2018-10-13 19:45:00 +11:00
Vivek Maskara
a63b9f88bb
Merge 2.8 release with master (#1887)
* Add Traceur for getting meaningful RxJava stack traces (#1832)

* Hotfix for overwrite issue in 2.8.0  (#1838)

* This solution is an hotfix for overrite issue came back on 2.8.0 version. What I did is checking the extension, and if it is null, adding .jpg suffix. Because commons files always have suffixes, and we should compare file names after adding suffixes. Othervise overrides are possible.

* Check if file title includes an extension already, by checking if is there any dot in it.

* Fix logic error

* Add uncovered tests

* Remove unecessary line breaks

* Make Javadocs more explicit

* Versioning and changelog for v2.8.2 (#1842)

* Versioning for v2.8.2

* Changelog for v2.8.2

* Add logs in wiki data edit and session refresh flow (#1874)

* Fix logout (#1875)

* [WIP] Refactor feedback and quiz to reduce possibility of NPE (#1881)

* Refactor feedback and quiz to reduce possibility of NPE

* Handle throwables in quiz checker

* Minor refactoring

* Set Traceur to only work in DEBUG mode (#1884)

* Bug fix for uploaded images count in achievements activity (#1885)

* Versioning and changelog for v2.8.3 (#1886)

* Update changelog.md

* Versioning for v2.8.3
2018-09-07 05:50:41 +05:30
Tanvi Dadu
e9c0aa22ea Feedback module (#1742)
*  Implemented Statistics

*  Basic Structure Implemented

*  Layout made screen independent and menu inflated

*  Share Screenshot using cache

*  Improved the Image Bound and added strings

*  Improved the quality of Pr

*  Wired to navigation drawer

*  Changed the bounds of the image

*  Added Info icon

* Removed the unecessary functionality

*  Updated JavaDocs and fetch the username

*  Fetch JsonObject from the api using JavaRx and OkHttp

* Added JavaDocs and improved quality

* fixed strings file

*  Improved the quality of pr

*  Render thanks , images used in articles on screen

*  fetch and rendered the upload count

*  FeaturedImages statistics rendered and Javadocs added

*  added ProgressBar

*  Added Class for calculating level

*  added level info and returned level info

*  level up info rendered on achievement activity

*  Inflated Level Number

*  Added the structure for badge

*  Added LevelUpInfo Programmetically on Drawable

*  aligned the text

*  changed the text

*  Implemented the structure for changing colour of drawable

*  Added functionality to change colours of badge during runtime

*  Added custom alert for share option

*  Improved the UI of screen

*  Added the alertDialog for info button

*  Improved the quality of PR

*  Added Builder model

*  Added Enum Model and increased levels to 15

* removed redundant class

*  Changed strings and added subtext

* Feedback Module: Add reverts rate parameter (#1649)

* Fetched Revert Count

* Refactored Achievements class and display the fetched results

* Refactored the levelController to include revert as parameter

*  Fixed error

*  Fixed bug

*  Added information for parameters and improved code quality

*  Javadocs added

*  Added null check and javadocs

*  Removed extra spaces
2018-07-26 13:12:51 +05:30
albendz
7b5b9169db Fix preview crash on local files during upload (#1696)
* Try to get the localized version of the wikipedia article before defaulting to the English version.

Tested with Spanish on physical Android device.

Other notes:
Difficulties building with gradle due to dexcount plugin: https://github.com/KeepSafe/dexcount-gradle-plugin/issues/234. In testing, disabled the plugin.

* Update article fetch to not include unnecessary SERVICE line

* Add checks for local file, check for string length
2018-07-22 17:43:33 +03:00
Vivek Maskara
4815e93fc9 Make P18 edits to corresponding wikidata entity on uploading from Nearby (#1495)
* Localisation updates from https://translatewiki.net.

* Integrate API for displaying featured images (#1456)

* Integrate API for displaying featured images

* Add pagination and refactor code so that it can be reused for category images

* Add license info to the images

* Fix author view

* Remove unused values

* Fix minor issues with featured images

* Fix null license url issue

* Remove some log lines

* Fix back navigation issue

* fix tests

* fix test inits

* Gracefully handling various error situations

* Added java docs

* Update pull_request_template.md (#1476)

* Update pull_request_template.md

* Remove Javadocs mention

* Added required/optional notes

* resolves #1464 : MediaDataExtractor is making inefficient (redundant) server calls (#1496)

* Open map of place where picture was taken (#1360)

* Intent to map added

*  Merge conflicts resolved

*  Added the functionality to hide FAB incase of null coordinate

*  Merge Conflict resolved

*  Improve pr quality

* Improve Quality

*  Added nested FAB animations

* Nested FAB implemented

*  Improve Quality

*  Added up arrow

*  Javadocs Added

* Add nearby tutorial (#1467)

* Add dependency for MaterialShowcase

* Add actionview class to get a reference to material showcase

* Create a NearbyMaterialShowcaseSequence class

* Apply sequence steps

* Add first three steps of nearby showcase

* Add sequence id constants to make sure they will be displayed only once

* Add last step of sequence to explain plus fab

* Create an object to prevent customize all sequences every time

* Fix typo

* Code cleanup

* Add strings to strings.xml

* Code cleanup

* Revert irrelevant change

* Revert irrelevant change

* Remove showcaseview for recenter button

* Use single showcaseView instead of sequence

* Add single showcase view insted of sequence to be able to edit text style

* Make sure it will be displayed only once

* Cleanup

* Update strings

* Change dismiss text style

* CONTRIBUTING: fix formatting of the gist of the guidelines (#1453)

* CONTRIBUTING: fix formatting of the gist of the guidelines

First level headings for a gist seems to be overkill.

So, replace first level headings with an ordered-list which
sounds more meaningful.

* CONTRIBUTING: specify clearly that 'blame' is a feature of "Git"

The contributing file specifies about the ability to know who wrote
something without the need of @author javadoc tags but incorrectly
attributes the feature to GitHub.

Correctly attribute the feature to where it belongs, Git, and specify
the name of the feature to help users easily take advantage of it.

* Feature/switch to butterknife (#1494)

* Implemented butterknife in MediaDetailFragment [issue #1491]

* Implemented butterknife in MediaDetailPagerFragment [[issue #1491]]

* post merge upstream master wip [[issue #1491]]

* Localisation updates from https://translatewiki.net.

* Bug fix #1504 (#1506)

* Bug fix #1504

* Filtered messages with ConnectException [issue #1504]

* A generalised message for exceptions in Nearby Activity [issue #1504]

* Localisation updates from https://translatewiki.net.

* Fix security exception crash while accessing network location provider (#1498)

* Fix security exception crash while accessing network location provider

* Added java docs

* Localisation updates from https://translatewiki.net.

* Log P18 edits to wikidata corresponding wikidata entity on uploading a nearby image

* Added java docs

* Fix test build

* Refresh nearby

* Refresh nearby list on successful edit

* Java docs

* Make authenticated wikidata edits

* Updated toast message to show entity name that was edited
2018-05-31 11:00:17 +10:00
maskara
59abd022e3 Minor notification fixes 2018-03-21 10:27:19 +05:30
maskara
4ac8f88ec2 Fixes privacy policy link in Login page 2018-03-11 01:36:19 +05:30
Ayushi Negi
cfc1449615 Launch Rate Us Feature from AboutActivity (#1264)
* Launch Rate Us Feature from AboutActivity

Rate us feature is added in Utils, But it is never used/launched.

* Add LaunchRatings Method in AboutActivity

* Fix Package Name to enable rate us feature

The rate us feature was not working for the debug build type since getPackageName() was returning the fr.free.nrw.commons.debug. Use of this package name was leading to an error on google play.

* Replace getPackageName() with BuildConfig.class.getPackage().getName() in rateApp method of Utils.java
2018-03-07 06:44:51 +05:30
Ujjwal Agrawal
eeaa9a90ba
Merge branch 'master' into feat5 2018-02-27 12:17:29 +05:30
Ujjwal Agrawal
fc8b522ac4 Rate Us method added to Utils.java and called on AboutActivity.java 2018-02-27 12:04:04 +05:30
Ujjwal Agrawal
96173e26cf Changed Webviews to Custom Tabs in Nearby Places Dialog, AboutUsActivity (#1185)
* Changed Webviews to Custom Tabs in Nearby Places Dialog, AboutUsActivity

* Created method handleWebUrl in Utils.java
2018-02-25 00:27:49 +05:30
Jón Freysteinn Jónsson
fc7bdc62fb Fix some javadoc issues 2018-02-15 13:20:56 +01:00
Prajeen Govardhanam
d3f2ef32fd
Update Utils.java 2017-12-21 20:58:02 +05:30
prajgov
7e6374f11a added JavaDoc comments 2017-12-19 20:54:28 +05:30
Clay Tsay
eeea0774b6 Added JavaDocs
Added JavaDocs to various files, namely License, Media, PageTitle, and Utils.
2017-12-10 00:28:51 -08:00
Paul Hawke
02b5b9b680 Merge branch 'master' into dependency-injection 2017-11-24 22:30:08 -06:00
maskara
8dd8e09f2a Fixes NPE in Util function 2017-11-16 17:32:45 +05:30
Paul Hawke
f134d23ecb Merge branch 'master' into dependency-injection 2017-10-21 17:20:56 -05:00
Vishan Seru
836a1e3664 Added option in SettingsFragment to allow users to send the logs as a file via email 2017-10-21 13:44:06 +05:30
poojithakr
fc9cd0a3b7 Fixing codacy issues. Reduced reported count from 550 to 518. 2017-10-04 00:28:11 -07:00
Paul Hawke
2d91e81121 Merge branch 'master' into dependency-injection 2017-09-13 20:29:50 -05:00
Paul Hawke
a208c9f273 Further reduced coupling between classes and the need to @Inject the account utils class, fixed imports. 2017-09-10 10:37:58 -05:00
Paul Hawke
ca4b99a1cc Product flavors to allow switching between the production and the beta-cluster Wikimedia servers. 2017-08-26 15:42:44 -05:00
Paul Hawke
d0a85dbd82 Moved single-use code out of Utils over to where it's actually used. 2017-08-26 08:57:16 -05:00
Paul Hawke
7880a08c30 Ensure that activities and content providers are integrated into DI. 2017-08-26 08:56:15 -05:00
mebr1416
0c303298b2 Resolve for "Day mode by default #825" 2017-08-04 18:40:22 +03:00
Yusuke Matsubara
d241d36d66 Add PageTitle class to canonicalize page names 2017-07-13 18:29:30 +09:00
Yusuke Matsubara
39617790f5 Merge pull request #680 from Deskana/fromhtml
Fix usage of deprecated function String.fromHtml(String)
2017-05-28 19:01:30 +09:00
Deskana
14326ae3d0 Fix usage of deprecated function String.fromHtml(String)
String.fromHtml(String) is now deprecated. This patch fixes that by adding a method to Utils that selects the appropriate function based on the user's platform.
2017-05-26 13:52:01 +01:00
Deskana
7a8e04eec1 Simplify if statements
This patch simplifies a few if statements by replacing them with returns, which helps improve code readability and simplicity.
2017-05-26 11:16:22 +01:00
Dmitry Brant
9469bf29e4 Remove dependency on old image-loading library, and remote a lot of code. 2017-05-19 16:24:04 +02:00
Neslihan
e79d18f439 Fix codacy 2017-05-14 15:59:00 +03:00
Neslihan
dc1b04f3ed Switch map button accoding to map and list 2017-05-14 15:51:50 +03:00
addshore
5f6f67d3e2 Use switch statements instead of long if elseifs 2017-05-13 12:52:22 +02:00
addshore
6b75810f37 Collapse try blocks 2017-05-13 12:51:43 +02:00
Yusuke Matsubara
040d99638c Show failed value on license-related RuntimeException 2017-05-12 21:31:10 +09:00
veyndan
d33935c70f Use Timber for logging 2017-04-17 16:41:56 +01:00
Yusuke Matsubara
87b3132d21 Keep obsolete license values to prevent crashe after upgrade 2017-04-16 12:45:16 +09:00
Yusuke Matsubara
8731987385 Generate Nearby list using Wikidata Query
Plus,
* remove duplicate location service manager
* add option to switch data sources of Nearby
* faster sorting of places
* minor coding style improvents
2017-04-14 17:38:45 +09:00
Adam Jones
0fe7a05731 Create SettingsFragment 2017-04-02 16:37:46 +01:00