如何让 Unity2D 切换启动器的背光?

如何让 Unity2D 切换启动器的背光?

我如何才能改变启动器图标的行为,以便只有在应用程序运行时才会打开它们的背景?

如果应用程序处于活动状态,我希望背景或边框突出显示,就像我在 Unity 3D 上一样。

答案1

恐怕您无法在 Unity-2D 中切换启动器项目的背光。它显然仅适用于 Unity-3D,而且鉴于 Unity-2D 的大部分开发已停止,我认为此功能不可能得到开发。

我还偶然发现错误 #753969并发现了这一点未经测试的补丁如果你知道如何在 Unity-2D 上获得可切换的背光从源代码构建 Unity-2D

答案2

我得到了它!感谢 jokerdino 链接的补丁,我能够配置 Unity2D 以使其按照所需的方式运行。

在此处输入图片描述

我已经准备好一个脚本,可以自动应用所需的更改。因此,您需要做的就是下载并运行它。

重要的提醒:此脚本仅适用于 Ubuntu 12.04。由于它修补了 Unity 的文件,因此使用它需要您自担风险!特别是,如果它检测到并抱怨无法正确执行修补,请不要强制它应用修补程序。

wget http://people.ubuntu.com/~rafalcieslak256/Unity2dBgToggle.sh
chmod +x Unity2dBgToggle.sh
./Unity3dBgToggle.sh

该脚本将要求您输入 root 密码、修补两个文件并重新启动 Unity2D shell。

要撤销更改,只需重新安装包unity-2d-shell

笔记:此更改将随着更新而丢失。届时您将需要再次运行该脚本。

脚本内容如下:

#!/bin/sh
cat > /tmp/IconTile.patch << EOF
--- IconTile.qml    2012-10-05 14:47:31.341845516 +0200
+++ IconTile.qml_new    2012-10-05 14:47:55.757966590 +0200
@@ -32,6 +32,7 @@
     property string selectedTileBackgroundImage: ""
     property string tileBackgroundImage: ""
     property string tileShineImage: ""
+    property alias tileBackgroundVisible: tileBackground.visible

     property color defaultBackgroundColor: "#333333"
     property color selectedBackgroundColor: "#dddddd"
EOF
cat > /tmp/LauncherItem.patch << EOF
--- LauncherItem.qml    2012-10-05 14:40:37.267792239 +0200
+++ LauncherItem.qml_new    2012-10-05 14:43:00.136500682 +0200
@@ -210,6 +210,7 @@
                 tileShineImage: (item.isBfb) ? "../launcher/artwork/squircle_shine_54.png" : ""
                 selectedTileBackgroundImage: (item.isBfb) ? "../launcher/artwork/squircle_base_selected_54.png" : ""

+                tileBackgroundVisible: running | launching
                 /* tile background fade in/out animation */
                 SequentialAnimation on backgroundOpacity {
                     NumberAnimation { to: 0.0; duration: 1000; easing.type: Easing.InOutQuad }
EOF
sudo patch /usr/share/unity-2d/shell/common/IconTile.qml < /tmp/IconTile.patch
sudo patch /usr/share/unity-2d/shell/launcher/LauncherItem.qml < /tmp/LauncherItem.patch
killall unity-2d-shell
unity-2d-shell > /dev/null 2>&1 &

相关内容