Ctrl 快捷键在 VLC 中不起作用

Ian*_*non 15 shortcut-keys unity vlc

升级到 15.10 后,我遇到一些无法在 VLC 中使用的键盘快捷键。16.04问题依旧

如果我只是在没有加载文件的情况下打开 VLC,几乎所有涉及的快捷方式Ctrl都不起作用。Ctrl+O应该打开“打开文件”对话框,但没有任何反应。例外是Ctrl+Q它确实可以关闭 VLC。

奇怪的是,如果我打开一个文件然后Ctrl-W开始关闭文件,但其他Ctrl快捷方式都不起作用。

更奇怪的是,在我打开一个文件然后关闭它之后,突然所有的Ctrl快捷方式都开始工作了,但现在菜单已经改变了颜色并且不再位于窗口标题栏中。

什么可能导致这种奇怪的行为,我该如何解决?

打开和关闭文件之前的 VLC

打开和关闭文件后的 VLC

Anw*_*war 7

此行为是由臭名昭著的appmenu-qt5错误引起的。该错误报告在这里。它为 qt 应用程序设置了一个环境变量,这会导致许多应用程序菜单项在 Unity 中出现问题。VLC 就是其中之一。

环境变量是QT_QPA_PLATFORMTHEME并且在文件中设置/etc/profile.d/appmenu-qt5.sh

解决方法

要解决此错误,您可以取消设置此变量并启动 VLC。从终端,您可以使用此命令启动 VLC,而不会出现此错误。

env QT_QPA_PLATFORMTHEME='' vlc
Run Code Online (Sandbox Code Playgroud)

作为永久修复,首先将vlc.desktop文件复制到~/.local/share/applicatons/

cp /usr/share/applications/vlc.desktop ~/.local/share/applications/
Run Code Online (Sandbox Code Playgroud)

然后编辑EXEC以下面这一行开头的行

Exec=env QT_QPA_PLATFORMTHEME='' /usr/bin/vlc --started-from-file %U
Run Code Online (Sandbox Code Playgroud)

保存文件。现在,如果您启动 VLC,快捷方式将从一开始就起作用。

更新

正如Jonathan Y报告的那样,似乎取消设置UBUNTU_MENUPROXY环境变量也有效!因此,您可以在.desktop文件中使用取消设置此变量。

Exec=env UBUNTU_MENUPROXY='' /usr/bin/vlc --started-from-file %U
Run Code Online (Sandbox Code Playgroud)

  • 我还看到了 [建议](https://bugs.launchpad.net/ubuntu/+source/texmaker/+bug/1386111/comments/47) 通过以类似的方式取消设置 `UBUNTU_MENUPROXY` 来修复这个错误。您能否评论这两种方法之间的区别,哪些(如果有)限制较少/应该被视为“有机”? (2认同)