diff --git a/app/src/main/java/space/neothefox/laytray/IconService.java b/app/src/main/java/space/neothefox/laytray/IconService.java
index c9ad14b..ae6b8c9 100644
--- a/app/src/main/java/space/neothefox/laytray/IconService.java
+++ b/app/src/main/java/space/neothefox/laytray/IconService.java
@@ -3,6 +3,7 @@ package space.neothefox.laytray;
import android.accessibilityservice.AccessibilityService;
import android.accessibilityservice.AccessibilityServiceInfo;
import android.app.Notification;
+import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.content.Context;
import android.content.SharedPreferences;
@@ -14,6 +15,7 @@ import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.RectF;
import android.graphics.drawable.Icon;
+import android.os.Build;
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.accessibility.AccessibilityEvent;
@@ -32,6 +34,7 @@ implements SharedPreferences.OnSharedPreferenceChangeListener{
String lastToast;
NotificationManager iconManager;
+ NotificationChannel iconChannel;
@Override
protected void onServiceConnected() {
@@ -48,6 +51,14 @@ implements SharedPreferences.OnSharedPreferenceChangeListener{
//options.registerOnSharedPreferenceChangeListener(this);
iconManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ iconChannel = new NotificationChannel(
+ "laytray",
+ "LayTray",
+ Integer.parseInt(options.getString("notificationImportance", "0")));
+ iconChannel.setShowBadge(false);
+ iconChannel.setLockscreenVisibility(Notification.VISIBILITY_SECRET);
+ }
}
protected void updateNotification(String toast)
@@ -67,12 +78,24 @@ implements SharedPreferences.OnSharedPreferenceChangeListener{
Integer.parseInt(options.getString("textMode", "0")),
Color.WHITE));
- indicator = new Notification.Builder(this)
- .setSmallIcon(smallIcon)
- .setContentTitle(toast)
- .setOngoing(true)
- .setPriority(Integer.parseInt(options.getString("notificationImportance", "0")))
- .build();
+ if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O)
+ {
+ iconChannel.setImportance(
+ Integer.parseInt(options.getString("notificationImportance", "0")));
+ indicator = new Notification.Builder(this, "laytray")
+ .setSmallIcon(smallIcon)
+ .setContentTitle(toast)
+ .setOngoing(true)
+ .build();
+ }
+ else {
+ indicator = new Notification.Builder(this)
+ .setSmallIcon(smallIcon)
+ .setContentTitle(toast)
+ .setOngoing(true)
+ .setPriority(Integer.parseInt(options.getString("notificationImportance", "0")))
+ .build();
+ }
iconManager.notify(0, indicator);
return;
}
diff --git a/app/src/main/res/layout/fragment_icon_builder.xml b/app/src/main/res/layout/fragment_icon_builder.xml
new file mode 100644
index 0000000..f90543f
--- /dev/null
+++ b/app/src/main/res/layout/fragment_icon_builder.xml
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 9d99f80..54c6113 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -32,14 +32,16 @@
- Plain Text
- Text in circle
- Text in a square
+ - Text in a square outline
- 0
- 1
- 2
+ - 3
-
+ Icon builder
Notifications
diff --git a/app/src/main/res/xml/pref_notification.xml b/app/src/main/res/xml/pref_notification.xml
index 7d676ae..79286cd 100644
--- a/app/src/main/res/xml/pref_notification.xml
+++ b/app/src/main/res/xml/pref_notification.xml
@@ -31,4 +31,8 @@
android:inputType="number"
android:title="@string/pref_title_text_size" />
+
+