diff --git a/LineageActions/AndroidManifest.xml b/LineageActions/AndroidManifest.xml
index 0c13f56..a10645d 100644
--- a/LineageActions/AndroidManifest.xml
+++ b/LineageActions/AndroidManifest.xml
@@ -49,6 +49,16 @@
+
+
+
+
+
+
+
+
diff --git a/LineageActions/res/values/strings.xml b/LineageActions/res/values/strings.xml
index 26c3420..f0c0a6a 100644
--- a/LineageActions/res/values/strings.xml
+++ b/LineageActions/res/values/strings.xml
@@ -142,4 +142,7 @@
Dirac
+
+ Dirac Sound
+
diff --git a/LineageActions/src/org/lineageos/settings/device/dirac/DiracTileService.java b/LineageActions/src/org/lineageos/settings/device/dirac/DiracTileService.java
new file mode 100644
index 0000000..b6f6344
--- /dev/null
+++ b/LineageActions/src/org/lineageos/settings/device/dirac/DiracTileService.java
@@ -0,0 +1,43 @@
+package com.moto.actions.dirac;
+
+import android.service.quicksettings.Tile;
+import android.service.quicksettings.TileService;
+
+public class DiracTileService extends TileService {
+
+ private DiracUtils mDiracUtils;
+
+ @Override
+ public void onStartListening() {
+
+ mDiracUtils = new DiracUtils(getApplicationContext());
+
+ boolean enhancerEnabled = mDiracUtils.isDiracEnabled();
+
+ Tile tile = getQsTile();
+ if (enhancerEnabled) {
+ tile.setState(Tile.STATE_ACTIVE);
+ } else {
+ tile.setState(Tile.STATE_INACTIVE);
+ }
+
+ tile.updateTile();
+
+ super.onStartListening();
+
+ }
+
+ @Override
+ public void onClick() {
+ Tile tile = getQsTile();
+ if (mDiracUtils.isDiracEnabled()) {
+ mDiracUtils.setEnabled(false);
+ tile.setState(Tile.STATE_INACTIVE);
+ } else {
+ mDiracUtils.setEnabled(true);
+ tile.setState(Tile.STATE_ACTIVE);
+ }
+ tile.updateTile();
+ super.onClick();
+ }
+}