Linux control sizes

Lots has been said about Linux controls sizes.
Popupmenus need to be much larger, and cannot be enlarged visibly on Mac, making shared windows look ugly.
Im currently mostly struggling with text fields.
They need ti be huge in comparison with Mac or Windows, otherwise the bottom border does not draw.
They look OK (albeit without a back color) without a border.

However, setting .border = false (API1) or .hasborder = false
in CODE fails to remove the border.
(I created a sublcass and put that into the constructor too)

However, setting has border = false in the IDE works.
Why does it not take effect as a runtime change?

Does the “Normalize Control Sizes” setting not fix things?
I thought that’s what this switch was for.

3 Likes

I can’t find that.
Is it a property/preference/event?

Edit: found it.
That’s much better!

1 Like

For anyone coming across this in the future, it’s a Linux build setting. Select “Build Settings > Linux” and then look in the inspector under the application name.

Glad to know it’s working!

2 Likes

I always wondered if the actually fixed this issue. We fixed it manually prior to that setting and haven’t needed to change anything since. Good to know it helps.

The effect is much better than anything I managed, using example code from the forum.

Text fields had no bottom line, popupmenus had to be at least 30 pixels high…awful.
And in code, many controls simply ignored what I asked them to do.
The Xojo setting makes the screen look just like my mac screens… very happy with the result.

4 Likes

Hi Tim,

Xojo 2023R2 does not have that option. There is only App Name and Architecture.

Did this get removed or something?
Tim

This is what I see here:

1 Like

Strange, as even old projects where there was no Linux option for ‘Normalize Control Sizes’ load up in Xojo 2023R2 with the option turned off:
image

I am using Xojo 2023R2 on Windows 10 - Looks like Tim P is on a Mac. What about you Alberto?

Tim

Also on Mac.

If you can’t see it in Windows then it is a bug, please open an Issue.

Issue #74331 created.

1 Like

I just fired up 2023R2 on Windows 10 and the Normalize Control Sizes switch is there and True by default

Tim, you are working on a Desktop project or Web project (I see bootstrapmin)?

The Linux option is only for Desktop projects.

2 Likes

Yeah, that’s a web project. There’s a bootstrap file in the navigator.

It is a web app project. Is the Normalize only for desktop?

I could not find it in the Help either (latest web help from Xojo).

Tim

The Normalize Control Sizes is only for Desktop because of the stark difference in Linux controls. The point of Web 2.0 is to use Bootstrap controls. You will have to use a custom bootstrap theme to adjust controls in Web.

2 Likes

Thanks everyone. I closed the ticket with an explanation.

Some days… just can’t seem to get the brain rolling properly!

Tim