[Xfce4-commits] [apps/xfce4-notifyd] 11/24: panel-plugin: Distinguish "unread" and "unread while in do not disturb" states
noreply at xfce.org
noreply at xfce.org
Fri Sep 8 23:27:42 CEST 2017
This is an automated email from the git hooks/post-receive script.
o c h o s i p u s h e d a c o m m i t t o b r a n c h m a s t e r
in repository apps/xfce4-notifyd.
commit 936042e3883c46be3542a8630b31fa075a71c5ad
Author: Simon Steinbeiss <simon.steinbeiss at elfenbeinturm.at>
Date: Wed Aug 23 01:34:31 2017 +0200
panel-plugin: Distinguish "unread" and "unread while in do not disturb" states
---
icons/scalable/Makefile.am | 1 +
.../notification-disabled-new-symbolic.svg | 63 ++++++++++++++++++++++
panel-plugin/notification-plugin-log.c | 12 +++--
panel-plugin/notification-plugin.c | 14 +++--
4 files changed, 83 insertions(+), 7 deletions(-)
diff --git a/icons/scalable/Makefile.am b/icons/scalable/Makefile.am
index 970a55c..9ce6f49 100644
--- a/icons/scalable/Makefile.am
+++ b/icons/scalable/Makefile.am
@@ -3,6 +3,7 @@
iconsdir = $(datadir)/icons/hicolor/scalable/apps
icons_DATA = \
notification-disabled-symbolic.svg \
+ notification-disabled-new-symbolic.svg \
notification-new-symbolic.svg \
notification-symbolic.svg
diff --git a/icons/scalable/notification-disabled-new-symbolic.svg b/icons/scalable/notification-disabled-new-symbolic.svg
new file mode 100644
index 0000000..edca83f
--- /dev/null
+++ b/icons/scalable/notification-disabled-new-symbolic.svg
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ width="16"
+ height="16"
+ id="svg7384"
+ sodipodi:docname="notification-disabled-new-symbolic.svg"
+ inkscape:version="0.92.1 r15371">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1651"
+ inkscape:window-height="926"
+ id="namedview8"
+ showgrid="false"
+ inkscape:zoom="9.8333333"
+ inkscape:cx="-24.40678"
+ inkscape:cy="12"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="svg7384" />
+ <title
+ id="title9167">elementary Symbolic Icon Theme</title>
+ <metadata
+ id="metadata90">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title>elementary Symbolic Icon Theme</dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7386" />
+ <path
+ id="path3355"
+ d="m 7.5644919,1.7014656 c -1.142683,0.3676665 -2.1237693,1.2320849 -2.5976561,2.373047 0,0 -1.9146213,4.6200292 -3.6855469,4.5585932 -0.019301,0.0035 -0.03383,0.02032 -0.052734,0.02539 -0.078769,0.02104 -0.1487633,0.05436 -0.2167968,0.09961 -0.026525,0.01757 -0.05389,0.02981 -0.078125,0.05078 -0.085966,0.07418 -0.1604545,0.162944 -0.2070313,0.27539 -0.1590049,0.38387 0.022378,0.821465 0.40625,0.9804692 l 9.7011712,4.017577 c 0.383872,0.159006 0.81951,-0.02238 0.978516,-0.40625 0.04 [...]
+ style="color:#bebebe;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.4;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;s [...]
+ inkscape:connector-curvature="0" />
+ <path
+ style="color:#bebebe;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.4;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#009dff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.78124988;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-renderi [...]
+ id="path3009"
+ d="m 16.000039,4.0002938 a 4.0000001,4.0000002 0 0 1 -8.0000001,0 4.0000001,4.0000002 0 1 1 8.0000001,0 z"
+ class="error"
+ inkscape:connector-curvature="0" />
+</svg>
diff --git a/panel-plugin/notification-plugin-log.c b/panel-plugin/notification-plugin-log.c
index 1ab1220..e72354e 100644
--- a/panel-plugin/notification-plugin-log.c
+++ b/panel-plugin/notification-plugin-log.c
@@ -90,10 +90,6 @@ notification_plugin_menu_populate (NotificationPlugin *notification_plugin)
/* Clean up the list and re-fill it */
gtk_container_foreach (GTK_CONTAINER (menu), func, menu);
- /* Reset the notitication status icon since all items are now read */
- gtk_image_set_from_icon_name (GTK_IMAGE (notification_plugin->image),
- "notification-symbolic", GTK_ICON_SIZE_MENU);
-
notify_log = xfce_notify_log_get();
if (notify_log) {
@@ -203,6 +199,14 @@ G_GNUC_END_IGNORE_DEPRECATIONS
xfconf_g_property_bind (notification_plugin->channel, "/do-not-disturb", G_TYPE_BOOLEAN,
G_OBJECT (mi), "active");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
+
+ /* Reset the notification status icon since all items are now read */
+ if (xfconf_channel_get_bool (notification_plugin->channel, "/do-not-disturb", TRUE))
+ gtk_image_set_from_icon_name (GTK_IMAGE (notification_plugin->image),
+ "notification-disabled-symbolic", GTK_ICON_SIZE_MENU);
+ else
+ gtk_image_set_from_icon_name (GTK_IMAGE (notification_plugin->image),
+ "notification-symbolic", GTK_ICON_SIZE_MENU);
g_signal_connect (mi, "toggled",
G_CALLBACK (dnd_toggled_cb), notification_plugin);
gtk_widget_show (mi);
diff --git a/panel-plugin/notification-plugin.c b/panel-plugin/notification-plugin.c
index 5d43f3f..c657dec 100644
--- a/panel-plugin/notification-plugin.c
+++ b/panel-plugin/notification-plugin.c
@@ -213,8 +213,12 @@ notification_plugin_log_file_changed (GFileMonitor *monitor,
if (event_type == G_FILE_MONITOR_EVENT_CHANGES_DONE_HINT)
{
- gtk_image_set_from_icon_name (GTK_IMAGE (notification_plugin->image),
- "notification-new-symbolic", GTK_ICON_SIZE_MENU);
+ if (xfconf_channel_get_bool (notification_plugin->channel, "/do-not-disturb", TRUE))
+ gtk_image_set_from_icon_name (GTK_IMAGE (notification_plugin->image),
+ "notification-disabled-new-symbolic", GTK_ICON_SIZE_MENU);
+ else
+ gtk_image_set_from_icon_name (GTK_IMAGE (notification_plugin->image),
+ "notification-new-symbolic", GTK_ICON_SIZE_MENU);
}
}
@@ -243,7 +247,11 @@ notification_plugin_new (XfcePanelPlugin *panel_plugin)
xfce_panel_plugin_set_small (panel_plugin, TRUE);
notification_plugin->button = xfce_panel_create_toggle_button ();
gtk_widget_set_tooltip_text (GTK_WIDGET (notification_plugin->button), _("Notifications"));
- notification_plugin->image = gtk_image_new_from_icon_name ("notification-symbolic", GTK_ICON_SIZE_MENU);
+ if (xfconf_channel_get_bool (notification_plugin->channel, "/do-not-disturb", TRUE))
+ notification_plugin->image = gtk_image_new_from_icon_name ("notification-disabled-symbolic", GTK_ICON_SIZE_MENU);
+ else
+ notification_plugin->image = gtk_image_new_from_icon_name ("notification-symbolic", GTK_ICON_SIZE_MENU);
+
gtk_container_add (GTK_CONTAINER (notification_plugin->button), notification_plugin->image);
gtk_container_add (GTK_CONTAINER (panel_plugin), notification_plugin->button);
gtk_widget_show_all (GTK_WIDGET (notification_plugin->button));
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Xfce4-commits
mailing list