more to notification system with new settings tab

This commit is contained in:
choco
2025-10-08 23:20:58 +02:00
parent 17f4ddad89
commit 27e7fb7ed9
8 changed files with 963 additions and 150 deletions

View File

@@ -70,6 +70,31 @@ public class LightlessConfig : ILightlessConfiguration
public bool AutoPopulateEmptyNotesFromCharaName { get; set; } = false;
public int Version { get; set; } = 1;
public NotificationLocation WarningNotification { get; set; } = NotificationLocation.Both;
// Lightless Notification Configuration
// TODO: clean these
public bool UseLightlessNotifications { get; set; } = true;
public bool EnableNotificationSounds { get; set; } = true;
public int DefaultNotificationDurationSeconds { get; set; } = 10;
public bool ShowNotificationProgress { get; set; } = true;
public NotificationLocation LightlessInfoNotification { get; set; } = NotificationLocation.LightlessUI;
public NotificationLocation LightlessWarningNotification { get; set; } = NotificationLocation.LightlessUI;
public NotificationLocation LightlessErrorNotification { get; set; } = NotificationLocation.ChatAndLightlessUI;
public float NotificationOpacity { get; set; } = 0.95f;
public bool EnableNotificationAnimations { get; set; } = true;
public int MaxSimultaneousNotifications { get; set; } = 5;
public bool AutoDismissOnAction { get; set; } = true;
public bool ShowNotificationTimestamp { get; set; } = false;
public bool EnableNotificationHistory { get; set; } = true;
public int NotificationHistorySize { get; set; } = 50;
public uint CustomInfoSoundId { get; set; } = 2; // Se2
public uint CustomWarningSoundId { get; set; } = 15; // Se15
public uint CustomErrorSoundId { get; set; } = 16; // Se16
public bool UseCustomSounds { get; set; } = false;
public float NotificationSoundVolume { get; set; } = 1.0f;
// till here c:
public bool UseFocusTarget { get; set; } = false;
public bool overrideFriendColor { get; set; } = false;
public bool overridePartyColor { get; set; } = false;

View File

@@ -1,11 +1,13 @@
namespace LightlessSync.LightlessConfiguration.Models;
namespace LightlessSync.LightlessConfiguration.Models;
public enum NotificationLocation
{
Nowhere,
Chat,
Toast,
Both
Both,
LightlessUI,
ChatAndLightlessUI,
}
public enum NotificationType