RTX 2012 的主窗口在“显示桌面”后被冻结
Tofloor
poster avatar
duanyao
deepin
2015-03-17 21:06
Author
我在使用 RTX 时出现如下问题:

当RTX主窗口显示的时候,将鼠标移动到屏幕左下角,让桌面显示出来;然后再次将鼠标移动到屏幕左下角,RTX主窗口恢复显示了,但是被冻结了,点击、移动都没有反应,也无法关闭,在系统托盘上右击也不出现菜单。冻结时RTX的CPU占用率可能很高,但也不总是如此。

如果用RTX主窗口上的最小化按钮将其最小化,则工作正常。如果在RTX最小化的状态下显示桌面,则RTX不会被冻结。

窗口形式类似的QQ(系统自带的)没有这样的问题。

我的系统是 deepin 2014.2,64位,前些天刚装好后用 apt-get dis-upgrade 进行了升级。
RTX 2012 (8.2.561.202) 是通过自带的 CrossOver 14.0.5 下载安装的,全采用默认设置。安装的最后阶段出现“RTXShlMenu.dll 注册失败”的对话框,忽略后似乎没有明显问题。

我不确定这是哪方面的问题,但怀疑是deepin的“显示桌面”功能的bug。
不知是否有人遇到类似的问题?有没有解决办法?
Reply Favorite View the author
All Replies
oaker
deepin
2015-03-19 23:11
#1
CrossOver官方对RTX的支持不太好,详细信息可以到他们网站看看。
Reply View the author
duanyao
deepin
2015-03-20 18:26
#2
谢谢回复!不过我注意到将RTX最小化并不会导致它冻结。
请问鼠标移到右下角“显示桌面”的实现方式是怎样的?与“将所有窗口最小化”有何不同?如果没有不同,想必RTX不会被冻结。如果您能告知“显示桌面”的实现代码的位置,或许我可以自己调试一下看看。
Reply View the author
yuanchenglu
deepin
2015-03-20 19:04
#3
谢谢回复!不过我注意到将RTX最小化并不会导致它冻结。
请问鼠标移到右下角“显示桌面”的实现方式是怎样的?与“将所有窗口最小化”有何不同?如果没有不同,想必RTX不会被冻结。如果您能告知“显示桌面”的实现代码的位置,或许我可以自己调试一下看看。

您好!
其实就是调用了/usr/lib/deepin-daemon/desktop-toggle
因为此文件是由Go编译的,所以系统中是看不到源码的。
gitcafe源码:https://gitcafe.com/Deepin/dde-daemon/blob/master/bin/desktop-toggle/main.go
Reply View the author
duanyao
deepin
2015-03-20 22:11
#4
您好!
其实就是调用了/usr/lib/deepin-daemon/desktop-toggle
因为此文件是由Go编译的,所以系统中是看不到源码的。
gitcafe源码:https://gitcafe.com/Deepin/dde-daemon/blob/master/bin/desktop-toggle/main.go

谢谢。看了一下 desktop-toggle 调用了 ClientEvent 给 root window 发送 _NET_SHOWING_DESKTOP 消息,所以真正的实现应该是在窗口管理器里面,你们用的是 Compiz 对吧。

看来接下来要试试其它的窗口管理器和wine了。
Reply View the author