You are using an obsolete web browser, or you have the page styles (CSS) disabled. You'll be able to access this site, but only a visually simplified version.

GMail in Lancelot

Well, not GMail per-se, at least not yet, but there is now a mechanism in Lancelot that allows you to make plug-ins for the Messages and Contacts lists.

It is based on Plasma‘s data engines, so you’ll not need to learn anything new in order to extend Lancelot.

Obviously, not all data engines can be used from L since not all data engines provide the list data structure. At the moment, in order to use a data engine in Lancelot, it needs to have the following structure:

  • .metadata -> lancelot
    • version = 1.0
    • modelTitle = Title (optional)
    • modelIcon = someIcon (optional)
  • data -> title
  • data -> description
  • data -> icon

As you can see above, the main data source is named “data” and it contains three string lists (QStringList) named “title”, “description” and “icon” which contain, respectively, titles, descriptions and icons of the items that should be shown in Lancelot.

The Plasma::DataEngine – Lancelot::ActionListModel bridge is not finished yet, it’ll need to use Plasma::Service in order to notify the DataEngine that the user has clicked the item. When I finish the infrastructure, I’ll make an example GMail data engine and upload it to SVN. I don’t think I’ll bother making anything else, that is your job ;)

4 Comments

  1. Awesome! But shouldn’t that data come from akanodi, not separately configured?

    Comment by xian — 15 April 2009 @ 19:09 Reply to this comment

  2. @xian: Yes, when akonadi becomes used by kmail for messages, it will be the default data model in Lancelot.

    The same goes for Telepathy and Kopete.

    But, still, for those programs that don’t use akonadi, this will provide a way to support them in L.

    Comment by Ivan Čukić — 15 April 2009 @ 19:12 Reply to this comment

  3. Lancelot is so much awesomeness. It really has achieved what start menu/launcher things have been trying to do now for some years, making most of the stuff you use accessible without any faffing.

    I would use it for just about all of my needs if I could get used to pressing F5 instead of F2… now I just use it for the mouse based interaction not a KRunner replacement.

    …trying out alt-F5 has just made me realise something… Because I use pop-up on mouse-over Lancelot disappears when it loses focus which is what I want when using it with the mouse but it probably shouldn’t happen when I summon it with alt-F5. In particular I also use focus-follows mouse so any mouse movement (like brushing my trackpad) is likely to cause L to disappear. In contrast to this mercurial behaviour I have KWin set-up to keep KRunner on top I don’t lose it by accident (and skip taskbar so I can’t minimise it).

    Comment by maninalift — 15 April 2009 @ 21:21 Reply to this comment

  4. @maninalift: You can set Lancelot to open on Alt+F2.

    As for the second thing, I see your point, but I’m not sure what exactly I can do about that without introducing some unexpected side-effect.

    Comment by Ivan Čukić — 15 April 2009 @ 21:28 Reply to this comment

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.