Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull Result result) {
String overlayTitle = call.argument("overlayTitle");
String overlayContent = call.argument("overlayContent");
String notificationVisibility = call.argument("notificationVisibility");
String notificationIcon = call.argument("notificationIcon");
boolean enableDrag = call.argument("enableDrag");
String positionGravity = call.argument("positionGravity");
Map<String, Integer> startPosition = call.argument("startPosition");
Expand All @@ -101,6 +102,9 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull Result result) {
WindowSetup.overlayContent = overlayContent == null ? "" : overlayContent;
WindowSetup.positionGravity = positionGravity;
WindowSetup.setNotificationVisibility(notificationVisibility);
if(notificationIcon!=null) {
WindowSetup.setNotificationIcon(notificationIcon);
}

final Intent intent = new Intent(context, OverlayService.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,7 @@ public void onCreate() {
}
PendingIntent pendingIntent = PendingIntent.getActivity(this,
0, notificationIntent, pendingFlags);
final int notifyIcon = getDrawableResourceId("mipmap", "launcher");
final int notifyIcon = getDrawableResourceId(WindowSetup.notificationIconResType, WindowSetup.notificationIconName);
Notification notification = new NotificationCompat.Builder(this, OverlayConstants.CHANNEL_ID)
.setContentTitle(WindowSetup.overlayTitle)
.setContentText(WindowSetup.overlayContent)
Expand All @@ -358,7 +358,7 @@ private void createNotificationChannel() {
}

private int getDrawableResourceId(String resType, String name) {
return getApplicationContext().getResources().getIdentifier(String.format("ic_%s", name), resType, getApplicationContext().getPackageName());
return getApplicationContext().getResources().getIdentifier(name, resType, getApplicationContext().getPackageName());
}

private int dpToPx(int dp) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ public abstract class WindowSetup {
static String positionGravity = "none";
static int notificationVisibility = NotificationCompat.VISIBILITY_PRIVATE;
static boolean enableDrag = false;
static String notificationIconResType = "mipmap";
static String notificationIconName = "ic_launcher";


static void setNotificationVisibility(String name) {
Expand Down Expand Up @@ -98,4 +100,9 @@ static void setGravityFromAlignment(String alignment) {
}

}

static void setNotificationIcon(String notificationIcon) {
notificationIconResType = "drawable";
notificationIconName = notificationIcon;
}
}
5 changes: 5 additions & 0 deletions lib/src/overlay_window.dart
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@ class FlutterOverlayWindow {
/// `positionGravity` the overlay postion after drag and default is [PositionGravity.none]
///
/// `startPosition` the overlay start position and default is null
///
/// `notificationIcon` the notification icon (file must be in the android/app/src/main/res/drawable folder)
///
static Future<void> showOverlay({
int height = WindowSize.fullCover,
int width = WindowSize.matchParent,
Expand All @@ -50,6 +53,7 @@ class FlutterOverlayWindow {
bool enableDrag = false,
PositionGravity positionGravity = PositionGravity.none,
OverlayPosition? startPosition,
String? notificationIcon,
}) async {
await _channel.invokeMethod(
'showOverlay',
Expand All @@ -64,6 +68,7 @@ class FlutterOverlayWindow {
"notificationVisibility": visibility.name,
"positionGravity": positionGravity.name,
"startPosition": startPosition?.toMap(),
"notificationIcon" : notificationIcon
},
);
}
Expand Down