Skip to content

Commit 955dcc9

Browse files
authored
Merge pull request #280 from mapbox/rl/remove_scaling_on_ios
Match screen units to Flutter
2 parents 806bc66 + ab46094 commit 955dcc9

36 files changed

+338
-282
lines changed

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
## main
2+
3+
### Common
4+
5+
* Screen-related units(screen coordinates, dimentions, etc.) are expected to be provided in logical pixels.
6+
We have matched screen-related units expected by the maps plugin to the units that Flutter operates with(logical pixels).
7+
18
## 0.4.5
29
### Common
310

android/src/main/java/com/mapbox/maps/pigeons/FLTGestureListeners.java

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/src/main/java/com/mapbox/maps/pigeons/FLTMapInterfaces.java

Lines changed: 20 additions & 20 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/src/main/kotlin/com/mapbox/maps/mapbox_maps/AnimationController.kt

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
package com.mapbox.maps.mapbox_maps
22

3+
import android.content.Context
34
import com.mapbox.maps.MapboxMap
45
import com.mapbox.maps.pigeons.FLTMapInterfaces
56
import com.mapbox.maps.plugin.animation.*
67

7-
class AnimationController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._AnimationManager {
8+
class AnimationController(private val mapboxMap: MapboxMap, private val context: Context) : FLTMapInterfaces._AnimationManager {
89
var cancelable: Cancelable? = null
910
override fun easeTo(
1011
cameraOptions: FLTMapInterfaces.CameraOptions,
1112
mapAnimationOptions: FLTMapInterfaces.MapAnimationOptions?
1213
) {
1314
cancelable = mapboxMap.easeTo(
14-
cameraOptions.toCameraOptions(),
15+
cameraOptions.toCameraOptions(context),
1516
mapAnimationOptions?.toMapAnimationOptions()
1617
)
1718
}
@@ -21,7 +22,7 @@ class AnimationController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._
2122
mapAnimationOptions: FLTMapInterfaces.MapAnimationOptions?
2223
) {
2324
cancelable = mapboxMap.flyTo(
24-
cameraOptions.toCameraOptions(),
25+
cameraOptions.toCameraOptions(context),
2526
mapAnimationOptions?.toMapAnimationOptions()
2627
)
2728
}
@@ -31,7 +32,7 @@ class AnimationController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._
3132
mapAnimationOptions: FLTMapInterfaces.MapAnimationOptions?
3233
) {
3334
cancelable = mapboxMap.moveBy(
34-
screenCoordinate.toScreenCoordinate(),
35+
screenCoordinate.toScreenCoordinate(context),
3536
mapAnimationOptions?.toMapAnimationOptions()
3637
)
3738
}
@@ -42,8 +43,8 @@ class AnimationController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._
4243
mapAnimationOptions: FLTMapInterfaces.MapAnimationOptions?
4344
) {
4445
cancelable = mapboxMap.rotateBy(
45-
first.toScreenCoordinate(),
46-
second.toScreenCoordinate(),
46+
first.toScreenCoordinate(context),
47+
second.toScreenCoordinate(context),
4748
mapAnimationOptions?.toMapAnimationOptions()
4849
)
4950
}
@@ -55,7 +56,7 @@ class AnimationController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._
5556
) {
5657
cancelable = mapboxMap.scaleBy(
5758
amount,
58-
screenCoordinate?.toScreenCoordinate(),
59+
screenCoordinate?.toScreenCoordinate(context),
5960
mapAnimationOptions?.toMapAnimationOptions()
6061
)
6162
}

android/src/main/kotlin/com/mapbox/maps/mapbox_maps/AttributionController.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import com.mapbox.maps.plugin.attribution.attribution
88

99
class AttributionController(private val mapView: MapView) :
1010
FLTSettings.AttributionSettingsInterface {
11-
override fun getSettings(): FLTSettings.AttributionSettings = mapView.attribution.toFLT()
11+
override fun getSettings(): FLTSettings.AttributionSettings = mapView.attribution.toFLT(mapView.context)
1212
override fun updateSettings(settings: FLTSettings.AttributionSettings) {
1313
mapView.attribution.applyFromFLT(settings, mapView.context)
1414
}

android/src/main/kotlin/com/mapbox/maps/mapbox_maps/CameraController.kt

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
package com.mapbox.maps.mapbox_maps
22

3+
import android.content.Context
34
import com.mapbox.maps.MapboxMap
45
import com.mapbox.maps.pigeons.FLTMapInterfaces
56
import com.mapbox.maps.plugin.animation.*
67

7-
class CameraController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._CameraManager {
8+
class CameraController(private val mapboxMap: MapboxMap, private val context: Context) : FLTMapInterfaces._CameraManager {
89
override fun cameraForCoordinateBounds(
910
bounds: FLTMapInterfaces.CoordinateBounds,
1011
padding: FLTMapInterfaces.MbxEdgeInsets,
@@ -13,11 +14,11 @@ class CameraController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._Cam
1314
): FLTMapInterfaces.CameraOptions {
1415
val cameraOptions = mapboxMap.cameraForCoordinateBounds(
1516
bounds.toCoordinateBounds(),
16-
padding.toEdgeInsets(),
17+
padding.toEdgeInsets(context),
1718
bearing,
1819
pitch
1920
)
20-
return cameraOptions.toFLTCameraOptions()
21+
return cameraOptions.toFLTCameraOptions(context)
2122
}
2223

2324
override fun cameraForCoordinates(
@@ -28,11 +29,11 @@ class CameraController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._Cam
2829
): FLTMapInterfaces.CameraOptions {
2930
val cameraOptions = mapboxMap.cameraForCoordinates(
3031
coordinates.map { it.toPoint() },
31-
padding.toEdgeInsets(),
32+
padding.toEdgeInsets(context),
3233
bearing,
3334
pitch
3435
)
35-
return cameraOptions.toFLTCameraOptions()
36+
return cameraOptions.toFLTCameraOptions(context)
3637
}
3738

3839
override fun cameraForCoordinatesCameraOptions(
@@ -42,10 +43,10 @@ class CameraController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._Cam
4243
): FLTMapInterfaces.CameraOptions {
4344
val cameraOptions = mapboxMap.cameraForCoordinates(
4445
coordinates.map { it.toPoint() },
45-
camera.toCameraOptions(),
46-
box.toScreenBox()
46+
camera.toCameraOptions(context),
47+
box.toScreenBox(context)
4748
)
48-
return cameraOptions.toFLTCameraOptions()
49+
return cameraOptions.toFLTCameraOptions(context)
4950
}
5051

5152
override fun cameraForGeometry(
@@ -56,61 +57,61 @@ class CameraController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._Cam
5657
): FLTMapInterfaces.CameraOptions {
5758
val cameraOptions = mapboxMap.cameraForGeometry(
5859
geometry.toGeometry(),
59-
padding.toEdgeInsets(),
60+
padding.toEdgeInsets(context),
6061
bearing,
6162
pitch
6263
)
63-
return cameraOptions.toFLTCameraOptions()
64+
return cameraOptions.toFLTCameraOptions(context)
6465
}
6566

6667
override fun coordinateBoundsForCamera(camera: FLTMapInterfaces.CameraOptions): FLTMapInterfaces.CoordinateBounds {
67-
val coordinateBounds = mapboxMap.coordinateBoundsForCamera(camera.toCameraOptions())
68+
val coordinateBounds = mapboxMap.coordinateBoundsForCamera(camera.toCameraOptions(context))
6869
return coordinateBounds.toFLTCoordinateBounds()
6970
}
7071

7172
override fun coordinateBoundsForCameraUnwrapped(camera: FLTMapInterfaces.CameraOptions): FLTMapInterfaces.CoordinateBounds {
7273
val coordinateBounds =
73-
mapboxMap.coordinateBoundsForCameraUnwrapped(camera.toCameraOptions())
74+
mapboxMap.coordinateBoundsForCameraUnwrapped(camera.toCameraOptions(context))
7475
return coordinateBounds.toFLTCoordinateBounds()
7576
}
7677

7778
override fun coordinateBoundsZoomForCamera(camera: FLTMapInterfaces.CameraOptions): FLTMapInterfaces.CoordinateBoundsZoom {
78-
val coordinateBoundsZoom = mapboxMap.coordinateBoundsZoomForCamera(camera.toCameraOptions())
79+
val coordinateBoundsZoom = mapboxMap.coordinateBoundsZoomForCamera(camera.toCameraOptions(context))
7980
return coordinateBoundsZoom.toFLTCoordinateBoundsZoom()
8081
}
8182

8283
override fun coordinateBoundsZoomForCameraUnwrapped(camera: FLTMapInterfaces.CameraOptions): FLTMapInterfaces.CoordinateBoundsZoom {
8384
val coordinateBoundsZoom =
84-
mapboxMap.coordinateBoundsZoomForCameraUnwrapped(camera.toCameraOptions())
85+
mapboxMap.coordinateBoundsZoomForCameraUnwrapped(camera.toCameraOptions(context))
8586
return coordinateBoundsZoom.toFLTCoordinateBoundsZoom()
8687
}
8788

8889
override fun pixelForCoordinate(coordinate: MutableMap<String, Any>): FLTMapInterfaces.ScreenCoordinate {
8990
val screenCoordinate = mapboxMap.pixelForCoordinate(coordinate.toPoint())
90-
return screenCoordinate.toFLTScreenCoordinate()
91+
return screenCoordinate.toFLTScreenCoordinate(context)
9192
}
9293

9394
override fun coordinateForPixel(pixel: FLTMapInterfaces.ScreenCoordinate): MutableMap<String, Any> {
94-
val screenCoordinate = mapboxMap.coordinateForPixel(pixel.toScreenCoordinate())
95+
val screenCoordinate = mapboxMap.coordinateForPixel(pixel.toScreenCoordinate(context))
9596
return screenCoordinate.toMap() as MutableMap<String, Any>
9697
}
9798

9899
override fun pixelsForCoordinates(coordinates: MutableList<MutableMap<String, Any>>): MutableList<FLTMapInterfaces.ScreenCoordinate> {
99100
val screenCoordinates = mapboxMap.pixelsForCoordinates(coordinates.map { it.toPoint() })
100-
return screenCoordinates.map { it.toFLTScreenCoordinate() }.toMutableList()
101+
return screenCoordinates.map { it.toFLTScreenCoordinate(context) }.toMutableList()
101102
}
102103

103104
override fun coordinatesForPixels(pixels: MutableList<FLTMapInterfaces.ScreenCoordinate>): MutableList<MutableMap<String, Any>> {
104-
val points = mapboxMap.coordinatesForPixels(pixels.map { it.toScreenCoordinate() })
105+
val points = mapboxMap.coordinatesForPixels(pixels.map { it.toScreenCoordinate(context) })
105106
return points.map { it.toMap().toMutableMap() }.toMutableList()
106107
}
107108

108109
override fun setCamera(cameraOptions: FLTMapInterfaces.CameraOptions) {
109-
mapboxMap.setCamera(cameraOptions.toCameraOptions())
110+
mapboxMap.setCamera(cameraOptions.toCameraOptions(context))
110111
}
111112

112113
override fun getCameraState(): FLTMapInterfaces.CameraState {
113-
return mapboxMap.cameraState.toCameraState()
114+
return mapboxMap.cameraState.toCameraState(context)
114115
}
115116

116117
override fun setBounds(options: FLTMapInterfaces.CameraBoundsOptions) {
@@ -122,17 +123,17 @@ class CameraController(private val mapboxMap: MapboxMap) : FLTMapInterfaces._Cam
122123
}
123124

124125
override fun dragStart(point: FLTMapInterfaces.ScreenCoordinate) {
125-
mapboxMap.dragStart(point.toScreenCoordinate())
126+
mapboxMap.dragStart(point.toScreenCoordinate(context))
126127
}
127128

128129
override fun getDragCameraOptions(
129130
fromPoint: FLTMapInterfaces.ScreenCoordinate,
130131
toPoint: FLTMapInterfaces.ScreenCoordinate
131132
): FLTMapInterfaces.CameraOptions {
132133
return mapboxMap.getDragCameraOptions(
133-
fromPoint.toScreenCoordinate(),
134-
toPoint.toScreenCoordinate()
135-
).toFLTCameraOptions()
134+
fromPoint.toScreenCoordinate(context),
135+
toPoint.toScreenCoordinate(context)
136+
).toFLTCameraOptions(context)
136137
}
137138

138139
override fun dragEnd() {

android/src/main/kotlin/com/mapbox/maps/mapbox_maps/CompassController.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import com.mapbox.maps.plugin.compass.compass
88

99
class CompassController(private val mapView: MapView) :
1010
FLTSettings.CompassSettingsInterface {
11-
override fun getSettings(): FLTSettings.CompassSettings = mapView.compass.toFLT()
11+
override fun getSettings(): FLTSettings.CompassSettings = mapView.compass.toFLT(mapView.context)
1212
override fun updateSettings(settings: FLTSettings.CompassSettings) {
1313
mapView.compass.applyFromFLT(settings, mapView.context)
1414
}

0 commit comments

Comments
 (0)