notify-osd does not work with Metacity

Bug #1403583 reported by Dmitry Shachnev
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu GNOME Flashback
Fix Released
High
Unassigned
metacity (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

On Ubuntu 15.04 vivid, notifications (via notify-osd) do not work in GNOME Flashback (Metacity) session, but do work in GNOME Flashback (Compiz) session.

I believe it is a regression in recent Metacity versions, though cannot get it working even with older Metacity (3.12).

Related branches

Changed in ubuntu-gnome-flashback:
importance: Undecided → High
Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

Just found that notifications works if compositing-manager is disabled...

Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

Notify OSD is using many deprecated functions. Then there are other warnings. It might be good idea to fix warnings. Does someone still develop / maintain Notify OSD?

expose_handler function in bubble.c has wrong parameter... GdkEventExpose should be cairo_t.

Replacing gtk_widget_realize with gtk_widget_show in bubble.c made notifications work again. So maybe something has changed in GTK+ that prevents notifications to show up? But then why it works with other window managers except metacity?

Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

Just built metacity 2.34.13 and notifications does not work. So at least this is not regression in metacity.

Send for example 5 notifications:
notify-send "Message Title" "The message body is shown here"
Then run:
metacity --replace

Notifications will works. But when queue will be empty notifications will not work again.

Revision history for this message
Dmitry Shachnev (mitya57) wrote : Re: [Bug 1403583] Re: notify-osd does not work with Metacity

On Sat, Dec 20, 2014 at 5:36 AM, Alberts Muktupāvels
<email address hidden> wrote:
> Notify OSD is using many deprecated functions. Then there are other
> warnings. It might be good idea to fix warnings. Does someone still
> develop / maintain Notify OSD?

Not maintained specifically by anybody, but any member of
~indicator-applet-developers can approve merge proposals.

> expose_handler function in bubble.c has wrong parameter...
> GdkEventExpose should be cairo_t.

Should I file a merge proposal or will you do that?

Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

I created two merge proposals:
1) https://code.launchpad.net/~albertsmuktupavels/notify-osd/fix-deprecation-warnings/+merge/245267
2) https://code.launchpad.net/~albertsmuktupavels/notify-osd/some-improvements/+merge/245283

Changing gtk_widget_realize to gtk_widget_show does not sound right thing so I did not include it merge proposals.

Notify OSD works in my JHBuild session with GNOME 3.16.

Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

https://git.gnome.org/browse/metacity/tree/src/compositor/compositor-xrender.c#n2284

Changing to FALSE will fix invisible notifications. I don't see any regression, but I have no idea why it was needed or still is needed.

Changed in metacity (Ubuntu):
status: New → Confirmed
Revision history for this message
Dmitry Shachnev (mitya57) wrote :

Hi Alberts, I want to return to this bug.

You said that "Notify OSD works in my JHBuild session with GNOME 3.16". Does this mean that it will work with Gtk+ 3.16 (and thus we can bisect it and backport the needed fixes)? Or are there other components involved?

Also, if we don't manage to find the correct fix, can I apply one of two workarounds you suggested for Vivid (in either notify-osd or metacity)?

Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

Now it does not work in jhbuild too.... :(

Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

Ok, I might have fix for this... :)

Revision history for this message
Alberts Muktupāvels (muktupavels) wrote :

Please test! With this fix notify-osd works both in my jhbuild session and on vivid. If you will confirm that patch works for you I will push fix to upstream master too.

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

This bug was fixed in the package metacity - 1:3.14.3-1ubuntu5

---------------
metacity (1:3.14.3-1ubuntu5) vivid; urgency=medium

  * debian/patches/do_not_use_invalid_back_pixmap.patch:
    Don't use invalid back_pixmap. (LP: #1403583)
 -- Alberts Muktupavels <email address hidden> Fri, 20 Feb 2015 09:40:02 +0200

Changed in metacity (Ubuntu):
status: Confirmed → Fix Released
Changed in ubuntu-gnome-flashback:
status: New → Fix Released
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.