Signal for when launcher entry quicklist has been shown?

Asked by Andrew on 2011-05-23

I was looking at the documentation to develop a python quicklist here:
https://wiki.edubuntu.org/Unity/LauncherAPI

I am trying to determine if there is a signal to get when the user right-clicks the desktop and the quicklist is shown so that I can dynamically build the quicklist lazily (when shown) instead of having to update it on a background thread.

It appears that no signals are fired when the quicklist is shown. Is there one that I am missing? Otherwise I will turn this into a bug (request for enhancement) so that it can be done.

Question information

Language:
English Edit question
Status:
Expired
For:
Unity Edit question
Assignee:
No assignee Edit question
Last query:
2011-05-23
Last reply:
2011-06-08
Andrew (andrew-rw-robinson) said : #1

Code I used to try to find a signal that would fire:

#!/usr/bin/env python2.7

import sys, os
from gi.repository import Unity, Dbusmenu, GObject

if __name__ == "__main__":
  loop = GObject.MainLoop()

  launcher = Unity.LauncherEntry.get_for_desktop_file("/home/anrobins/.local/share/applications/test.desktop")
  quicklist = Dbusmenu.Menuitem.new()

  def on_subitem_activated(*args):
    print "on_item_activated (child)"

  def on_realized(*args):
    print "on_realized"
  def on_show_to_user(*args):
    print "on_show_to_user"
  def on_event(*args):
    print "on_event"
  def on_property_changed(*args):
    print "on_property_changed"
  def on_about_to_show(*args):
    print "on_about_to_show"
  def on_child_removed(*args):
    print "on_child_removed"
  def on_child_added(*args):
    print "on_child_added"
  def on_item_activated(*args):
    print "on_item_activated"
  def on_child_moved(*args):
    print "on_child_moved"

  test_menu_item = Dbusmenu.Menuitem.new()
  test_menu_item.property_set (Dbusmenu.MENUITEM_PROP_LABEL, "Test menu from python")
  test_menu_item.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
  test_menu_item.connect ("item-activated", on_subitem_activated, None)

  quicklist.child_append(test_menu_item)

  #menu_item_to_connect = test_menu_item
  menu_item_to_connect = quicklist

  menu_item_to_connect.connect("realized", on_realized, None)
  menu_item_to_connect.connect("show-to-user", on_show_to_user, None)
  menu_item_to_connect.connect("event", on_event, None)
  menu_item_to_connect.connect("property-changed", on_property_changed, None)
  menu_item_to_connect.connect("about-to-show", on_about_to_show, None)
  menu_item_to_connect.connect("child-removed", on_child_removed, None)
  menu_item_to_connect.connect("child-added", on_child_added, None)
  menu_item_to_connect.connect("item-activated", on_item_activated, None)
  menu_item_to_connect.connect("child-moved", on_child_moved, None)

  launcher.set_property("quicklist", quicklist)

  loop.run()

Launchpad Janitor (janitor) said : #2

This question was expired because it remained in the 'Open' state without activity for the last 15 days.