Webview.set_position inconsistent iOS Vs Android

I’m using a webview to pop up some video content over our game
Ideally I want this in a non-fullscreen window.

What I’m finding is that, on Android, the position of the window is as expected but, on iOS, a window that’s appearing centre of screen on Android appears half way across the screen.

Is there a difference in how I should be passing the x,y,w,h parameters into each? If I go for full screen the behaviour works fine, similarly I can get full width to work ok on both.

Using 1.9.8 for reference.

Thanks!

Sounds like it’s related to display scaling where iOS phones often have retina screens with 2x pixels? In 1.9.9 (available as a beta tomorrow) there’s new window.get_display_scale() to get this multiplier.

Brilliant, thanks so much!

would I be right in thinking this value isn’t necessarily going to be 2 for any given retina device?

I’m (1.9.8) taking the width and height of the device with window.get_size() and then basically displaying a webview which is 70% of this size. On Android it’s fine. On iOS, on my iPhone 14 (2532 x 1170) it displays OK if I divide the width and height by 3, whereas on my iPad 10.2 (2019) 7th gen (2160 x 1620) it displays OK if I divide the width and height by 2.

So, when it comes in 1.9.9 beta, should I expect to be getting different values from the call to window.get_display_scale() for each device?

Thanks

I see now that there are also ios devices with 3x scale factor. If useful for anyone, there are details here Resolution by iOS device — iOS Ref

2 Likes