Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Panel Arrangement is unusable #13

Open
jpryne opened this issue Apr 9, 2019 · 17 comments
Open

Panel Arrangement is unusable #13

jpryne opened this issue Apr 9, 2019 · 17 comments

Comments

@jpryne
Copy link

jpryne commented Apr 9, 2019

On Windows 10, I consistently get an unusable window arrangement, as shown in the image below. This may be due to having multiple monitors, as I also have an Oculus Rift installed.

kha

@RobDangerous
Copy link
Member

Different DPI scaling options per monitor? Same in other browsers?

@ianharrigan
Copy link
Collaborator

Toolkit.autoScale = false should fix that before kodegarden loads, i can make the change but need a little bit of time as i dont have anything setup for KG. Before this line should work: https://github.com/Kode/KodeGarden/blob/master/Client/src/Main.hx#L8

I would be interested to see what Screen.instance.dpi returns in this case also

@jpryne
Copy link
Author

jpryne commented Apr 11, 2019

This may also be due to my Windows Accessability settings, as I often enlarge the text for easy reading.

@ianharrigan Not sure if I'm doing it right, but when I enter "Screen.instance.dpi" into the console, "TypeError: Screen.instance is undefined", though "Screen" is recognized.

@ianharrigan
Copy link
Collaborator

ianharrigan commented Apr 12, 2019

Yeah, thats probably not going to work - haxeui doesnt expose the classes by default, the Screen you are seeing is the browsers, not haxeui's.

Can you run this .html (attached) click the button and paste the values? The easiest option would to probably just switch off autoscaling, or change the threshold, would be interesting to see what the values are for your system though.

Cheers,
Ian

html5.zip

For reference, i get:

image

@jpryne
Copy link
Author

jpryne commented Apr 12, 2019

image

@jpryne
Copy link
Author

jpryne commented Apr 12, 2019

Also, I have a 4K monitor, though I typically have it set to 1080p.

@ianharrigan
Copy link
Collaborator

... that'll do it... i wonder why your dpi is so high though... Looking at how haxeui-html5 calcs this.

@ianharrigan
Copy link
Collaborator

    public static function get_dpi():Float {
        if (_dpi != 0) {
            return _dpi;
        }

        var div = Browser.document.createElement("div");
        div.style.width = "1in";
        div.style.height = "1in";
        div.style.position = "absolute";
        div.style.top = "-99999px"; // position off-screen!
        div.style.left = "-99999px"; // position off-screen!
        Browser.document.body.appendChild(div);
        
        var devicePixelRatio:Null<Float> = Browser.window.devicePixelRatio;
        if (devicePixelRatio == null) {
            devicePixelRatio = 1;
        }
        
        _dpi = div.offsetWidth * devicePixelRatio;
        HtmlUtils.removeElement(div);
        return _dpi;
    }

Seems like its a little complex... wonder how this can be improved.

@jpryne
Copy link
Author

jpryne commented Apr 12, 2019

Maybe it's grabbing specs from my Oculus Rift? (High resolution, small screen)

@jpryne
Copy link
Author

jpryne commented Apr 12, 2019

My window.devicePixelRatio is 2.5 (96 * 2.5 = 240)

@ianharrigan
Copy link
Collaborator

i wonder why? The easy option here is to turn of auto scaling in haxeui, its not needed for KG, but its a strange one regardless

@jpryne
Copy link
Author

jpryne commented Apr 12, 2019

I'm using a 4K uhdtv as my main screen. (I'm Batman.) :|

@ianharrigan
Copy link
Collaborator

is that detectable? Can you think of there being a better way to calc this dpi setting?

@jpryne
Copy link
Author

jpryne commented Apr 12, 2019

I hope not. It's supposed to be a secr- oh, you mean the dpi? Is it important for the graphics? Seems logical to let the browser handle it.

@ianharrigan
Copy link
Collaborator

Yeah, autoScaling off would fix it...

@jpryne
Copy link
Author

jpryne commented Apr 15, 2019

Ok, how do I turn off autoScaling?

@ianharrigan
Copy link
Collaborator

the Toolkit.autoScale needs to be set to false before the app starts, its not something that can be changed at runtime... i can make a "blind" PR but dont want to build it as my version of haxeui is no doubt different and i dont have a setup to run kodegarden locally at the moment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants