RFC : xdg_surface_present() look-and-feel and implementation

Manuel Bachmann manuel.bachmann at open.eurogiciel.org
Tue Jul 29 11:40:59 PDT 2014


Hi folks,

(This post follows a discussion which I will link at the end of the mail :
*)

I have been working on an implementation of xdg_surface_present() for some
time now ; here is a proposal with working code.

When creating a xdg_surface, the surface will not be mapped (i.e. shown) by
desktop-shell anymore. It will only be if xdg_surface_present() has been
called once.

If called twice, or more, the request will send an event to desktop-shell,
so it can display a notification. A red tooltip with the title of the
xdg_surface (xdg_surface_set_title()) will then appear on the right side of
the top panel. (Tooltips will stack from right to left. They won't hide the
launchers, although "invisible" tooltips really exist and will appear if
they get sufficient space).

When clicked, the tooltip will disappear, and the corresponding xdg_surface
is moved to the current workspace + put in foreground. (the tooltip also
ceases to exist if the shell surface is destroyed by any means).

Here is a video : http://www.youtube.com/watch?v=eI4Stmx9B54

The code can be found at
https://github.com/Tarnyko/weston-xdg_surface_present. The "test" branch
has the modifications to weston-simple-damage which will lead you the test
case (run "weston-simple-damage --verbose").

Would like some feedback on both the "look-and-feel" and the implementation
**. Thanks !


* :
http://lists.freedesktop.org/archives/wayland-devel/2014-July/016078.html

** main changes : new "desktop_shell_add_managed_surface" event and
"managed_surface" interface in desktop-shell.xml, new "panel_notifier"
widget, helper functions.
-- 
Regards,



*Manuel BACHMANN Tizen Project VANNES-FR*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20140729/79834295/attachment-0001.html>


More information about the wayland-devel mailing list