notification summary doesn't change for synchronous messages

Bug #404658 reported by Iain Buclaw
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OEM Priority Project
Fix Released
Critical
Ara Pulido
Precise
Fix Released
Critical
Ara Pulido
notify-osd (Ubuntu)
Fix Released
Low
Unassigned
Precise
Fix Released
High
Unassigned

Bug Description

Precise SRU info:

[Impact]

 * The patch provide a fix to provide the "x-canonical-private-synchronous" to work with notifications different with LAYOUT_ICON_INDICATOR layout. Currently the "x-canonical-private-synchronous" interface only provide this layout to support brightness and volume control.

[Test Case]

 * This patch make following command behave correctly.

#notify-send -h string:x-canonical-private-synchronous:1 "wireless" "disable" -i notification-network-wireless-none ; sleep 1 ; notify-send -h string:x-canonical-private-synchronous:1 "bluetooth" "enable" -i bluetooth

In current implementation, both Summary and Body text didn't get updated.

[Regression Potential]

 * The risk should be minimal, the patch should only affect "x-canonical-private-synchronous" interface. This interface is only used in brightness and volume hotkey, and layout is different.

 * The patch is already tested in OEM projects.

[Other Info]

*** Original bug description:

When you send a notification in Synchronous with another, the both Summary and Body text doesn't get updated.

As an example:

while true; do
    notify-send "first title" "first subtitle" -i dialog-info -h string:x-canonical-private-synchronous:test
    sleep 1
    notify-send "second title" "second subtitle" -i dialog-error -h string:x-canonical-private-synchronous:test
    sleep 1
done

If you run the above, what you should see is the Icon changing, but the summary/body text staying the same.
Is this expected behaviour from the libnotify library? Or is this an overlooked feature?

Regards
Iain

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.04
DISTRIB_CODENAME=jaunty
DISTRIB_DESCRIPTION="Ubuntu 9.04"

Package: libnotify-bin
Priority: optional
Section: universe/utils
Installed-Size: 72
Maintainer: Ubuntu Core Developers <email address hidden>
Original-Maintainer: Andre Filipe de Assuncao e Brito <email address hidden>
Architecture: amd64
Source: libnotify
Version: 0.4.5-0ubuntu1
Depends: libc6 (>= 2.3.4), libglib2.0-0 (>= 2.12.0), libnotify1 (>= 0.4.4), libnotify1-gtk2.10
Filename: pool/universe/libn/libnotify/libnotify-bin_0.4.5-0ubuntu1_amd64.deb
Size: 7248
MD5sum: 332bacf4fad51bb2a32d17ed08ae66bc
SHA1: ecbcfde7197c8934b7883a8d561ba02ba502adf2
SHA256: 15e1b7d9858a1c89f7bd826b10b16e2c0ee305e4268bd9bd0b1be3469eb9aaf9
Description: sends desktop notifications to a notification daemon
 A library that sends desktop notifications to a notification daemon, as
 defined in the Desktop Notifications spec. These notifications can be
 used to inform the user about an event or display some form of
 information without getting in the user's way.
 .
 This package contains the binary which sends the notification.
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu
Task: xubuntu-desktop

Related branches

Iain Buclaw (iainb)
description: updated
Iain Buclaw (iainb)
description: updated
summary: - notification title doesn't change for synchronous messages
+ notification summary doesn't change for synchronous messages
Revision history for this message
A. Walton (awalton) wrote :

It has nothing at all to do with libnotify, and I have no idea what the supposed behavior for this should be. The "synchronous" hint given is entirely private to Canonical's Notify-OSD. The standard way to update a notification (notify_notification_update() then resend the notification) isn't supported by notify-send.

affects: libnotify (Ubuntu) → notify-osd (Ubuntu)
Changed in notify-osd (Ubuntu):
importance: Undecided → Low
Revision history for this message
Matthew Paul Thomas (mpt) wrote :

None of the synchronous notifications use text, so how Notify OSD handles text of synchronous notifications is undefined. It shouldn't crash or hang, but beyond that it doesn't need to behave in any particular way.

Changed in notify-osd (Ubuntu):
status: New → Invalid
Tim Chen (timchen119)
Changed in notify-osd (Ubuntu):
status: Invalid → Confirmed
Revision history for this message
Tim Chen (timchen119) wrote :

Patch included,
the patch provide a fix to provide the "x-canonical-private-synchronous" to work with notifications different with LAYOUT_ICON_INDICATOR layout. Currently the "x-canonical-private-synchronous" interface only provide this layout to support brightness and volume control.

This patch make following command behave correctly.
#notify-send "RF-status" "enabled" -h string:x-canonical-private-synchronous:1 -h string:image_path:/tmp/test.jpg

Canonical OEM projects need this function to

* enable OSD for enable/disable WiFi or bluetooth with a hotkey
* enable OSD for display switching with a hotkey

For more details, see:

https://bugs.launchpad.net/bugs/1213507
https://bugs.launchpad.net/bugs/1213508

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "notify-osd-lp404658.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Ara Pulido (ara)
Changed in oem-priority:
assignee: nobody → Ara Pulido (apulido)
Tim Chen (timchen119)
description: updated
Revision history for this message
Mirco Müller (macslow) wrote :

I commented on larsu's patch.

The correct way to address this - staying within notify-osd's design-guidelines - splits up in two alternatives...

1.) If it needs to be a synchonous notification:
 * use either the sync-icon-only or icon-value variant of a synchonous notification
 * ask Design for a dedicated symbolic bluetooth- and wifi-icon that's within the style of notify-osd-icons for enabled and disabled states
 * add these icons to lp:ubuntu/notify-osd-icons
 * see the sync-icon-only or icon-value examples of notify-osd trunk

2.) If it needs to have summary- and body-text:
 * use the icon-summary variant
 * to make it skip ahead in the queue set the urgency to "critical"
 * see the icon-smmary example of notify-osd trunk

I can provide screencasts of both alternatives later today.

Revision history for this message
Mirco Müller (macslow) wrote :

Here's the promised screencast...

Revision history for this message
Ara Pulido (ara) wrote :

mpt's comment (https://bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/404658/comments/2) says that "None of the synchronous notifications use text", which is true for current notifications, but looking at the specification (https://wiki.ubuntu.com/NotifyOSD) I haven't found a requirements that Synchronous notification should never have text. In which case, we need to define a behaviour for sync notifications that do.

Revision history for this message
Tim Chen (timchen119) wrote :

Switch display

Revision history for this message
Tim Chen (timchen119) wrote :

Radio enable/disable

Revision history for this message
Matthew Paul Thomas (mpt) wrote :

I'd quibble with the wording and spelling (I'd prefer "Wi-Fi is off" rather than "WiFi disabled", etc), but I like the general approach here. It just so happened that none of the original use cases for synchronous notifications involved text. But since text is possible, it should be updateable in the same way as it is for asynchronous notifications.

Changed in notify-osd:
assignee: nobody → Matthew Paul Thomas (mpt)
Jason Yen (jasonyen)
Changed in oem-priority:
status: New → In Progress
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:notify-osd at revision 475, scheduled for release in notify-osd, milestone Unknown

Changed in notify-osd:
status: New → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package notify-osd - 0.9.35+14.04.20131209-0ubuntu1

---------------
notify-osd (0.9.35+14.04.20131209-0ubuntu1) trusty; urgency=low

  [ Iain Lane ]
  * Clear the reference when we g_source_remove the timers so we don't
    attempt to remove them again in the dispose function.

  [ Ubuntu daily release ]
  * Automatic snapshot from revision 478
 -- Ubuntu daily release <email address hidden> Mon, 09 Dec 2013 17:23:36 +0000

Changed in notify-osd (Ubuntu):
status: Confirmed → Fix Released
Michał Sawicz (saviq)
Changed in notify-osd:
status: Fix Committed → Fix Released
Ara Pulido (ara)
Changed in oem-priority:
importance: Undecided → Critical
Changed in notify-osd (Ubuntu Precise):
status: New → In Progress
importance: Undecided → High
Revision history for this message
Chris Halse Rogers (raof) wrote : Please test proposed package

Hello Iain, or anyone else affected,

Accepted notify-osd into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/notify-osd/0.9.34-0ubuntu2.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in notify-osd (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Tim Chen (timchen119) wrote :

works fine to me with notify-osd/0.9.34-0ubuntu2.1 on Precise.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Colin Watson (cjwatson) wrote : Update Released

The verification of the Stable Release Update for notify-osd has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package notify-osd - 0.9.34-0ubuntu2.1

---------------
notify-osd (0.9.34-0ubuntu2.1) precise; urgency=medium

  * src/stack.c: Update contents of a synchronous notification when
    replacing it, thanks Lars! (lp: #404658)
 -- Sebastien Bacher <email address hidden> Wed, 15 Jan 2014 15:17:59 +0100

Changed in notify-osd (Ubuntu Precise):
status: Fix Committed → Fix Released
Ara Pulido (ara)
Changed in oem-priority:
status: In Progress → Fix Released
no longer affects: notify-osd
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.