Benedikt Heine
5f51147263
Prefix urgency enum with URG_
2017-11-16 17:12:30 +01:00
Benedikt Heine
d91053c85e
Use enum for urgency
2017-11-16 17:10:28 +01:00
Benedikt Heine
03c8301c26
Free old notifications when replaced
...
Do not push old notifications to history, as there would be multiple
notifications around with the same ID.
2017-11-15 17:10:56 +01:00
Benedikt Heine
1162f53f8c
Change queues_stack_duplicate signature to bool
2017-11-15 17:10:56 +01:00
Benedikt Heine
7a057b0b2e
Close old notification when stacking
...
Notification spec prohibits to reuse notification IDs (unless uint32 is
exhausted). Therefore returning the same ID twice must not happen.
Sending a signal, that the old notification timed out makes most sense.
It wasn't closed by the user, nor by a CloseNotification call either.
When we stack notifications, no interaction happened (the equivalent
of timing out).
2017-11-15 14:39:43 +01:00
Nikos Tsipinakis
62e50289f0
Merge pull request #425 from bebehei/memory-leak_history-ignore
...
Free notifications ignored in history
2017-11-07 13:53:22 +02:00
Benedikt Heine
b7677affeb
Free notifications ignored in history
...
Notifications having set the history_ignore hint (and by default
also transient notifications) have not been freed.
2017-11-07 12:33:58 +01:00
Benedikt Heine
1e51edc0df
Fix handling of non V1.5 XRandR
...
Due to the way Xlib handles errors XRRGetMonitors will cause dunst to exit if
the server doesn't support version 1.5 of RandR. The check for null is
effectively dead code but in theory the number of monitors can be < 1 so treat
this as an error. Change the code to fetch the RandR version and fallback if
the version is less than 1.5 when getting monitors.
This fix was brought up by @SteveJones on GitHub
2017-11-02 15:31:19 +01:00
Nikos Tsipinakis
76857b6e7c
Merge pull request #423 from bebehei/optimize_icons
...
Optimize icons
2017-11-02 07:54:41 +02:00
Nikos Tsipinakis
c481760ae1
Merge pull request #424 from bebehei/timeout-fixes
...
Fixup fields to count in monotonic usec time
2017-11-02 07:36:23 +02:00
Benedikt Heine
11af7402fa
Use '-1' for undefined progress
2017-10-31 15:58:41 +01:00
Benedikt Heine
1f4d03af9c
Fixup fields to count in monotonic usec time
2017-10-31 12:53:39 +01:00
Benedikt Heine
b571698f52
Free Actions in separate method
...
Also free the memory of the actual Action.
2017-10-31 12:49:19 +01:00
Benedikt Heine
23cae3110d
Optimize out icon_overridden
...
There is no need save if the icon field should have precedence, as
setting raw_icon to NULL emphasizes the same.
Also freeing raw_icon saves unneccessary memory.
2017-10-31 12:49:16 +01:00
Benedikt Heine
13ed6301d8
Add separate function to free RawImage
2017-10-31 12:49:07 +01:00
Nikos Tsipinakis
e111f5393e
Merge pull request #411 from bebehei/refactor-queues
...
Refactor queues
2017-10-31 07:56:38 +02:00
Benedikt Heine
b57483416e
Remove command handling from notification_init
2017-10-29 20:38:40 +01:00
Benedikt Heine
616b8a1758
Rename queue to waiting
...
This gives all three queues unique names makes it easier to trace back,
which queue should hold which notifications.
2017-10-29 20:38:40 +01:00
Benedikt Heine
a536e3f60b
Force management of queues to queues.c
2017-10-29 20:38:40 +01:00
Benedikt Heine
e3881766c0
Refactor history_* functions to match queues namespace
2017-10-29 20:38:40 +01:00
Benedikt Heine
38e4bbb7bb
Refactor notification_* functions to match queues namespace
2017-10-29 20:38:40 +01:00
Benedikt Heine
12fa9d6ce1
Move update_lists and check_timeouts to queues.c
...
Also refactor the names to match the namespace.
2017-10-29 20:38:40 +01:00
Benedikt Heine
c70da444a9
Move pause_display to queues.c
...
Hint for dbus.c lines (134,138):
pause_display => (displayed->length == 0)
2017-10-29 20:38:40 +01:00
Benedikt Heine
59ac6d0f88
Move get_sleep_time to queues.c
2017-10-29 20:38:40 +01:00
Benedikt Heine
3fab4c470b
Increment id counter only for displayed notifications
...
Previously for every notification (also stacked ones), a new
notification id was used, even if the notification got discarded.
2017-10-29 20:38:40 +01:00
Benedikt Heine
f869175d0d
Move id assignment to separate function in queues.c
...
Move all id-changing functions out of notification_init and handle this
in queues.c
Also use stack_duplicates in combination with replacement of
notifications correctly. Fixes #404 (issue not found)
2017-10-29 20:38:40 +01:00
Benedikt Heine
af9f6b8b7d
Move maximum notification display count to x11
...
Decouple the x11 stuff from dunst.c, to be able to push update_lists to
queues.c in the next commit
2017-10-29 20:38:40 +01:00
Benedikt Heine
7110734b6e
Move queue initialization to queues.c
2017-10-29 20:38:40 +01:00
Benedikt Heine
7f335b79d2
Uncouple dunst.h from queues.c again
2017-10-29 20:38:40 +01:00
Benedikt Heine
a7003e3616
Refactor: Move queue specific methods to queues.c
2017-10-29 20:38:40 +01:00
Benedikt Heine
df56528bdc
Unref GVariants after use again
2017-10-27 20:15:31 +02:00
Nikos Tsipinakis
a2575566f5
Merge pull request #418 from bebehei/microopt
...
Microopt
2017-10-24 06:03:58 +03:00
Benedikt Heine
e3528ef3ec
Indent functions to standard
2017-10-22 10:40:39 +02:00
Benedikt Heine
2d67a5c78e
Remove unused ERR macro
2017-10-22 10:40:39 +02:00
Benedikt Heine
2d7dc6fbc5
Make startup notification timeout in 10 seconds
2017-10-22 10:40:39 +02:00
Nikos Tsipinakis
3691b7e47c
Merge pull request #371 from bebehei/configh
...
Improve usage of config.h
2017-10-21 20:25:36 +03:00
Benedikt Heine
3fc27e4004
Deprecate STATIC_CONFIG
2017-10-18 00:09:42 +02:00
Benedikt Heine
01197584ae
Do not extra check g_free for null
2017-10-11 01:19:58 +02:00
Edward Betts
5f87039946
correct spelling mistake
2017-10-10 23:41:08 +01:00
Benedikt Heine
bc3c6466ca
Remove LENGTH macro and replace with glib one
2017-10-10 23:11:52 +02:00
Benedikt Heine
be3636c679
Remove _GNU_SOURCE macro
...
After some research, the _GNU_SOURCE does not affect any function call
anymore. To avoid future failures on other systems not using glibc,
_GNU_SOURCE gets removed.
2017-10-08 02:32:37 +02:00
Benedikt Heine
7965fd3e9f
Move default values into separate settings struct
2017-10-07 18:19:14 +02:00
Benedikt Heine
81ff86299f
Change boundary conditions in run()
2017-10-07 17:46:24 +02:00
Benedikt Heine
1f0e8d2181
overhaul get_sleep_time
2017-10-07 17:46:24 +02:00
Benedikt Heine
5d46cd700c
Add option_get_time functions
2017-10-07 17:46:24 +02:00
Benedikt Heine
956b5c6401
Use gint64 as microseconds for internal timeunit
...
time(NULL) is vulnerable against timeshifts by NTP, timezones,...
g_get_monotonic_time() is not, but counts its in microseconds with the
gint64 datatype. To prevent any conversion bugs, all internal
timeformats are now using a gint64 and only get converted during import
or export (DBus notification arrives, configuration reading, age
threshold display).
2017-10-07 17:46:21 +02:00
Benedikt Heine
7a02d8e48a
Microoptimisation in get_sleep_time
...
Setting the value to INT_MAX instead of 0 allows to remove the boolean
check if value even has been set.
2017-10-07 17:45:57 +02:00
Nikos Tsipinakis
a56bdd18c1
Merge pull request #401 from bebehei/flickerless-replace
...
Update notification attributes upon direct replace
2017-10-06 22:32:49 +03:00
Nikos Tsipinakis
a18b4d8895
Merge pull request #402 from bebehei/unused-fields
...
Remove unused struct fields
2017-10-06 22:29:01 +03:00
Nikos Tsipinakis
478377815f
Merge pull request #403 from bebehei/redo-354
...
Work around non-gnu basename implementations
2017-10-06 22:24:39 +03:00