summaryrefslogtreecommitdiff
path: root/src/daemon
AgeCommit message (Collapse)AuthorFilesLines
4 daysdaemon: Refactor icon resolution to use fallback chaindaemon-iconsVictor Kareh1-14/+27
Change icon resolution to separate if clauses. This allows each fallback method to attempt icon loading regardless of whether previous parameters were provided but failed to resolve. For example, previously if an application provided an empty or invalid icon parameter, the daemon would skip all other checks and no icon would be resolved, even if the other checks would have succeeded in resolving an icon.
4 daysdaemon: Add app_name icon fallbackVictor Kareh1-0/+36
When a notification provides an app_name but no explicit icon, attempt to derive the application icon from the desktop entry as a fallback mechanism.
2026-01-19daemon: Fix idle reposition source removal warningVictor Kareh1-0/+13
When a notification is removed from the hash table, any pending idle reposition source must be explicitly canceled in to avoid attempting to remove an already-removed source. This prevents the race condition where the timeout fires and auto-removes itself before the notification cleanup tries to cancel it.
2026-01-19daemon: Don't exit on idle when history is enabledVictor Kareh1-0/+3
Prevent daemon from exiting when history tracking is enabled to preserve the in-memory notification history.
2025-10-10daemon: Fix use-after-free crash in idle reposition timeoutVictor Kareh1-3/+8
Add destroy notify callback to prevent use-after-free crashes when notifications are closed before their reposition timeout fires. Fixes #236
2025-10-10daemon: Fix crash when monitor is disconnectedVictor Kareh1-2/+12
Add checks for monitor_id to prevent crash during monitor change events. Instead it falls back to last available monitor and allows notification processing to continue without a monitor. Fixes: #200
2025-10-10history: Add enable/disable toggleVictor Kareh1-1/+16
This helps a bit with privacy. By disabling history, it wipes all notifications in the D-Bus buffer and prevents further storage. The history popup is also disabled. Notification storage resumes when history is enabled. Note that this just prevents the mate-notifications-daemon from storing notifications, but it doesn't prevent other processes from capturing them elsewhere.
2025-10-10daemon: Add notification history tracking APIVictor Kareh3-14/+282
Added a circular buffer for tracking notifications in dbus, and methods for accessing those notifications. The idea is to implement a proper notifications system.
2025-09-04daemon: Bump libwnck to 43.0Victor Kareh1-6/+16
Recent versions of libwnck introduced a WnckHandler object to be used as the main entry point into the library.
2025-08-25daemon: implement Desktop Notifications Specification 1.3Victor Kareh2-18/+75
Add persistence support with resident/transient hints, fix icon precedence order (according to spec), and implement desktop-entry icons. Also added new 'default-timeout' and 'enable-persistence' gsettings to allow users to control timeout and persistence behavior. Spec is on https://specifications.freedesktop.org/notification-spec/1.3/ Fixes https://github.com/mate-desktop/mate-notification-daemon/issues/132 Fixes https://github.com/mate-desktop/mate-notification-daemon/issues/137 Fixes https://github.com/mate-desktop/mate-notification-daemon/issues/138 Fixes https://github.com/mate-desktop/mate-notification-daemon/issues/149
2025-07-10daemon: report dbus method invocation as handled on errorpromarbler141-2/+2
Returning an error for a dbus method is counted as handling a method invocation. Return true in the handler to avoid a use-after-free.
2024-11-26Update daemon.csundtek1-1/+1
remove exit / replace with gtk_main_quit [ 7590.265881] mate-notificati[76519]: segfault at 55ac5111c67a ip 00007d1d4fc09d61 sp 00007ffd0bf06698 error 4 in libgobject-2.0.so.0.8000.0[7d1d4fbdc000+37000] likely on CPU 0 (core 0, socket 0) [ 7590.265910] Code: 01 00 00 00 4c 89 ce 48 89 e5 e8 da e6 ff ff 5d 85 c0 0f 95 c0 0f b6 c0 c3 f3 0f 1e fa 48 85 ff 74 47 48 8b 07 48 85 c0 74 3f <48> 8b 00 48 3d fc 03 00 00 77 2c 48 8d 15 cd 53 02 00 48 c1 e8 02
2024-09-22daemon: Properly update the set of monitors when it changesColomban Wendling3-28/+48
Fixes #218.
2024-01-05Fix positioning on Wayland when output is not at position 0, 0Sophie Winter1-4/+4
2023-08-22wayland: do not attempt to connect to x11 screensaverlukefromdc1-0/+3
2023-08-10Only exit on idle when explicitly requestedColomban Wendling3-4/+29
This allows to run as a regular session service that does not exit, but also as a well-behaved D-Bus-activated service. Make the default behavior not to exit, but when activated through D-Bus.
2023-08-10Fix potential crash if org.mate.ScreenSaver doesn't respondColomban Wendling1-0/+1
2022-12-13Fix build warnings about missing field initializerrbuj1-1/+1
2022-12-13mnd-daemon: fix memory leakrbuj1-0/+3
2022-12-13daemon: fix memory leakrbuj1-4/+4
2021-12-11Use a blank line at mostrbuj2-5/+0
2021-06-22Update copyright to 2021raveit6511-0/+11
2021-04-03daemon: g_memdup is dreprecated from glib 2.68rbuj1-1/+8
2021-03-29engines.c: fix memory leakmbkma1-3/+3
2021-03-15Remove shadow warnings [-Wshadow]rbuj1-8/+14
2021-02-10Use notify_stack_destroy() instead of g_clear_object() for stacks (which are ↵William Wold1-1/+1
not GObjects)]
2020-11-26Group common constants in a single filerbuj3-10/+4
2020-11-18build: Fix make distcheckrbuj1-0/+1
2020-10-24FormattingWilliam Wold1-3/+3
2020-10-24Use C-style commentsWilliam Wold4-23/+23
2020-10-24Set layer and notificaitonWilliam Wold1-0/+2
2020-10-24Implement placement on WaylandWilliam Wold4-13/+60
2020-10-24Add initial Wayland backendWilliam Wold4-0/+91
2020-10-24Hide X11-specific code behind ifdefs and checksWilliam Wold2-23/+92
2020-10-24Use gdk_set_allowed_backends ()William Wold1-0/+8
2020-06-17daemon: Use monotonic time instead of real timerbuj1-36/+11
2020-06-12Remove conversion warningsrbuj3-31/+32
2020-04-08daemon: Remove warning about GTimeVal deprecationrbuj1-38/+34
2019-10-11Use WARN_CFLAGS which are only set with --enable-compiler-warningsrbuj1-0/+2
It removes --enable-more-warnings, since it is recommended to use --enable-compile-warnings=maximum It updates configure summary. It removes c++ checks as there is no c++ code.
2019-09-17Fix decoding the hints dictionary.Kyle Brenneman1-37/+26
g_variant_lookup works like g_variant_get, so using a format string of "v" only works if the type is actually a GVariant. Since none of the hints have GVariant values, that means every g_variant_get with a "v" format will fail. Fix all of the g_variant_lookup calls so that they either unpack a value directly, or use a "@" prefix when it's more convenient to fetch the value as a GVariant pointer. In addition, in cases where we do fetch a GVariant, make sure that we unreference it afterward.
2019-09-02mate-notification-properties: Add do-not-disturb checkboxJason Conti1-1/+0
2019-09-02src/daemon/daemon.c: check for do-not-disturb and skip notificationJason Conti1-7/+25
2019-09-02* Add do-not-disturb settingJason Conti1-0/+1
2019-07-04Remove trailing whitespacesLaurent Napias1-3/+3
2018-12-02Avoid compile warning for g_type_class_add_privateWu Xiaotian2-118/+87
- src/daemon/daemon.c - src/daemon/daemon.h
2018-06-06Use GVariantyetist2-3/+3
2018-06-06Migrate from dbus-glib to GDBusyetist2-333/+267
2018-06-06Add signals, remove annotation from xml fileyetist1-6/+9
2018-06-06Use gdbus generate filesyetist1-6/+14
2018-06-06Add new fileyetist1-0/+93