blitz-foundation / monkey2

zlib License
3 stars 0 forks source link

IOS Zoomed mode problem. #55

Open Pharmhaus-2 opened 5 years ago

Pharmhaus-2 commented 5 years ago

Original Author: Difference

Monkey does not size it's window to the full extent, when iPhone has it's setting to "Zoomed" (goto Settings, display & Brightness, “Display Zoom.” turned on )

Forum topic: [http://monkeycoder.co.nz/forums/topic/how-can-i-get-the-device-width-and-height]

As you can see on the forum , Monkey 2 Window is 1136x640, but iPhone screen is 1364x750

To reproduce, you must also have a complete launch screen image set, can be made with [https://github.com/raphaelhanneken/Iconizer/releases]

To reproduce:


Namespace myapp

#Import "<std>"
#Import "<mojo>"

Using std..
Using mojo..

Class MyWindow Extends Window

    Field _nw:Int
    Field _nh:Int

    Method New( title:String="Size test mojo app",width:Int,height:Int,flags:WindowFlags=Null )

        Super.New( title,width,height,flags )

        _nw = Width
        _nh = Height

    End

    Method OnRender( canvas:Canvas ) Override

        App.RequestRender()

        canvas.Clear(Color.Red)
        canvas.Color = Color.DarkGrey
        canvas.DrawRect(RenderRect)

        canvas.Color = Color.White

        canvas.DrawText( "NWidth: " + _nw + " NHeight:  " + _nh,Width/2,Height/2,.5,.5 )
        canvas.DrawText( "Width: " + Width + " Height:  " + Height,Width/2,Height/2+40,.5,.5 )
    End

End

Function Main()

    Local app:=New AppInstance

    #If __DESKTOP_TARGET__

    Local win:= New MyWindow("test",640,480)

    #Elseif __MOBILE_TARGET__
    Local win:= New MyWindow("test",3000,3000, WindowFlags.HighDPI | WindowFlags.Fullscreen )

    #endif

    App.Run()
End