Skip to content

Commit cb00760

Browse files
Issue #5996 - Fix Android Studio warnings in LocationPickerActivity.kt (#6026)
* Replace deprecated zoomLevel with zoomLevelDouble * Replace deprecated Html.fromHtml call * LocationPickerActivity: Replace deprecated methods with androidx * LocationPickerActivity: Reformatted overlong lines * Renamed package LocationPicker to locationpicker --------- Co-authored-by: Nicolas Raoul <[email protected]>
1 parent 8a55b5e commit cb00760

14 files changed

+78
-39
lines changed

Diff for: app/src/androidTest/java/fr/free/nrw/commons/UploadCancelledTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import androidx.test.platform.app.InstrumentationRegistry
1818
import androidx.test.rule.ActivityTestRule
1919
import androidx.test.rule.GrantPermissionRule
2020
import androidx.test.uiautomator.UiDevice
21-
import fr.free.nrw.commons.LocationPicker.LocationPickerActivity
21+
import fr.free.nrw.commons.locationpicker.LocationPickerActivity
2222
import fr.free.nrw.commons.UITestHelper.Companion.childAtPosition
2323
import fr.free.nrw.commons.auth.LoginActivity
2424
import org.hamcrest.CoreMatchers

Diff for: app/src/main/AndroidManifest.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@
171171
android:name=".review.ReviewActivity"
172172
android:label="@string/title_activity_review" />
173173
<activity
174-
android:name=".LocationPicker.LocationPickerActivity"
174+
android:name=".locationpicker.LocationPickerActivity"
175175
android:label="Location Picker" />
176176

177177
<service

Diff for: app/src/main/java/fr/free/nrw/commons/di/ActivityBuilderModule.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package fr.free.nrw.commons.di
33
import dagger.Module
44
import dagger.android.ContributesAndroidInjector
55
import fr.free.nrw.commons.AboutActivity
6-
import fr.free.nrw.commons.LocationPicker.LocationPickerActivity
6+
import fr.free.nrw.commons.locationpicker.LocationPickerActivity
77
import fr.free.nrw.commons.WelcomeActivity
88
import fr.free.nrw.commons.auth.LoginActivity
99
import fr.free.nrw.commons.auth.SignupActivity

Diff for: app/src/main/java/fr/free/nrw/commons/LocationPicker/LocationPicker.kt renamed to app/src/main/java/fr/free/nrw/commons/locationpicker/LocationPicker.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package fr.free.nrw.commons.LocationPicker
1+
package fr.free.nrw.commons.locationpicker
22

33
import android.app.Activity
44
import android.content.Intent
@@ -32,7 +32,7 @@ object LocationPicker {
3232
/**
3333
* Gets and puts location in intent
3434
* @param position CameraPosition
35-
* @return LocationPicker.IntentBuilder
35+
* @return locationpicker.IntentBuilder
3636
*/
3737
fun defaultLocation(position: CameraPosition): IntentBuilder {
3838
intent.putExtra(LocationPickerConstants.MAP_CAMERA_POSITION, position)
@@ -42,7 +42,7 @@ object LocationPicker {
4242
/**
4343
* Gets and puts activity name in intent
4444
* @param activity activity key
45-
* @return LocationPicker.IntentBuilder
45+
* @return locationpicker.IntentBuilder
4646
*/
4747
fun activityKey(activity: String): IntentBuilder {
4848
intent.putExtra(LocationPickerConstants.ACTIVITY_KEY, activity)
@@ -52,7 +52,7 @@ object LocationPicker {
5252
/**
5353
* Gets and puts media in intent
5454
* @param media Media
55-
* @return LocationPicker.IntentBuilder
55+
* @return locationpicker.IntentBuilder
5656
*/
5757
fun media(media: Media): IntentBuilder {
5858
intent.putExtra(LocationPickerConstants.MEDIA, media)

Diff for: app/src/main/java/fr/free/nrw/commons/LocationPicker/LocationPickerActivity.kt renamed to app/src/main/java/fr/free/nrw/commons/locationpicker/LocationPickerActivity.kt

+61-17
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package fr.free.nrw.commons.LocationPicker
1+
package fr.free.nrw.commons.locationpicker
22

33
import android.Manifest.permission
44
import android.annotation.SuppressLint
@@ -8,8 +8,7 @@ import android.graphics.Color
88
import android.graphics.Paint
99
import android.location.LocationManager
1010
import android.os.Bundle
11-
import android.preference.PreferenceManager
12-
import android.text.Html
11+
import androidx.preference.PreferenceManager
1312
import android.text.method.LinkMovementMethod
1413
import android.view.MotionEvent
1514
import android.view.View
@@ -23,6 +22,9 @@ import androidx.appcompat.widget.AppCompatTextView
2322
import androidx.constraintlayout.widget.ConstraintLayout
2423
import androidx.core.app.ActivityCompat
2524
import androidx.core.content.ContextCompat
25+
import androidx.core.content.IntentCompat
26+
import androidx.core.os.BundleCompat
27+
import androidx.core.text.HtmlCompat
2628
import com.google.android.material.floatingactionbutton.FloatingActionButton
2729
import fr.free.nrw.commons.CameraPosition
2830
import fr.free.nrw.commons.CommonsApplication
@@ -181,13 +183,25 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
181183
setContentView(R.layout.activity_location_picker)
182184

183185
if (savedInstanceState == null) {
184-
cameraPosition = intent.getParcelableExtra(LocationPickerConstants.MAP_CAMERA_POSITION)
186+
cameraPosition = IntentCompat.getParcelableExtra(
187+
intent,
188+
LocationPickerConstants.MAP_CAMERA_POSITION,
189+
CameraPosition::class.java
190+
)
185191
activity = intent.getStringExtra(LocationPickerConstants.ACTIVITY_KEY)
186-
media = intent.getParcelableExtra(LocationPickerConstants.MEDIA)
192+
media = IntentCompat.getParcelableExtra(
193+
intent,
194+
LocationPickerConstants.MEDIA,
195+
Media::class.java
196+
)
187197
} else {
188-
cameraPosition = savedInstanceState.getParcelable(CAMERA_POS)
198+
cameraPosition = BundleCompat.getParcelable(
199+
savedInstanceState,
200+
CAMERA_POS,
201+
CameraPosition::class.java
202+
)
189203
activity = savedInstanceState.getString(ACTIVITY)
190-
media = savedInstanceState.getParcelable("sMedia")
204+
media = BundleCompat.getParcelable(savedInstanceState, "sMedia", Media::class.java)
191205
}
192206

193207
bindViews()
@@ -270,7 +284,10 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
270284
* For showing credits
271285
*/
272286
private fun addCredits() {
273-
tvAttribution.text = Html.fromHtml(getString(R.string.map_attribution))
287+
tvAttribution.text = HtmlCompat.fromHtml(
288+
getString(R.string.map_attribution),
289+
HtmlCompat.FROM_HTML_MODE_LEGACY
290+
)
274291
tvAttribution.movementMethod = LinkMovementMethod.getInstance()
275292
}
276293

@@ -396,7 +413,11 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
396413
val position = when {
397414
//location metadata is available
398415
activity == "UploadActivity" && cameraPosition != null -> {
399-
fr.free.nrw.commons.location.LatLng(cameraPosition!!.latitude, cameraPosition!!.longitude, 0.0f)
416+
fr.free.nrw.commons.location.LatLng(
417+
cameraPosition!!.latitude,
418+
cameraPosition!!.longitude,
419+
0.0f
420+
)
400421
}
401422
//location metadata is not available
402423
mapView != null -> {
@@ -447,14 +468,18 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
447468
LAST_LOCATION,
448469
"${mapView?.mapCenter?.latitude},${mapView?.mapCenter?.longitude}"
449470
)
450-
applicationKvStore.putString(LAST_ZOOM, mapView?.zoomLevel?.toString()!!)
471+
applicationKvStore.putString(LAST_ZOOM, mapView?.zoomLevelDouble?.toString()!!)
451472
}
452473

453474
if (media == null) {
454475
val intent = Intent().apply {
455476
putExtra(
456477
LocationPickerConstants.MAP_CAMERA_POSITION,
457-
CameraPosition(mapView?.mapCenter?.latitude!!, mapView?.mapCenter?.longitude!!, 14.0)
478+
CameraPosition(
479+
mapView?.mapCenter?.latitude!!,
480+
mapView?.mapCenter?.longitude!!,
481+
14.0
482+
)
458483
)
459484
}
460485
setResult(RESULT_OK, intent)
@@ -556,8 +581,15 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
556581
)
557582
}
558583

559-
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray) {
560-
if (requestCode == Constants.RequestCodes.LOCATION && grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
584+
override fun onRequestPermissionsResult(
585+
requestCode: Int,
586+
permissions: Array<out String>,
587+
grantResults: IntArray
588+
) {
589+
if (requestCode == Constants.RequestCodes.LOCATION &&
590+
grantResults.isNotEmpty() &&
591+
grantResults[0] == PackageManager.PERMISSION_GRANTED
592+
) {
561593
onLocationPermissionGranted()
562594
} else {
563595
onLocationPermissionDenied(getString(R.string.upload_map_location_access))
@@ -577,12 +609,18 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
577609

578610
override fun onLocationPermissionDenied(toastMessage: String) {
579611
val isDeniedBefore = store.getBoolean("isPermissionDenied", false)
580-
val showRationale = ActivityCompat.shouldShowRequestPermissionRationale(this, permission.ACCESS_FINE_LOCATION)
612+
val showRationale = ActivityCompat.shouldShowRequestPermissionRationale(
613+
this,
614+
permission.ACCESS_FINE_LOCATION
615+
)
581616

582617
if (!showRationale) {
583618
if (!locationPermissionsHelper.checkLocationPermission(this)) {
584619
if (isDeniedBefore) {
585-
locationPermissionsHelper.showAppSettingsDialog(this, R.string.upload_map_location_access)
620+
locationPermissionsHelper.showAppSettingsDialog(
621+
this,
622+
R.string.upload_map_location_access
623+
)
586624
} else {
587625
Toast.makeText(this, toastMessage, Toast.LENGTH_LONG).show()
588626
}
@@ -601,7 +639,10 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
601639
addMarkerAtGPSLocation()
602640
} else {
603641
addMarkerAtGPSLocation()
604-
locationPermissionsHelper.showLocationOffDialog(this, R.string.ask_to_turn_location_on_text)
642+
locationPermissionsHelper.showLocationOffDialog(
643+
this,
644+
R.string.ask_to_turn_location_on_text
645+
)
605646
}
606647
}
607648
}
@@ -652,7 +693,10 @@ class LocationPickerActivity : BaseActivity(), LocationPermissionCallback {
652693
Marker.ANCHOR_CENTER,
653694
Marker.ANCHOR_BOTTOM
654695
)
655-
icon = ContextCompat.getDrawable(this@LocationPickerActivity, R.drawable.current_location_marker)
696+
icon = ContextCompat.getDrawable(
697+
this@LocationPickerActivity,
698+
R.drawable.current_location_marker
699+
)
656700
title = "Your Location"
657701
textLabelFontSize = 24
658702
}

Diff for: app/src/main/java/fr/free/nrw/commons/LocationPicker/LocationPickerConstants.kt renamed to app/src/main/java/fr/free/nrw/commons/locationpicker/LocationPickerConstants.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package fr.free.nrw.commons.LocationPicker
1+
package fr.free.nrw.commons.locationpicker
22

33
/**
44
* Constants need for location picking

Diff for: app/src/main/java/fr/free/nrw/commons/LocationPicker/LocationPickerViewModel.kt renamed to app/src/main/java/fr/free/nrw/commons/locationpicker/LocationPickerViewModel.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package fr.free.nrw.commons.LocationPicker
1+
package fr.free.nrw.commons.locationpicker
22

33
import android.app.Application
44
import androidx.lifecycle.AndroidViewModel

Diff for: app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ import fr.free.nrw.commons.BuildConfig
7474
import fr.free.nrw.commons.CameraPosition
7575
import fr.free.nrw.commons.CommonsApplication
7676
import fr.free.nrw.commons.CommonsApplication.Companion.instance
77-
import fr.free.nrw.commons.LocationPicker.LocationPicker
77+
import fr.free.nrw.commons.locationpicker.LocationPicker
7878
import fr.free.nrw.commons.Media
7979
import fr.free.nrw.commons.MediaDataExtractor
8080
import fr.free.nrw.commons.R

Diff for: app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import androidx.exifinterface.media.ExifInterface;
2626
import androidx.recyclerview.widget.LinearLayoutManager;
2727
import fr.free.nrw.commons.CameraPosition;
28-
import fr.free.nrw.commons.LocationPicker.LocationPicker;
28+
import fr.free.nrw.commons.locationpicker.LocationPicker;
2929
import fr.free.nrw.commons.R;
3030
import fr.free.nrw.commons.contributions.MainActivity;
3131
import fr.free.nrw.commons.databinding.FragmentUploadMediaDetailFragmentBinding;

Diff for: app/src/main/res/layout/activity_location_picker.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
xmlns:tools="http://schemas.android.com/tools"
55
android:layout_width="match_parent"
66
android:layout_height="match_parent"
7-
tools:context=".LocationPicker.LocationPickerActivity">
7+
tools:context=".locationpicker.LocationPickerActivity">
88

99
<com.google.android.material.appbar.AppBarLayout
1010
android:id="@+id/location_picker_app_bar_layout"

Diff for: app/src/test/kotlin/fr/free/nrw/commons/locationpicker/LocationPickerActivityUnitTests.kt

+2-3
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import com.google.android.material.floatingactionbutton.FloatingActionButton
1111
import com.nhaarman.mockitokotlin2.times
1212
import com.nhaarman.mockitokotlin2.verify
1313
import fr.free.nrw.commons.CameraPosition
14-
import fr.free.nrw.commons.LocationPicker.LocationPickerActivity
1514
import fr.free.nrw.commons.TestCommonsApplication
1615
import fr.free.nrw.commons.kvstore.JsonKvStore
1716
import fr.free.nrw.commons.upload.mediaDetails.UploadMediaDetailFragment.LAST_LOCATION
@@ -165,13 +164,13 @@ class LocationPickerActivityUnitTests {
165164
"placeSelected",
166165
)
167166
`when`(mapView.mapCenter).thenReturn(position)
168-
`when`(mapView.zoomLevel).thenReturn(15)
167+
`when`(mapView.zoomLevelDouble).thenReturn(15.0)
169168
method.isAccessible = true
170169
method.invoke(activity)
171170
verify(applicationKvStore, times(1)).putString(
172171
LAST_LOCATION,
173172
position.latitude.toString() + "," + position.longitude.toString(),
174173
)
175-
verify(applicationKvStore, times(1)).putString(LAST_ZOOM, mapView.zoomLevel.toString())
174+
verify(applicationKvStore, times(1)).putString(LAST_ZOOM, mapView.zoomLevelDouble.toString())
176175
}
177176
}

Diff for: app/src/test/kotlin/fr/free/nrw/commons/locationpicker/LocationPickerViewModelUnitTests.kt

-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import com.nhaarman.mockitokotlin2.times
77
import com.nhaarman.mockitokotlin2.verify
88
import com.nhaarman.mockitokotlin2.whenever
99
import fr.free.nrw.commons.CameraPosition
10-
import fr.free.nrw.commons.LocationPicker.LocationPickerViewModel
1110
import org.junit.Before
1211
import org.junit.Test
1312
import org.mockito.Mock

Diff for: app/src/test/kotlin/fr/free/nrw/commons/media/MediaDetailFragmentUnitTests.kt

+1-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package fr.free.nrw.commons.media
22

3-
import android.app.Activity
43
import android.content.Context
54
import android.content.Intent
65
import android.content.SharedPreferences
@@ -19,18 +18,16 @@ import android.widget.ProgressBar
1918
import android.widget.ScrollView
2019
import android.widget.Spinner
2120
import android.widget.TextView
22-
import androidx.activity.result.ActivityResult
2321
import androidx.fragment.app.FragmentManager
2422
import androidx.fragment.app.FragmentTransaction
2523
import androidx.test.core.app.ApplicationProvider
2624
import com.facebook.drawee.backends.pipeline.Fresco
2725
import com.facebook.drawee.generic.GenericDraweeHierarchy
2826
import com.facebook.drawee.view.SimpleDraweeView
2927
import com.facebook.soloader.SoLoader
30-
import com.nhaarman.mockitokotlin2.anyOrNull
3128
import com.nhaarman.mockitokotlin2.doReturn
3229
import com.nhaarman.mockitokotlin2.whenever
33-
import fr.free.nrw.commons.LocationPicker.LocationPickerActivity
30+
import fr.free.nrw.commons.locationpicker.LocationPickerActivity
3431
import fr.free.nrw.commons.Media
3532
import fr.free.nrw.commons.OkHttpConnectionFactory
3633
import fr.free.nrw.commons.TestCommonsApplication

Diff for: app/src/test/kotlin/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragmentUnitTest.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ import androidx.test.core.app.ApplicationProvider
2121
import com.github.chrisbanes.photoview.PhotoView
2222
import com.nhaarman.mockitokotlin2.mock
2323
import fr.free.nrw.commons.CameraPosition
24-
import fr.free.nrw.commons.LocationPicker.LocationPicker
25-
import fr.free.nrw.commons.LocationPicker.LocationPickerActivity
24+
import fr.free.nrw.commons.locationpicker.LocationPicker
25+
import fr.free.nrw.commons.locationpicker.LocationPickerActivity
2626
import fr.free.nrw.commons.OkHttpConnectionFactory
2727
import fr.free.nrw.commons.R
2828
import fr.free.nrw.commons.TestCommonsApplication

0 commit comments

Comments
 (0)