On Fri, 18 Nov 2016 09:28:56 +0800 Jonas Ådahl <[email protected]> wrote:
> On Wed, Nov 16, 2016 at 10:23:59AM -0500, Mike Blumenkrantz wrote: > > some restrictions must be placed on this or else it becomes legal for > > the compositor to place popups in unexpected locations when sliding > > is allowed > > > > Signed-off-by: Mike Blumenkrantz <[email protected]> > > --- > > unstable/xdg-shell/xdg-shell-unstable-v6.xml | 6 ++++-- > > 1 file changed, 4 insertions(+), 2 deletions(-) > > > > diff --git a/unstable/xdg-shell/xdg-shell-unstable-v6.xml > > b/unstable/xdg-shell/xdg-shell-unstable-v6.xml > > index 6053e3c..30cdaeb 100644 > > --- a/unstable/xdg-shell/xdg-shell-unstable-v6.xml > > +++ b/unstable/xdg-shell/xdg-shell-unstable-v6.xml > > @@ -256,7 +256,8 @@ > > </entry> > > <entry name="slide_x" value="1"> > > <description summary="move along the x axis until unconstrained"> > > - Slide the surface along the x axis until it is no longer constrained. > > + Slide the surface along the x axis within the toplevel surface until > > it > > + is no longer constrained. > > This would break chained popup menus in GTK+. For example a menu chain > where eventually a menu now completely outside of the toplevel window > region hits the edge of monitor, and is supposed to slide (see > screenshot [0]). > > So I think we should just limit the way we can slide in relation to the > parent. Maybe we should rather put the limitations somewhere more > generic? I.e. a popup can only ever be positioned so that its window > geometry "touches" (where touches means that there will be no space in > between) its parent window geometry, or something like that? > > > Jonas > > > [0] https://people.freedesktop.org/~jadahl/menu-slide-outside-of-toplevel.png > Hm, while I strongly disagree with any application design that requires this level of submenu chaining, I can see why we might need to support at least basic submenu positioning outside the toplevel. I think changing "toplevel" to "parent" in my patch would address that sufficiently? > > > > First try to slide towards the direction of the gravity on the x axis > > until either the edge in the opposite direction of the gravity is > > @@ -271,7 +272,8 @@ > > </entry> > > <entry name="slide_y" value="2"> > > <description summary="move along the y axis until unconstrained"> > > - Slide the surface along the y axis until it is no longer constrained. > > + Slide the surface along the y axis within the toplevel surface until > > it > > + is no longer constrained. > > > > First try to slide towards the direction of the gravity on the y axis > > until either the edge in the opposite direction of the gravity is > > -- > > 2.5.5 > > > > _______________________________________________ > > wayland-devel mailing list > > [email protected] > > https://lists.freedesktop.org/mailman/listinfo/wayland-devel _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
