aboutsummaryrefslogtreecommitdiffstats
path: root/e-util
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2012-06-18 21:34:33 +0800
committerMilan Crha <mcrha@redhat.com>2012-06-18 21:35:44 +0800
commit6c05b09be16ac8eceb17653c3c26c0c6f963ef10 (patch)
tree5bb22771cf05419f851373ee43b1ad39a0dcfeaa /e-util
parente045e6f12324e1063a87488ac298fd23affea581 (diff)
downloadgsoc2013-evolution-6c05b09be16ac8eceb17653c3c26c0c6f963ef10.tar
gsoc2013-evolution-6c05b09be16ac8eceb17653c3c26c0c6f963ef10.tar.gz
gsoc2013-evolution-6c05b09be16ac8eceb17653c3c26c0c6f963ef10.tar.bz2
gsoc2013-evolution-6c05b09be16ac8eceb17653c3c26c0c6f963ef10.tar.lz
gsoc2013-evolution-6c05b09be16ac8eceb17653c3c26c0c6f963ef10.tar.xz
gsoc2013-evolution-6c05b09be16ac8eceb17653c3c26c0c6f963ef10.tar.zst
gsoc2013-evolution-6c05b09be16ac8eceb17653c3c26c0c6f963ef10.zip
Do not call g_object_notify() when property didn't change
Diffstat (limited to 'e-util')
-rw-r--r--e-util/e-activity.c18
-rw-r--r--e-util/e-ui-manager.c3
2 files changed, 21 insertions, 0 deletions
diff --git a/e-util/e-activity.c b/e-util/e-activity.c
index ae34366393..cd1c5699b2 100644
--- a/e-util/e-activity.c
+++ b/e-util/e-activity.c
@@ -394,6 +394,9 @@ e_activity_set_alert_sink (EActivity *activity,
{
g_return_if_fail (E_IS_ACTIVITY (activity));
+ if (activity->priv->alert_sink == alert_sink)
+ return;
+
if (alert_sink != NULL) {
g_return_if_fail (E_IS_ALERT_SINK (alert_sink));
g_object_ref (alert_sink);
@@ -421,6 +424,9 @@ e_activity_set_cancellable (EActivity *activity,
{
g_return_if_fail (E_IS_ACTIVITY (activity));
+ if (activity->priv->cancellable == cancellable)
+ return;
+
if (cancellable != NULL) {
g_return_if_fail (G_IS_CANCELLABLE (cancellable));
g_object_ref (cancellable);
@@ -459,6 +465,9 @@ e_activity_set_icon_name (EActivity *activity,
{
g_return_if_fail (E_IS_ACTIVITY (activity));
+ if (g_strcmp0 (activity->priv->icon_name, icon_name) == 0)
+ return;
+
g_free (activity->priv->icon_name);
activity->priv->icon_name = g_strdup (icon_name);
@@ -479,6 +488,9 @@ e_activity_set_percent (EActivity *activity,
{
g_return_if_fail (E_IS_ACTIVITY (activity));
+ if (activity->priv->percent == percent)
+ return;
+
activity->priv->percent = percent;
g_object_notify (G_OBJECT (activity), "percent");
@@ -498,6 +510,9 @@ e_activity_set_state (EActivity *activity,
{
g_return_if_fail (E_IS_ACTIVITY (activity));
+ if (activity->priv->state == state)
+ return;
+
activity->priv->state = state;
g_object_notify (G_OBJECT (activity), "state");
@@ -517,6 +532,9 @@ e_activity_set_text (EActivity *activity,
{
g_return_if_fail (E_IS_ACTIVITY (activity));
+ if (g_strcmp0 (activity->priv->text, text) == 0)
+ return;
+
g_free (activity->priv->text);
activity->priv->text = g_strdup (text);
diff --git a/e-util/e-ui-manager.c b/e-util/e-ui-manager.c
index 98fab98ce5..928697606a 100644
--- a/e-util/e-ui-manager.c
+++ b/e-util/e-ui-manager.c
@@ -213,6 +213,9 @@ e_ui_manager_set_express_mode (EUIManager *ui_manager,
{
g_return_if_fail (E_IS_UI_MANAGER (ui_manager));
+ if ((ui_manager->priv->express_mode ? 1 : 0) == (express_mode ? 1 : 0))
+ return;
+
ui_manager->priv->express_mode = express_mode;
g_object_notify (G_OBJECT (ui_manager), "express-mode");