Home
Categories
WIKI
Topic
User
LANGUAGE:
中文
English
解决微信的"您已退出登录"弹框被其他窗口挡住的问题
Experiences and Insight
870
views ·
0
replies ·
To
floor
Go
177******61
deepin
2019-06-07 20:03
Author
本帖最后由 mokyle 于 2019-6-7 20:51 编辑
相信大家如果经常使用微信的话,很可能会碰到这个问题:
当在手机端退出电脑端微信时候,微信会弹出两个窗口.
如果这时候桌面有一个大窗口打开着,比如chrome,
那么微信的其中一个提示"您已退出微信"的窗口会被挡住,而"重新登录微信"的弹出框正常显示在最前端没有被挡住.
这时候如果点击微信的登录按钮或关闭按钮是没有反应的.必须先关闭
提示"您已退出微信"的窗口才可以正常操作微信.
比如下图. (下图中是我手动将chrome往右边挪了挪才露出来"您已退出微信"的窗口的.)
另一个问题是当点击微信托盘时候或者给微信绑定了快捷键 (配置快捷键方式参见:
https://bbs.deepin.org/post/154921
), 虽然微信主窗口已经打开,但是并没有显示在最上方,一样的被其他窗口比如chrome挡住了.
这两个问题大概是微信程序的问题或者wine的问题.但是我们可以使用
Devil's Pie这个工具来简单解决下.
步骤:
apt install
devilspie
mkdir ~/.devilspie/
写两个配置文件:
vim
~/.devilspie/
微信-主窗口.ds
内容为:
; generated_rule 微信-主窗口
( if
( begin
( is ( window_name ) "微信" )
)
( begin
( focus )
( println "matchWeChat" )
)
)
vim
~/.devilspie/
微信-你已退出微信.ds
内容为:
; generated_rule 微信-你已退出微信
( if
( and
( contains ( window_property "_NET_WM_STATE") "_NET_WM_STATE_SKIP_TASKBAR" )
( is ( window_name ) "微信" )
)
( begin
( println "matchWeChatExit" )
( above )
)
)
然后在终端运行 "devilspie" 就可以生效.
第一个配置文件的意思是,发现属于微信的窗口出现,就让窗口作为焦点.即显示在顶层.
第二个配置文件的意思是,发现属于微信的"您已推出微信"的窗口出现,就让窗口置顶显示.
为了让这个devilspie工具开机自动启动,可以安装: apt install gdevilspie. 打开安装的gdevilspie,在主界面中勾选"Start devilspie daemon automatically at login"即可.
--------------------------------------
关于devilspie的使用说明可以参考:
http://www.voidcn.com/article/p-fsuwktsc-bhu.html
关于
window_property的参数可以使用xprop命令获取.
Reply
Like 0
Favorite
View the author
All Replies
No replies yet
Please
sign
in first
Featured Collection
Change
[Tutorial] deepin25 WSL Offline Installation Guide
UOS AI 2.8 Released! Three New Intelligent Agents & Major Evolution
Solid Q&A | deepin 25 Common Questions – The Immutable System Edition
New Thread
Popular Events
More
相信大家如果经常使用微信的话,很可能会碰到这个问题:
当在手机端退出电脑端微信时候,微信会弹出两个窗口.
如果这时候桌面有一个大窗口打开着,比如chrome,
那么微信的其中一个提示"您已退出微信"的窗口会被挡住,而"重新登录微信"的弹出框正常显示在最前端没有被挡住.
这时候如果点击微信的登录按钮或关闭按钮是没有反应的.必须先关闭 提示"您已退出微信"的窗口才可以正常操作微信.
比如下图. (下图中是我手动将chrome往右边挪了挪才露出来"您已退出微信"的窗口的.)
另一个问题是当点击微信托盘时候或者给微信绑定了快捷键 (配置快捷键方式参见:https://bbs.deepin.org/post/154921), 虽然微信主窗口已经打开,但是并没有显示在最上方,一样的被其他窗口比如chrome挡住了.
这两个问题大概是微信程序的问题或者wine的问题.但是我们可以使用Devil's Pie这个工具来简单解决下.
步骤:
apt install devilspie
mkdir ~/.devilspie/
写两个配置文件:
vim ~/.devilspie/微信-主窗口.ds
内容为:
; generated_rule 微信-主窗口
( if
( begin
( is ( window_name ) "微信" )
)
( begin
( focus )
( println "matchWeChat" )
)
)
vim ~/.devilspie/微信-你已退出微信.ds
内容为:
; generated_rule 微信-你已退出微信
( if
( and
( contains ( window_property "_NET_WM_STATE") "_NET_WM_STATE_SKIP_TASKBAR" )
( is ( window_name ) "微信" )
)
( begin
( println "matchWeChatExit" )
( above )
)
)
然后在终端运行 "devilspie" 就可以生效.
第一个配置文件的意思是,发现属于微信的窗口出现,就让窗口作为焦点.即显示在顶层.
第二个配置文件的意思是,发现属于微信的"您已推出微信"的窗口出现,就让窗口置顶显示.
为了让这个devilspie工具开机自动启动,可以安装: apt install gdevilspie. 打开安装的gdevilspie,在主界面中勾选"Start devilspie daemon automatically at login"即可.
--------------------------------------
关于devilspie的使用说明可以参考:http://www.voidcn.com/article/p-fsuwktsc-bhu.html
关于window_property的参数可以使用xprop命令获取.