Autore Topic: [Risolto] Bug con la TrayIcon  (Letto 4162 volte)

Offline ivanpro

  • Gamberetto
  • *
  • Post: 14
  • Umuntu ngumuntu ngabantu
    • Mostra profilo
[Risolto] Bug con la TrayIcon
« il: 01 Settembre 2019, 17:22:55 »
Ho iniziato a programmare con Gambas e mi sono subito imbattuto in un bug con il componente TrayIcon (gb.gui.trayicon).
Vi spiego il problema:
- create un nuovo progetto di un'applicazione grafica;
- ed inserite nella Form un menu del tipo:
      Menu1
      Menu2
      Menu3
         Menu3.1
         Menu3.2
     Menu4
     Menu5
- aggiungete sempre nella Form il componente Trayicon ed associategli il Menu1 (TrayIcon1,PopupMenu=Menu1.Name) e rendete visibile la Trayicon (TrayIcon.Visible=True);
- lanciate in esecuzione l'applicazione e provate ad accedere ai sottomenu di Menu3, noterete che il Menu3 non si apre o meglio si apre in una frazione di secondo e si chiude immeditamente da solo.

Altro problema rilevato. Sempre nell'esempio sopra nella form inserite un bottone che al click si vuole rendere una qualsiasi voce del menu non visible, ad esemprio Menu4 (Menu4.Visible=False). Ebbene il menu rimane sempre lo stesso, cioè il Menu4 rimane ancora visibile mentre mi aspetto che non lo sia.

Sto programmando con la versione Gambas 3.12.2 in Ubuntu 19.04.
« Ultima modifica: 29 Luglio 2020, 23:47:03 da Gianluigi »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #1 il: 01 Settembre 2019, 19:12:54 »
 :ciao: ivanpro

non è che ci ho capito molto  :)

Potresti allegare il progetto, così semplifichiamo.
Nel progetto all'interno della IDE clicchi sul nenu Progetto > Crea > Pacchetto sorgenti ... e lo salvi dove credi.
Poi sotto all'editor del forum clicchi sul pulsante + Allegati e altre opzioni e sotto la voce Allega clicchi su Sfoglia.. navighi fino alla cartella dove hai salvato il tuo test e lo alleghi.

TrayIcon ha dei problemi dovuti principalmente al desktop Gnome ma credo che non sia questo il caso...
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline ivanpro

  • Gamberetto
  • *
  • Post: 14
  • Umuntu ngumuntu ngabantu
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #2 il: 01 Settembre 2019, 19:27:05 »
Ho allegato il progetto come richiesto.

Quando avviate il progetto compare la TrayIcon in alto a destra nella barra delle applicazioni (ha l'icona celeste di Gambas).
Cliccateci sopra, si aprirà il menu. Ora provate a cliccare Menu3 che si dovrebbe aprire rendendo visibili le voce Menu3_1 e Menu3_2 ma non lo fa (lo fa per una frazione di secondo).


Nella Form ho inserito anche il bottone che dovrebbe rendere non visibile la voce Menu4 dal menu della TrayIcon. Anche in questo caso non funziona.

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #3 il: 01 Settembre 2019, 20:19:56 »
Come già ti ho anticipato TrayIcon funziona bene solo con il desktop KDE con Gnome funziona solo parzialmente il fatto è che Gnome non la vuole e pertanto la boicotta.
I sotto menu non funzionano, non funziona lo scroll orizzontale ecc.
Ti allego il tuo progetto modificato con quello che funziona.
Vedo che utilizzi le GTK con Gambas funzionano meglio le QT cerca sul forum troverai parecchie discussioni in merito.

nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline ivanpro

  • Gamberetto
  • *
  • Post: 14
  • Umuntu ngumuntu ngabantu
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #4 il: 01 Settembre 2019, 21:37:17 »
Non capisco perché TrayIcon funziona bene solo con il desktop KDE e non con Gnome.
Sul mio Ubuntu, cioè nello stesso sistema operativo dove programmo con Gambas, tengo installato Skype che fa uso della TrayIcon che funziona benissimo anche con i sottomenu  :'(.

Comunque aldilà di questo la TrayIcon con Gambas ha parecchi problemi.

Allego un altro progetto.
Se provo a cancellare Menu4, mi cancella quello che sta sotto cioè Menu5  ??? ma poi se volessi ricrearlo nella stessa posizione in cui l'ho cancellato come faccio?

Per quanto riguarda i sottomenu ho trovato una mezza soluzione, quando apro il menu che contiene i sottomenu all'evento Show lo mando in loop fino a quando una variabile booleana cambia valore. Il problema è che rimane intrappolato lì dentro e non viene generato nessun altro evento... Avevo pensato di cambiare il valore alla variabile al click sul menu, ma niente non va. In Microsfot Visual Studio se si fosse presentato lo stesso problema e trovata la stessa soluzione del loop la cosa funzionerebbe inserendo nel ciclo while un Application.DoEvents() ma in Gambas DoEvents non c'è e Wait non fa al caso! Esiste una soluzione?

Scusatemi se insisto ma sto convertendo un progetto creato in ambiente Windows che fa uso esclusivamente della TrayIcon.
La TrayIcon se funziona con Skype deve funzionare necessariamente anche con Gambas.

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #5 il: 01 Settembre 2019, 22:56:20 »
Ti conviene postare il tuo problema direttamente sul bugtracker (*) così esponi tutto direttamente a Minisini.

Io tutto quello che potevo dirti l'ho già detto  :-\

(*) http://gambaswiki.org/bugtracker
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline ivanpro

  • Gamberetto
  • *
  • Post: 14
  • Umuntu ngumuntu ngabantu
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #6 il: 01 Settembre 2019, 23:13:34 »
Grazie per tutte le info Gianluigi.
Pensavo che inoltrando i problemi di bug qui nel forum andassero automtaicamente anche a Minisini.
Mi sono iscritto anche al bugtracker, grazie ancora  ;)
Alla prossima

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #7 il: 01 Settembre 2019, 23:58:36 »

Pensavo che inoltrando i problemi di bug qui nel forum andassero automtaicamente anche a Minisini.


Se uno ha difficoltà con l'inglese lo supportiamo, ma è sempre meglio, dove possibile, scrivere direttamente per esporre più compiutamente e con maggiore cognizione.

Comunque, nel dubbio, conviene chiedere prima qui per evitare di porre questioni sul bugtracker che in realtà non sono bug.
« Ultima modifica: 01 Settembre 2019, 23:59:38 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #8 il: 02 Settembre 2019, 16:30:02 »
Su Mint 19 funziona bene, vedi filmato allegato

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline ivanpro

  • Gamberetto
  • *
  • Post: 14
  • Umuntu ngumuntu ngabantu
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #9 il: 02 Settembre 2019, 17:12:09 »
Eh  :o un bel casino. Ho scritto a Minisini specificando che sto programmando in Ubuntu 19.04 ma non mi ha ancora risposto.
Quello dei sottomenu e della visibilità non sono gli unici problemi.
Sto facendo i salti mortali per far funzionare la TrayIcon  :rolleyes: Spesso quando clicco su una voce non lancia le procedure ad esse associate. Per farle funzionare devo attivare un Timer con Dealy=1 che si disabilita al primo lancio  :hatecomputer:.

Offline ivanpro

  • Gamberetto
  • *
  • Post: 14
  • Umuntu ngumuntu ngabantu
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #10 il: 03 Settembre 2019, 11:20:08 »
Minisini mi ha risposto e mi ha chiesto altre informazioni a cui non so rispondere:
Please fill your system information, especially which desktop you are using! AFAIK, only KDE correctly manage tray icons.
Non ne so molto di Ubuntu ma dopo l'installazione non ho modificato nessuna impostazione quindi sto usando l'ambiente di default.
Help!

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #11 il: 03 Settembre 2019, 11:56:15 »
Devi inviare le tue System information che ottieni dal menu help (?), leggi qui:
https://www.gambas-it.org/smf/index.php?topic=5963.msg42389#msg42389
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #12 il: 03 Settembre 2019, 23:28:45 »
Mi è venuto in mente che potresti provare con l'estensione di Gnome TopIcons Redux, forse può aiutare.  :-\
Io non l'ho mai provata, non so se funziona...
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline ivanpro

  • Gamberetto
  • *
  • Post: 14
  • Umuntu ngumuntu ngabantu
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #13 il: 04 Settembre 2019, 11:23:04 »
Non è che sia la soluzione migliore. Aspettiamo che dice Minisini e poi vediamo.

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.243
  • Tonno verde
    • Mostra profilo
Re:Bug con la TrayIcon
« Risposta #14 il: 04 Settembre 2019, 11:42:33 »
Secondo me, dicendoti che funziona bene solo con KDE ti ha già risposto...
Potresti pensare a qualcosa del genere (vedi allegato), più o meno, magari facendola partire dalla trayicon con una sola voce... un'immagine con una migliore risoluzione...una barra che dica clicca col tasto destro...
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro