Closed taoky closed 1 year ago
一个可能有效的 workaround:
创建 ~/.local/share/applications/JSBridge.desktop
如下:
[Desktop Entry]
Name=JSBridge
Exec=echo %u
Type=Application
Terminal=false
MimeType=x-scheme-handler/jsbridge;
sudo update-desktop-database
~/.config/mimeapps.list
,在 [Default Applications]
里加入 x-scheme-handler/jsbridge=JSBridge.desktop
,在 [Added Associations]
里加入 x-scheme-handler/jsbridge=JSBridge.desktop;
验证:以下命令 portal 不弹出窗口
gdbus call --session \
--dest org.freedesktop.portal.Desktop \
--object-path /org/freedesktop/portal/desktop \
--method org.freedesktop.portal.OpenURI.OpenURI \
"" "jsbridge://114514" {}
这么做 Applications 里面会多出一个 JSBridge,把它拖到文件夹里让它看不到就行(
@taoky 在desktop entry里加上一行NoDisplay=true
就可以不显示了
谁能提个PR不?我手机操作不方便。
谁能提个PR不?我手机操作不方便。
具体应该要 PR 什么呢
还有谁能确认一下不?确认这个问题解决了是就关掉这个issue了。
该问题已经解决
打开频道功能时,QQ 似乎会多次打开以 "jsbridge://" 开头的 URL,在 Flatpak 环境下会触发 portal 的
org.freedesktop.portal.OpenURI.OpenURI
。GNOME 桌面环境下xdg-desktop-portal-gnome
会弹出大量的「未找到应用」的弹窗。并且在后台(最小化)每运行一段时间,QQ 似乎都会再去访问 "jsbridge://" 的 URL,导致用户被弹窗打扰。
我没有找到能让启动的程序使用其他 portal 的方法,Flatpak 目前亦不提供关闭 portal 的选项。