summaryrefslogtreecommitdiff
path: root/app/src/main/java/org/eu/zajc/xheadset/XHeadsetTile.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/org/eu/zajc/xheadset/XHeadsetTile.java')
-rw-r--r--app/src/main/java/org/eu/zajc/xheadset/XHeadsetTile.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/app/src/main/java/org/eu/zajc/xheadset/XHeadsetTile.java b/app/src/main/java/org/eu/zajc/xheadset/XHeadsetTile.java
new file mode 100644
index 0000000..b6efe4a
--- /dev/null
+++ b/app/src/main/java/org/eu/zajc/xheadset/XHeadsetTile.java
@@ -0,0 +1,31 @@
1package org.eu.zajc.xheadset;
2
3import android.content.*;
4import android.service.quicksettings.*;
5import android.graphics.drawable.*;
6import android.util.*;
7
8public class XHeadsetTile extends TileService {
9
10 @Override
11 public void onStartListening() {
12 setEnabled(XHeadsetStateService.isEnabled(XHeadsetStateService.getPrefs(this)));
13 }
14
15 @Override
16 public void onClick() {
17 SharedPreferences prefs = XHeadsetStateService.getPrefs(this);
18 boolean oldState = XHeadsetStateService.isEnabled(prefs);
19 if (XHeadsetStateService.setEnabled(prefs, !oldState)) {
20 setEnabled(!oldState);
21 }
22
23 }
24
25 public void setEnabled(boolean enabled) {
26 Tile tile = getQsTile();
27 tile.setIcon(Icon.createWithResource(this, enabled ? R.drawable.headset : R.drawable.speaker));
28 tile.setState(enabled ? Tile.STATE_ACTIVE : Tile.STATE_INACTIVE);
29 tile.updateTile();
30 }
31}