1486 Commits

Author SHA1 Message Date
Benedikt Heine
b3e640a8ef Remove CircleCI and Travis CI
Those will get replaced by Github Actions
2020-03-31 15:27:42 +02:00
Nikos Tsipinakis
43c614559c Remove WantedBy in systemd unit file
This avoids dunst starting automatically on session start, since it
usually happens before the graphical session is brought up and ends up
cluttering the journal with errors.

Either way, dunst is autostarted by dbus when a notification is sent.

See #314
2020-03-21 21:24:54 +01:00
Nikos Tsipinakis
fbdef7b58a
Merge pull request #694 from bebehei/issue-693-unset-home
Retrieve user's home from passwd entry as fallback
2020-03-13 16:45:31 +01:00
Benedikt Heine
9591af02a8 Retrieve user's home from passwd entry as fallback
For weird reasons, the HOME-variable might not always be set. So we
should fallback on something more reliable.

Fixes #693
2020-03-10 16:29:20 +01:00
Nikos Tsipinakis
dfd6e76de5
Merge pull request #684 from chronus7/master
Adding vertical content alignment control.
2020-01-30 15:07:52 +02:00
chronus
4c09883ef6 adding changes according to review
- adding default to config.h#defaults
- changing naming from content_* to vertical_*
- replacing switch-case with if-else-if
2020-01-29 23:02:00 +01:00
chronus
e665eea97e adding content_alignment to config and documentation 2020-01-26 11:44:31 +01:00
chronus
f9b6f6a066 fixing comparison issue in bottom alignment 2020-01-25 16:43:42 +01:00
chronus
89d7a81b9c Adding vertical content alignment control.
This adds the option `content_alignment`, which allows the user to set
the vertical alignment of the notification's content (i.e. icon and
text) to either top (`CONTENT_TOP`), center (`CONTENT_CENTER`, default),
or bottom (`CONTENT_BOT`). The default preserves current behaviour,
while the other options fulfill #486.
2020-01-25 16:35:38 +01:00
Nikos Tsipinakis
3f3082efb3
Merge pull request #674 from xkr47/patch-min_icon_size-20191122
Implement #392, take 2
2019-12-18 15:14:38 +02:00
Jonas Berlin
ad5d20bd6a Add tests for icon scaling math & loading 2019-12-17 22:40:36 +02:00
Jonas Berlin
03253e82f7 [ReviewFix] Remove bogous g_error_free() cal 2019-12-05 20:12:07 +02:00
Jonas Berlin
667503ef7d Cleanup, documentation 2019-12-04 21:01:29 +02:00
Jonas Berlin
87491192cb [RegressionFix] Slightly different valgrind leak trace in CI env 2019-12-03 22:34:17 +02:00
Jonas Berlin
9264b0f994 [ReviewFix] dunst.pod: Update icon scaling documentation 2019-12-03 21:29:43 +02:00
Jonas Berlin
445d305bf8 [ReviewFix] dunstrc: Add min_icon_size 2019-12-03 21:29:37 +02:00
Jonas Berlin
e077b949a6 [ReviewFix] gdk_pixbuf_from_file: Update valgrind suppressions to match new code paths 2019-12-03 20:28:08 +02:00
Jonas Berlin
39c97e28f6 [ReviewFix] get_pixbuf_from_file: Free memory on error return 2019-12-03 20:27:31 +02:00
Jonas Berlin
364bce1ed0 Scale icons during loading to get best quality for e.g. vector images 2019-11-29 21:28:22 +02:00
Jonas Berlin
ab3b5c2805 Implement #392 2019-11-29 21:14:57 +02:00
Nikos Tsipinakis
9e29406bb5 Fix dead pango reference link in manpage 2019-08-22 12:58:29 +03:00
Nikos Tsipinakis
68daebb713
Merge pull request #656 from rootkiwi/master
Fix dead link to pango reference in dunstrc
2019-08-22 12:55:57 +03:00
rootkiwi
eddcd2bfdf Fix dead link to pango reference in dunstrc 2019-08-22 11:37:38 +02:00
Benedikt Heine
53e7f3d16a
Merge pull request #650 from tsipinakis/bugfix/parse-empty
option_parser: Fail early when parsing empty string
2019-08-10 20:06:11 +02:00
Nikos Tsipinakis
f37a5d1c64 option_parser: Fail early when parsing empty string
Sometimes these parse functions can have other side-effects such as the
sepcolor one which defaults to a custom color string if the value is
unknown. If the string is empty all of these functions should fail to
allow for the default to be used.

See #649 for details
2019-08-10 19:47:30 +03:00
Nikos Tsipinakis
13307d2b17
Merge pull request #647 from bebehei/issue-646-overflow-tests
Don't overflow when passing INT_MAX on DBus wire
2019-08-09 16:29:12 +03:00
Benedikt Heine
52a8489043 Don't overflow when passing INT_MAX on DBus wire 2019-08-09 14:41:37 +02:00
Nikos Tsipinakis
6c4eeda434 Start new release cycle 2019-07-03 10:02:21 +03:00
Nikos Tsipinakis
37474c127b Dunst v1.4.1 v1.4.1 2019-07-03 09:46:05 +03:00
Nikos Tsipinakis
7ca6a98238 Fix dunstify.d being left behind on clean 2019-07-03 09:29:03 +03:00
Nikos Tsipinakis
ac94eca79e Recheck fullscreen status on ConfigureNotify
IceWM does not send PropertyNotify when exiting fullscreen. As a
band-aid solution also re-check the fullscreen status on ConfigureNotify
events. We're receiving them already so a few extra checks should not be
noticeable in any case.

Fixes #613
2019-06-20 15:25:54 +03:00
Nikos Tsipinakis
69a682ce34 Fix call to draw when no notifications are available
Draw should not be called when there are no notifications in the queue.
This for unknown reasons causes a crash the next time we attempt to get
the currently active window with a BadValue error from
XGetWindowProperty.

Fixes #630.
2019-06-19 11:02:46 +03:00
Nikos Tsipinakis
700a3225f2 Increase notification character limit
Fixes #636
2019-06-18 14:16:32 +03:00
Nikos Tsipinakis
7fc23b23d0 Fix argument terminator handling in dunstify
`g_option_context_parse` which we use to parse command line arguments
leaves the argument terminator, "--", in the argv under specific
circumstances which can cause inconsistent results.

Credit to Opal Hart for reporting this.
2019-06-16 21:37:18 +03:00
Nikos Tsipinakis
264df67a63 Fix negative width being ignored
In `x_parse_geometry` we modified the global settings struct for
negative width instead of updating it in the struct that is currently
being constructed.

As a result the negative_width field was always false as it was being
overwritten by the struct assignment after the functions return.

Fixes #628
2019-05-02 12:34:25 +03:00
Nikos Tsipinakis
d6bd506669 Fix parsing of comments after a quoted string in the config
Quoted values can still have a trailing comment that we need to remove
before calling `add_value`. Otherwise, when trying to strip the quotes
from the value `string_strip_quotes` only looks at the end which
is inside the comment and so it won't find a matching end quote to
strip.

Fixes #626
2019-04-27 10:30:02 +03:00
Nikos Tsipinakis
6cab789154
Merge pull request #622 from dmgk/master
Make extract_urls regex more portable
2019-04-08 17:54:21 +03:00
Dmitri Goutnik
6e8de70c82 Make extract_urls regex more portable 2019-04-08 09:15:59 -05:00
Nikos Tsipinakis
dda26bfbe9 Fix dynamic width check
The width_set field is true if the width is set in the geometry setting,
in other words if a specific (or dynamic) width is set or we want the
notification to cover the whole screen.
In order to check if a specific width is chosen we need to also exclude
dynamic width, meaning the width field has to be non 0;

Fixes #614
2019-04-02 11:34:27 +03:00
Nikos Tsipinakis
c797b0e7b3 Start new release cycle 2019-03-30 19:13:37 +02:00
Nikos Tsipinakis
cf7dec2989 Dunst v1.4.0 v1.4.0 2019-03-30 18:47:06 +02:00
Nikos Tsipinakis
ec040f6865 Add more documentation about each rule item 2019-03-30 18:43:43 +02:00
Nikos Tsipinakis
b940b2703c Document {match,set}_transient 2019-03-30 18:43:43 +02:00
Nikos Tsipinakis
591c6f91f3
Merge pull request #608 from bebehei/xrandr-dpi
XRandR DPI Online Changes
2019-03-23 20:04:50 +02:00
Nikos Tsipinakis
1bc3237a35 Subscribe to PropertyChangeMask regardless of follow_mode
PropertyNotify events are used primarily to detect active screen changes
when follow mode is used but now we also need them to receive resource
manager events in order to update the dpi value.
2019-03-23 20:01:27 +02:00
Benedikt Heine
812d5a3b84 Replace the xresources DB on PropertyNotify
When changing values with xrdb on the command line, an XEvent is
triggered on the "RESOURCE_MANAGER" atom.

But xlib just doesn't care. XResourceManagerString() will still report
the old values. Also XrmGetDatabase() won't help out.

So, when we receive a PropertyNotify for the resource manager atom, we
have to manually query its contents, convert it to a DB and replace it
in the display object.

This allows, that any method just can call XrmGetDatabase() and get the
latest values.
2019-03-23 20:01:27 +02:00
Benedikt Heine
4b06d67605 Initialize xrm during init
Initializing xrm is required only once. Everything else would be
overhead.
2019-03-23 20:01:27 +02:00
Benedikt Heine
9961efd10c Copy the database from the display connection
This allows to update the DB on the xctx.dpy object. Crawling the string
from xctx.dpy will always return the xdefaults string, which represents
the defaults from the initialisation, but not with any other updates.
2019-03-23 20:01:27 +02:00
Benedikt Heine
e9e199c4ec Pass pointer to check_screen_event 2019-03-23 20:01:27 +02:00
Benedikt Heine
ca7234b1c8 Cache the Xft.dpi value outside
The Xft.dpi value is one way to set the dpi of the X11 display. Querying
this value requires much overhead. Therefore we have to cache this.

Previously we did just query it at the beginning and ignored further
changes.

As there is no native signal to catch a change in its xrdb value, we
have to rely on the root window's PropertyNotify event and filter there
the RESOURCE_MANAGER atom.

This will get hooked up later.
2019-03-23 20:01:27 +02:00