@@ -11,7 +11,7 @@ import {
1111 DeviceType ,
1212 sortDescByApiLevelPredicate
1313} from "mobile-devices-controller" ;
14- import { isRegExp } from "util" ;
14+ import { isRegExp , isNumber } from "util" ;
1515import { NsCapabilities } from "./ns-capabilities" ;
1616
1717export class DeviceManager implements IDeviceManager {
@@ -201,13 +201,14 @@ export class DeviceManager implements IDeviceManager {
201201
202202 args . device . apiLevel = sessionInfoDetails . deviceApiLevel ;
203203 args . device . deviceScreenDensity = sessionInfoDetails . deviceScreenDensity / 100 ;
204- args . device . config = { "density" : args . device . deviceScreenDensity , "offsetPixels" : + sessionInfoDetails . statBarHeight } ;
204+ args . device . config = { "density" : args . device . deviceScreenDensity || args . device . config . density , "offsetPixels" : + sessionInfoDetails . statBarHeight || args . device . config . offsetPixels } ;
205205 } else {
206206 args . device . apiLevel = sessionInfoDetails . platformVersion ;
207207 args . device . deviceScreenDensity = sessionInfoDetails . pixelRatio ;
208- args . device . config = { "density" : sessionInfoDetails . pixelRatio , "offsetPixels" : + sessionInfoDetails . viewportRect . top - + sessionInfoDetails . statBarHeight } ;
208+ const offsetPixels = + sessionInfoDetails . viewportRect . top - + sessionInfoDetails . statBarHeight ;
209+ args . device . config = { "density" : sessionInfoDetails . pixelRatio || args . device . config . density , "offsetPixels" : isNumber ( offsetPixels ) ? offsetPixels : args . device . config . offsetPixels } ;
209210 }
210-
211+
211212 args . device . statBarHeight = sessionInfoDetails . statBarHeight ;
212213 args . device . viewportRect = DeviceManager . convertViewportRectToIRectangle ( sessionInfoDetails . viewportRect ) ;
213214
0 commit comments