• Jonas Ådahl's avatar
    gdkwindow: Use toplevel for getting root cords in move_to_rect() · f6929cfe
    Jonas Ådahl authored
    The Wayland backend manages a set of fake root coordinate spaces, where
    each non-relative positioned toplevel (i.e. not popups, popovers,
    tooltips etc) make up the basis of separate fake root coordinate spaces.
    
    This means that the Wayland backend doesn't have the abilitiy get a
    proper root coordinate when querying on a non-toplevel GdkWindow. To
    avoid this issue, first find the toplevel, while translating the anchor
    rect coordinates so that they are in the toplevel window coordinate
    space. Then use this toplevel to translate the coordinates to root
    window coordinate space.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=769402
    f6929cfe