Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linuxqq tray-Icons not clickable #494

Open
leonevilred opened this issue Dec 9, 2023 · 12 comments · May be fixed by #548
Open

Linuxqq tray-Icons not clickable #494

leonevilred opened this issue Dec 9, 2023 · 12 comments · May be fixed by #548

Comments

@leonevilred
Copy link

Archlinux Gnome 45.2 wayland
No matter whether old tray-icons supported or not .

@ArlongLi
Copy link

The menu can pop up by re-unlocking the desktop through the lock screen. I don’t know why.

@leonevilred
Copy link
Author

The menu can pop up by re-unlocking the desktop through the lock screen. I don’t know why.

Thanks for mention.It works temporarily before fix!

@Bot-wxt1221
Copy link

The same problem is on X11 too.

@nicevz
Copy link

nicevz commented Jan 18, 2024

Need to reload this extension after log in to QQ to have pop up menu working.

@238Ver
Copy link

238Ver commented Feb 12, 2024

The same problem.

@uzvg
Copy link

uzvg commented Mar 13, 2024

The same. and actually, I really think that functions like the tray icon should be implemented by the official GNOME desktop team.

@Bot-wxt1221
Copy link

The same. and actually, I really think that functions like the tray icon should be implemented by the official GNOME desktop team.

Gnome desktop team just delete it and it is almost impossible to do like what you say.

@0xarch
Copy link

0xarch commented Apr 24, 2024

@3v1n0
Found the tray of 'linuxqq' does not have additional menus when not logged in, and additional menus are only added to the tray after logging in.
Infer the extension not receiving or processing object update messages from linuxqq tray.

@plumlis
Copy link

plumlis commented Apr 25, 2024

Same issue here.

@lost-melody
Copy link

lost-melody commented Sep 2, 2024

Edit:
PR created, the workaround here is silly and is not recommended.


Same here.

Thanks to @0xarch I've found a work around. It's silly but it works.

I can confirm that qq provides a root menu item with zero child in its submenu until logged in. But appindicator does handle the LayoutUpdated signal (see _onSignal) so it's probably qq who didn't send the signal.

Here's the silly workaround

In method attachToMenu, add:

        // PATCH: keep on updating when root item has no submenu entries
        const requestLayoutUpdate = () => {
            if (!this?._client || this._rootItem?._children_ids?.length) {
                return;
            }
            this._client._requestLayoutUpdate();
            setTimeout(requestLayoutUpdate, 30000);
        };
        setTimeout(requestLayoutUpdate, 30000);

This function calls _requestLayoutUpdate and calls itself every 30 seconds.

Also tried adding those into method _onMenuOpened but this won't work, since PopupMenu only opens the menu and emits an open-state-changed signal when the menu is not empty.

If it's too silly to add such a patch to your local extension file, you probably have to disable - enable the appindicator extension (or lock - unlock gnome-shell) to force a _requestLayoutUpdated every time you log in your qq account.

I wonder if you have some better ideas, @0xarch.

By the way...

QQ does not implement org.freedesktop.DBus.Introspectable (it simply returns an empty node), so I could not use d-spy and spent too much time cooking the dbus-send commands when learning this. -_-||

@lost-melody lost-melody linked a pull request Sep 12, 2024 that will close this issue
@0xarch
Copy link

0xarch commented Oct 14, 2024

@lost-melody

zh_CN

这个扩展 似乎可以和 linuxqq史山代码一起工作,也许对这个议题有帮助.

另外,如果 linuxqq 没有广播更新消息,那么其他 (类似于 KDE 系统托盘, 以及上面提到的扩展 ) 的处理应用如何避免这个问题,或者它们只是每次用户打开的时候都向应用请求一次托盘数据?

This extension seems work with linuxqq's codes, maybe it's helpful to this issue.

BTW, if linuxqq does not message its tray's update, why do some handlers (like KDE's system tray) can handle it, or they just request items each time the user open the tray's panel?

@1a2s3d4f1
Copy link

1a2s3d4f1 commented Jan 7, 2025

Blueman and lantern's tray-icon not clickable like linuxqq. I tried this PR, It fixed the problem of blueman and lantern 's tray-icon.

zh_CN

Blueman蓝牙管理器和lantern也有类似linuxqq的问题,其中blueman开机后无法点开托盘图表且托盘图表不会随蓝牙开关而变,测试发现此PR也能修复Blueman与lantern的托盘问题。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants