Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: bonmario - Aprile 15, 2025, 12:01:55 pm

Titolo: [RISOLTO]Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: bonmario - Aprile 15, 2025, 12:01:55 pm
Ciao a tutti,
da un paio di settimane mi succede una cosa fastidiosa sul PC di casa su cui c'è installato Ubuntu, con Cinnamon come DE.

Faccio un esempio con Firefox, ma la stessa cosa succede con qualsiasi programma "non Lazarus", ed almeno un programma "fatto con Lazarus".
Succede questo: apro Firefox, e dopo qualche minuto apro il mio programma "pippo" scritto con Lazarus.
Ad un certo punto, voglio tornare a Firefox, quindi nella barra delle applicazioni che c'è in basso, clicco sull'icona di Firefox, ma non succede niente: il mio programma "pippo" resta in primo piano. Se invece uso la combinazione "ALT + TAB", il passaggio tra i 2 programmi avviene correttamente.
Almeno 2 de programmi Lazarus con cui mi succede, li uso anche al lavoro con Windows 11, dove non ho questo problema, e sempre loro, fino a circa 2 settimana fa si comportavano normalmente anche a casa.

Io credo che il problema sia in Ubuntu + Cinnamon, ma visto che questa cosa succede solo con i programmi scritti in Lazarus, provo a chiedere anche a voi se vi viene in mente qualcosa

Grazie, Mario
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: DragoRosso - Aprile 15, 2025, 12:49:54 pm
Non posso darti un aiuto concreto, ma dubito che un programma Lazarus possa bloccare appositamente la "barra delle applicazioni" di un desktop (a meno di non fare qualcosa di specifico).

E' più probabile che qualche aggiornamento Ubuntu / Cinnamon / driver grafico e/o Wyland abbia provocato l'anomalia.
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: nomorelogic - Aprile 15, 2025, 03:22:40 pm
devi fare qualche prova, a me non è mai capitato quindi non so dirti

prova a vedere se puoi fare lo switch tra wayland e X11 ad esempio
io ho notato diversi comportamenti anomali con wayland

altra cosa che ti posso dire è se provi con una macchina virtuale con, ad esempio xfce o kde

in alternativa puoi cercare in giro se qualcuno (anche se non usa Lazarus come strumento di sviluppo) abbia avuto una anomalia simile
magari è un problema più ampio e ci sono delle info in giro
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: bonmario - Aprile 15, 2025, 04:44:06 pm
altra cosa che ti posso dire è se provi con una macchina virtuale con, ad esempio xfce o kde

Mi hai dato un'idea ... posso sfruttare il weekend lungo per tirare su una masul mio PChina virtuale, prima con Cinnamon: se lì funziona, c'è qualcosa nalla mia installazione che non va.
Se invece non funziona nemmeno lì, provo prima con xfce, che è meno esoso, e poi magari con Kde.

Grazie !
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: DragoRosso - Aprile 15, 2025, 04:47:39 pm
Come altra info generica, vedo che per gli applicativi (anche in Lazarus nel forum internazionale) si consiglia di sviluppare con per QT e non per GTK se si usa Wayland.

Lazarus e FPC dovrebbero avere la possibilità di "linkare" le librerie QT invece delle GTK. Avevo fatto a suo tempo una prova e a me aveva funzionato.

Magari non tutti i componenti sono compatibili con QT, però sicuramente nel futuro ci saranno e creeranno sicuramente migliore stabilità con Wayland.

La problematica futura di usare X1 sarà il mancato supporto dei costruttori di hardware come Nvidia sui nuovi device, e sarà uno scoglio invalicabile anche per Linux nonostante la sua apertura.
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: bonmario - Aprile 15, 2025, 07:46:32 pm
Ok, grazie, avevo provato a passare a QT qualche anno fa, ma non ci ero riuscito, a causa di vari errori.
Eventualmente ci riprovo.

Ciao, Mario
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: bonmario - Aprile 19, 2025, 02:50:10 pm
Trovato il colpevole: Cinamon !!!
Infatti nella macchina virtuale appena avviata, funziona tutto normalmente. Dopo aver installato ed avviato Cinnamon, inizia il problema descritto nel primo post.

Grazie, Mario
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: bonmario - Aprile 30, 2025, 09:36:06 am
Mistero quasi risolto ...
Oggi mi sono accorto nel nei files .lfm di alcuni progetti, la proprietà "FormStyle", è impostata su "fsStayOnTop".
Rimettendola su "fsNormal", il problema si risolve

Ora devo solo capire come mai, visto anche che normalmente quel valore o cambio a runtime, e non nell'object inspector !!!

Ciao, Mario
Titolo: Re:Ubuntu Cinnamon: i programmi Lazarus stanno in primo piano
Inserito da: DragoRosso - Aprile 30, 2025, 09:57:12 am
Mistero quasi risolto ...
Oggi mi sono accorto nel nei files .lfm di alcuni progetti, la proprietà "FormStyle", è impostata su "fsStayOnTop".
Rimettendola su "fsNormal", il problema si risolve

Bhè, direi che il mistero "E'" risolto, più che "quasi" ...
Se la Form è in stile fsStayOnTop, il suo comportamento è proprio ciò che tu hai rilevato, ossia l'impossibilità di porla in secondo piano direttamente (ad esempio tramite la barra delle applicazioni) a meno che un'altra "finestra" nel Desktop non sia presente con lo stesso stile.

I tasti ALT TAB usano invece una funzione di sistema operativo (in Windows, forse in Linux è emulata) e quindi possono portare qualunque applicazione in primo piano (unica eccezione è il "task manager" e altre applicazioni come la calcolatrice che usano uno specifico "setting" che non conosco).

Non stà lambiccarti troppo sul perchè quella proprietà è cambiata, anche per me è un dilemma alcune volte, perchè a differenza del codice dove ci puoi mettere ad esempio una "$IFDEF PROVA2025" per testare qualche cambiamento e tornare immediatamente indietro anche su un milione di righe di codice semplicemente togliendo la $DEFINE PROVA2025, sulle proprietà a design time non si può fare e se testi qualcosa (anche solo per curiosità) e ti dimentichi poi di rimettere a posto .... succcede questo.

E anche io come te uso sempre (a meno di casi particolari) il runtime per settare le proprietà, perchè tra l'altro molte volte quando cambi una proprietà "X" a design time te ne trovi altre cambiate ... e che non tornano molto spesso alla condizione originale se torni a settare "X" alla condizione originale. Ho avuto bruttissime esperienze in tale aspetto.

Ciao