问题

问题

问题

gnome-flashback 中 Dropbox 菜单作为 appindicator 损坏

这是 Ubuntu 16.04.1 上 gnome-flashback 中损坏的 Dropbox 指示器。(Dropbox 版本:x86_64-9.4.94)



在 Unity 中运行 Dropbox 菜单

正如这里所见,它在 Unity 中运行良好。但我该如何在 gnome-flashback 中(作为 appindicator)?




解决方法

在此处输入图片描述

当我强制 Dropbox 将自己显示为老式的系统托盘图标1时,菜单变得可用。




未解决的问题

  • 当 Dropbox 作为 appindicator 运行时,是什么让它在 gnome-flashback 中显示彩色图标?作为指示器,它在 Unity 中是黑白的。
  • 我可以欺骗 Dropbox 让它相信它在 Unity 下运行吗?我可以强制使用“appindicator 模式”吗?
  • Dropbox 代码是否有问题,导致无法正确选择系统托盘/应用程序指示器?这个彩色图标看起来像一半是系统托盘,一半是应用程序指示器...



1dbus-launch dropbox start您可以通过运行或强制 Dropbox 进入“系统托盘模式”,DBUS_SESSION_BUS_ADDRESS= dropbox start而不是使用普通的 启动它dropbox start

答案1

我可以欺骗 Dropbox 让它相信它在 Unity 下运行吗?我可以强制使用“appindicator 模式”吗?

是的,你可以!实验表明,Dropbox(或相关程序)会查找环境变量XDG_CURRENT_DESKTOP,这是一个 freedesktop.org 标准变量,反映了正在使用的桌面环境的名称。将其设置为,UnityDropbox 就会恢复正常。(我尝试了其他合理的值,但结果更糟。)

有几种方法可以将该变量植入 Dropbox。我选择/usr/bin/dropboxnautilus-dropbox包中编辑命令行界面脚本以始终覆盖此变量。在导入后添加此行。它也适用于“在系统启动时启动 Dropbox”:

os.environ['XDG_CURRENT_DESKTOP'] = 'Unity'

相关内容