[X2Go-Dev] X2Go-TCE-MATE-Minidesktop

Stefan Baur X2Go-ML-1 at baur-itcs.de
Fri Jan 18 20:02:48 CET 2019

Dear $LIST,

I seem to be stuck in a rather deep rabbit hole, and in dire need of an
adult, err, developer with C++ skills.

Originally, I was merely trying to track down a race condition regarding
the sessions file in MATE-Minidesktop-Mode.
In doing so, I noticed some other things going wrong during the
X2GoClient startup in MMD.

So what I'm looking at right now is the source of X2GoClient, where it says:

    if (param == "--thinclient")
        return true;


    if ( param=="--maximize" )
        return true;

So startMaximized is already triggered by "--maximize" (which is set in
the MMD X2GoClient startup script
"/etc/x2go/x2gothinclient-minidesktop_start").  Great.  One thing less
to worry about.

The only occurrences of thinMode in src/onmainwindow.cpp are:

    if (thinMode)
        QTimer *timer = new QTimer(this);
        connect(timer, SIGNAL(timeout()), this, SLOT(slotSyncX()));


    if (thinMode)
        x2goDebug<<"Thin Mode is active.";

The second one is easy, it's some magic to make the Window appear in
fullscreen and in the foreground, and this is probably how it needs to
be done so it works even when there's no window manager present (as in

But what is that timer thing in the first if clause about???

The reason why I need to know this is so I can determine if the
"--thinclient" parameter should be set when calling X2GoClient in
MATE-MiniDesktop mode, should be unset, or is irrelevant.

(Note: TCE-NFS is not affected as it uses a different start script.)

Kind Regards,
Stefan Baur

BAUR-ITCS UG (haftungsbeschränkt)
Geschäftsführer: Stefan Baur
Eichenäckerweg 10, 89081 Ulm | Registergericht Ulm, HRB 724364
Fon/Fax 0731 40 34 66-36/-35 | USt-IdNr.: DE268653243

More information about the x2go-dev mailing list