two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
User avatar
onekk
Veteran
Posts: 6144
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by onekk »

bambuko wrote: Sat Mar 18, 2023 9:23 am @onekk Qt and KDE seem to be my personal suspects in this affair (particularly Qt) - as you say "it depends" ;)
https://awesomewm.org/ - that seems very interesting and well worth further investigation. Thank you for the pointer!
What is DE? please :?

DE is a Desktop Environment, ie the bunch you will receive with KDE, ie a Window Manager, A FileManager and so one, each one is somewhat integrated with other and share a same "look and feel"

WM is only the Window Manager, ie. the thing that will show windows on the scree, no FileManager etc, you choose whatever component you prefer and make the glue bewtween them.

I use OpenBox as WM and some initialization scripts to launch my panel, my conky bar info, opne three terminals in first panel and show, etc, I'm using thunar as FileManager, but it works, and is heavily personalized, I can control WM shortcuts and moved them to not interfere with other components shortcuts, as example I click on the titlebar and hit windows key to activate the move action, and so on. Drawback is the fact that you have to write configuration files.

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
User avatar
adrianinsaval
Veteran
Posts: 5541
Joined: Thu Apr 05, 2018 5:15 pm

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by adrianinsaval »

do we know if this has been fixed in qt6? on windows there are cases where after using freecad on the second monitor it will not start anymore so lucky you for using linux.
User avatar
bambuko
Veteran
Posts: 2160
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by bambuko »

adrianinsaval wrote: Mon Mar 20, 2023 2:51 pm ...lucky you for using linux.
you can say that :mrgreen: again

seriously though - I am using both master and link branch
and I still have the problem, that whatever changes I make to set two screen display for master version, it is not persistent :twisted:
Next time I come back - all is back to standard single screen setup.

I don't have this problem with link branch

but it might be user problem? - I am less familiar with master branch and might be missing some setting in preferences?
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
hko
Posts: 96
Joined: Thu Apr 23, 2020 10:44 pm

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by hko »

bambuko wrote: Mon Mar 20, 2023 3:23 pm whatever changes I make to set two screen display for master version, it is not persistent
...
I don't have this problem with link branch
In your first message your FreeCAD version is said to be "Version: 0.21.0.31917 (Git) AppImage". In the Ubuntu/Pantheon message your FreeCAD version is "Version: 2023.131.14555 (Git shallow)". So not the same version and not even an AppImage but installed in some other way. And in Ubuntu/Pantheon you don't have a problem.

How exactly is your link branch version installed? Is it an AppImage or something else?

Since I'm not using an AppImage and I don't have that problem, I wonder if it shows up only in AppImage builds.
User avatar
bambuko
Veteran
Posts: 2160
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by bambuko »

hko wrote: Mon Mar 20, 2023 3:45 pm ...Since I'm not using an AppImage and I don't have that problem, I wonder if it shows up only in AppImage builds.
yes, sorry I was somewhat confusing

I have one distro (ubuntu based) with snaps for both master and link FreeCAD

and another distro (debian based, same machine, mechanical dual boot) with appimages of FreeCAD only

I spent most of my time on debia/kde one at the moment (appimages) and this one is causing me grief with master branch.

and yes, snaps on ubuntu/pantheon are fine both for master and link
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
freedman
Veteran
Posts: 3436
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by freedman »

I can't tell you are working on the OS or are you still trying to get the dual monitor system working.
Have you tried setting both screens to the same resolution?
Are you setup so the screens are one display?
User avatar
adrianinsaval
Veteran
Posts: 5541
Joined: Thu Apr 05, 2018 5:15 pm

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by adrianinsaval »

Qt seems to not differentiate between link and master branch when storing the window position information so one might be interfering with the other, try to test moving things in master branch but make double sure that you do not have link branch running and neither launch it between sessions of master branch. I suggest also clearing all window position information before doing this test, remove or rename ~/.config/FreeCAD/FreeCAD.conf

for your distro running snap versions these should not interfere with each other since snaps use a different config directory.
User avatar
onekk
Veteran
Posts: 6144
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by onekk »

Qt is saving some system wide version config somewhere.

I have no KDE so in my case is at:

Code: Select all

~/.config/QtProject.conf
on which I have the FileDialog stanza and some colors saved in the form of.

Code: Select all

[Qt]
customColors\0=4294967295
customColors\1=4294967295
customColors\10=4294967295
customColors\11=4294967295
customColors\12=4294967295
customColors\13=4294967295
customColors\14=4294967295
customColors\15=4294967295
customColors\2=4294967295
customColors\3=4294967295
customColors\4=4294967295
customColors\5=4294967295
customColors\6=4294967295
customColors\7=4294967295
customColors\8=4294967295
customColors\9=4294967295
It may be that some similar file or settings are saved somewhere (on Windows usually the somewhere is the "Windows Register") that could interfere between versions.

For FreeCAD you could easily separate your user config directory using a bash script like:

Code: Select all

#!/bin/bash

export FREECAD_USER_HOME="<path to user dir>/config-020-eng"

# urxvt -T "FreeCAD-launcher" -e "<path to AppIMages>/FreeCAD_0.20-1-2022-08-20-conda-Linux-x86_64-py310.AppImage"

urxvt -T "FreeCAD-launcher" -e "<path to AppIMages>/FreeCAD_0.20.2-2022-12-27-conda-Linux-x86_64-py310.AppImage"

settting FREECAD_USER_HOME is enough as it seems to place everything in this directory and separate condigurations between different versions, even Mod dir is here so you could have even different "set of addons" for the same FreeCAD version.

In my case it use a terminal to have some useful init messages prior the Gui interface is brought up.

Hope it helps.

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
User avatar
bambuko
Veteran
Posts: 2160
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by bambuko »

@freedman
I can get two monitors set up to work reliably on EOS(ubuntu)/pantheon distro -these uses snaps of master and link.

On MX(debian)/KDE, link branch is OK, but master branch changes are not persistent. I can change them but next time there are back to original

Two monitor setup works perfectly fine with other applications both EOS and MX
only FreeCAD is playing up.

@adrianinsaval
if Qt was an issue. than it would be equally an issue on both distros?

I never use both master and link at the same time.

I will try fresh config for master branch appimage, but master and link use different config directories anyway, so... I don't see it?
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
User avatar
bambuko
Veteran
Posts: 2160
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: two monitors-(QMainWindowLayout::tabPosition called with out-of-bounds value '0')

Post by bambuko »

onekk wrote: Mon Mar 20, 2023 4:57 pm For FreeCAD you could easily separate your user config directory using a bash script like ....
Thanks Carlo,
I don't need to do this .
I only have two appimages - one for master and another for link.
Each uses different directory for .config
unless,,, Qt shares the same directory?

I will start fresh with master FreeCAD appimage (which is the one with a problem...)
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
Post Reply