diff options
author | Fernando Castillo <fcastillo@luxoft.com> | 2019-07-22 10:12:46 -0500 |
---|---|---|
committer | Fernando Castillo <fcastillo@luxoft.com> | 2019-07-22 10:16:23 -0500 |
commit | 4f0c5aabb88aae4b98308f0552089fd023355237 (patch) | |
tree | a7893df56d21974ccf4889bdc9c8174719af2769 /base/src/main/java/com/smartdevicelink/proxy | |
parent | 31c5b1f78b5f90c6f18a8df76b462d4752ab040d (diff) | |
download | sdl_android-4f0c5aabb88aae4b98308f0552089fd023355237.tar.gz |
[SDL 0179]Pixel density and Scale
Fixes https://github.com/smartdevicelink/sdl_java_suite/issues/804
The main change is related to changing the size of the view captured.
This is done by adding a new scale parameter in the video
streaming capability and by dividing the preferred resolution from the
HMI and the scale.
Changes in the calculation of the touch coordinates are not needed due
to the array VideoStreamManager.touchScalar, this array is already
handling the differences in the size between the preferred resolution
and the captured view.
The touch coordinates are correctly being divided by the scale value.
Diffstat (limited to 'base/src/main/java/com/smartdevicelink/proxy')
-rw-r--r-- | base/src/main/java/com/smartdevicelink/proxy/rpc/VideoStreamingCapability.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/base/src/main/java/com/smartdevicelink/proxy/rpc/VideoStreamingCapability.java b/base/src/main/java/com/smartdevicelink/proxy/rpc/VideoStreamingCapability.java index e3bd9425c..2005ccf50 100644 --- a/base/src/main/java/com/smartdevicelink/proxy/rpc/VideoStreamingCapability.java +++ b/base/src/main/java/com/smartdevicelink/proxy/rpc/VideoStreamingCapability.java @@ -32,6 +32,7 @@ package com.smartdevicelink.proxy.rpc; import com.smartdevicelink.proxy.RPCStruct; +import com.smartdevicelink.util.SdlDataTypeConverter; import java.util.Hashtable; import java.util.List; @@ -45,6 +46,9 @@ public class VideoStreamingCapability extends RPCStruct { public static final String KEY_MAX_BITRATE = "maxBitrate"; public static final String KEY_SUPPORTED_FORMATS = "supportedFormats"; public static final String KEY_HAPTIC_SPATIAL_DATA_SUPPORTED = "hapticSpatialDataSupported"; + public static final String KEY_DIAGONAL_SCREEN_SIZE = "diagonalScreenSize"; + public static final String KEY_PIXEL_PER_INCH = "pixelPerInch"; + public static final String KEY_SCALE = "scale"; public VideoStreamingCapability(){} public VideoStreamingCapability(Hashtable<String, Object> hash){super(hash);} @@ -92,4 +96,31 @@ public class VideoStreamingCapability extends RPCStruct { public void setIsHapticSpatialDataSupported(Boolean hapticSpatialDataSupported) { setValue(KEY_HAPTIC_SPATIAL_DATA_SUPPORTED, hapticSpatialDataSupported); } + + public Double getDiagonalScreenSize() { + Object object = getValue(KEY_DIAGONAL_SCREEN_SIZE); + return SdlDataTypeConverter.objectToDouble(object); + } + + public void setDiagonalScreenSize(Double diagonalScreenSize) { + setValue(KEY_DIAGONAL_SCREEN_SIZE, diagonalScreenSize); + } + + public Double getPixelPerInch() { + Object object = getValue(KEY_PIXEL_PER_INCH); + return SdlDataTypeConverter.objectToDouble(object); + } + + public void setPixelPerInch(Double pixelPerInch) { + setValue(KEY_PIXEL_PER_INCH, pixelPerInch); + } + + public Double getScale() { + Object object = getValue(KEY_SCALE); + return SdlDataTypeConverter.objectToDouble(object); + } + + public void setScale(Double scale) { + setValue(KEY_SCALE, scale); + } } |