2016-02-03 11:07 GMT+02:00 Jonas Ådahl <jad...@gmail.com>: > On Wed, Feb 03, 2016 at 11:02:14AM +0200, Giulio Camuffo wrote: >> 2016-02-03 11:00 GMT+02:00 Jasper St. Pierre <jstpie...@mecheye.net>: >> > No? The parent is the surface the tooltip is laid on top of. >> >> So where do the contents of the tooltip come from? > > The tooltip is created from an xdg_surface. As of patch 1/3 of the > series this patch replies to, each "role" (xdg_toplevel, xdg_popup and > xdg_tooltip) is created from a xdg_surface object which contains the > common functionality needed by all xdg_surface based roles. > > So its: > > Create a xdg_surface A from a wl_surface 1. > Create a xdg_toplevel from a xdg_surface A. > > Create a xdg_surface B from a wl_surface 2. > Create a xdg_tooltip from a xdg_surface B passing the xdg_surface A as > the parent. > > The tooltip is backed by wl_surface 2, the toplevel is backed by > wl_surface 1.
Right, sorry. I've been out of the loop for a bit and i forgot that the requests have an implicit 'this' argument. > > Jonas > >> >> > >> > On Wed, Feb 3, 2016 at 12:59 AM, Giulio Camuffo <giuliocamu...@gmail.com> >> > wrote: >> >> 2016-02-03 10:39 GMT+02:00 Jonas Ådahl <jad...@gmail.com>: >> >>> An xdg_tooltip is a new window type used to implement tooltip like >> >>> surfaces. See the interface documentation for details. >> >>> >> >>> Signed-off-by: Jonas Ådahl <jad...@gmail.com> >> >>> --- >> >>> >> >>> Changes since v1: >> >>> >> >>> Various wording changes as suggested by Mike. >> >>> >> >>> Added missing version attribute and <description/>. >> >>> >> >>> >> >>> unstable/xdg-shell/xdg-shell-unstable-v6.xml | 41 >> >>> ++++++++++++++++++++++++++++ >> >>> 1 file changed, 41 insertions(+) >> >>> >> >>> diff --git a/unstable/xdg-shell/xdg-shell-unstable-v6.xml >> >>> b/unstable/xdg-shell/xdg-shell-unstable-v6.xml >> >>> index f2eba64..a164bd6 100644 >> >>> --- a/unstable/xdg-shell/xdg-shell-unstable-v6.xml >> >>> +++ b/unstable/xdg-shell/xdg-shell-unstable-v6.xml >> >>> @@ -168,6 +168,20 @@ >> >>> <arg name="y" type="int"/> >> >>> </request> >> >>> >> >>> + <request name="get_tooltip"> >> >>> + <description summary="assign the xdg_tooltip surface role"> >> >>> + This creates an xdg_tooltip for the given xdg_surface and gives >> >>> the >> >>> + associated wl_surface the xdg_tooltip role. >> >>> + >> >>> + See the documentation of xdg_tooltip for more details about what >> >>> an >> >>> + xdg_tooltip is and how it is used. >> >>> + </description> >> >>> + <arg name="id" type="new_id" interface="zxdg_tooltip_v6"/> >> >>> + <arg name="parent" type="object" interface="zxdg_surface_v6"/> >> >>> + <arg name="x" type="int"/> >> >>> + <arg name="y" type="int"/> >> >>> + </request> >> >> >> >> Hi, I have just a comment here: >> >> >> >> I understand that 'parent' here is the actual tooltip surface, right? >> >> The description of the zxdg_tooltip_v6 interface below uses parent to >> >> refer to another surface, and that's i suppose the surface set with >> >> xdg_surface.set_parent(), right? I find that confusing, i would rename >> >> 'parent' in get_tooltip to 'surface', and maybe clarify in the >> >> description what is the actual parent. >> >> >> >> >> >> Cheers, >> >> Giulio >> >> >> >> >> >>> + >> >>> <request name="set_window_geometry"> >> >>> <description summary="set the new window geometry"> >> >>> The window geometry of a surface is its "visible bounds" from the >> >>> @@ -650,4 +664,31 @@ >> >>> >> >>> </interface> >> >>> >> >>> + <interface name="zxdg_tooltip_v6" version="1"> >> >>> + <description summary="tooltip surface"> >> >>> + This interface defines an xdg_tooltip role that provides >> >>> functionality >> >>> + related to tooltip like surfaces. >> >>> + >> >>> + An xdg_tooltip is a temporary surface which is displayed over its >> >>> parent >> >>> + xdg_surface. The last-created xdg_tooltip surface will always be >> >>> the >> >>> + top-most child of the parent xdg_surface. >> >>> + >> >>> + The parent surface must either have the surface role xdg_toplevel, >> >>> + xdg_popup or xdg_tooltip. >> >>> + >> >>> + An xdg_tooltip does not take an active grab while mapped. >> >>> xdg_tooltip >> >>> + surfaces are either directly unmapped by clients using the >> >>> + xdg_tooltip.destroy request or indirectly unmapped when their >> >>> parent >> >>> + surface is unmapped. >> >>> + >> >>> + An xdg_tooltip obeys normal input region semantics. >> >>> + </description> >> >>> + >> >>> + <request name="destroy" type="destructor"> >> >>> + <description summary="destroy the xdg_tooltip object"> >> >>> + Unmap the tooltip surface and destroy the object. >> >>> + </description> >> >>> + </request> >> >>> + </interface> >> >>> + >> >>> </protocol> >> >>> -- >> >>> 2.4.3 >> >>> >> >>> _______________________________________________ >> >>> wayland-devel mailing list >> >>> wayland-devel@lists.freedesktop.org >> >>> http://lists.freedesktop.org/mailman/listinfo/wayland-devel >> > >> > >> > >> > -- >> > Jasper _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel