1 /* 2 SPDX-FileCopyrightText: 2018 Volker Krause <vkrause@kde.org> 3 4 SPDX-License-Identifier: LGPL-2.0-or-later 5 */ 6 7 package org.kde.knotifications; 8 9 import android.graphics.drawable.Icon; 10 import android.os.Build; 11 12 import java.lang.Object; 13 import java.util.ArrayList; 14 15 /** Java side of KNotification. 16 * Used to convey the relevant notification data to Java. 17 */ 18 public class KNotification 19 { 20 public int id; 21 public String text; 22 public String richText; 23 public String title; 24 public Object icon; 25 public ArrayList<String> actions = new ArrayList<String>(); 26 public String channelId; 27 public String channelName; 28 public String channelDescription; 29 public String group; 30 public int urgency; 31 public String visibility; 32 33 public String inlineReplyLabel; 34 public String inlineReplyPlaceholder; 35 36 // see knotification.h 37 public static final int LowUrgency = 10; 38 public static final int NormalUrgency = 50; 39 public static final int HighUrgency = 70; 40 public static final int CriticalUrgency = 90; 41 setIconFromData(byte[] data, int length)42 public void setIconFromData(byte[] data, int length) 43 { 44 if (Build.VERSION.SDK_INT >= 23) { 45 icon = Icon.createWithData(data, 0, length); 46 } 47 } 48 addAction(String action)49 public void addAction(String action) 50 { 51 actions.add(action); 52 } 53 } 54