andrew-bibb / cmst

QT GUI for Connman
174 stars 37 forks source link

[bug]System tray wait time doesn't work #238

Closed dancer69 closed 2 years ago

dancer69 commented 3 years ago

I'm using cmst in arch linux some time now and I recently switched to openbox with tint2 as panel, and I started to get the message about didn't find a system tray... I tried to use the "Wait time" option and I put some different values there, but this didn't make any difference. After some tries I opened the cmst-autostart.desktop file which is in ~/.config/autostart folder and I found that the the "wait" option doesn't change value. So seems that the "autostart" related options don't update or recreate this .desktop file.

andrew-bibb commented 3 years ago

The description sounds like two different issues. For the system tray could you try one of the Desktop Specific checkboxes in Preferences. Does not really matter which one, both XFCE and Mate execute the same code block when checked. I just had another issue reported with the tray icon where that seemed to fix it. This issue plus the other one are the first I've had in 4 or 5 years about this, and I got both on the same day, so need to research what changed. Something obviously did. The DE switches are something of a hack. Back in the QT5.3 days Mate and XFCE would start the system tray but QT seemed to have a problem putting the icon there. Wait time had no effect because the system tray did exist, QT just could not reliably put the icon there. The "fixes" were nothing more than a crude hack but they seemed to work for most people.

The other issue about autostart I need to look at. That sounds very much like something I need to fix.

dancer69 commented 3 years ago

I think the problem for me is just the generated .desktop file. I did tried the relative checkboxes in preferences and this seems to cause the problem because doesn't change the wait value. To be more specific: I've changed the wait value by editing the .desktop file directly from -w5(is this the default?) to -w15. After that when I re-login I had no problem and tray icon appeard in tint2 panel. Then I used the checkboxes in preferences and I also changed the wait value to 20. After that the problem re-appears. I checked again the .desktop file and I found that the wait value was again 5 seconds. So, seems that when use the the related preferences options, the "wait-value" ignored and a value of 5 seconds used instead. I don't use a desktop environment, I use xinit and only openbox WM with tint2 as panel.

corvus1 commented 3 years ago

For the system tray could you try one of the Desktop Specific checkboxes in Preferences. Does not really matter which one, both XFCE and Mate execute the same code block when checked. I just had another issue reported with the tray icon where that seemed to fix it.

In #237 disabling (switching to 'none') the DE specific switch seemed to help. Not enabling it.

dancer69 commented 3 years ago

I tried that too but it doesn't make any difference. When I use the "Enable Autostart" checkbox, then when is unchecked it deletes the .desktop file. When is checked the .desktop file recreated but, no matter what, always has 5secs wait time and not the time I input in "wait time" option.

andrew-bibb commented 2 years ago

Correct, toggling "Enable AutoStart" was recreating the file from scratch overwriting any changes there may have been made to the desktop file. There was a bunch of code to to see if the proposed new desktop file was different than the one there, but the logic for the entire function was a complete mess and it didn't work (obviously). I ripped it all out and rewrote it much more simply, and so that it works.

Should be fixed now.