<html>
    <head>
      <base href="https://bugzilla.gnome.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - gtk_window_move() unreliable in Wayland?"
   href="https://bugzilla.gnome.org/show_bug.cgi?id=757558#c6">Comment # 6</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - gtk_window_move() unreliable in Wayland?"
   href="https://bugzilla.gnome.org/show_bug.cgi?id=757558">bug 757558</a>
              from <span class="vcard"><a href="page.cgi?id=describeuser.html&login=carlosg%40gnome.org" title="Carlos Garnacho <carlosg@gnome.org>"> <span class="fn">Carlos Garnacho</span></a>
</span></b>
        <pre>(In reply to Milan Crha from <a href="show_bug.cgi?id=757558#c5">comment #5</a>)
<span class="quote">> Sure, for the emoticon it's created here:
> <a href="https://git.gnome.org/browse/evolution/tree/e-util/e-emoticon-tool-button">https://git.gnome.org/browse/evolution/tree/e-util/e-emoticon-tool-button</a>.
> c#n573
> and repositioned here:
> <a href="https://git.gnome.org/browse/evolution/tree/e-util/e-emoticon-tool-button">https://git.gnome.org/browse/evolution/tree/e-util/e-emoticon-tool-button</a>.
> c#n124

> I compared the code with the one for GtkComboBox and it seems to me it's
> pretty much the same, except we hold the popup window for the whole lifetime
> of the widget, while GtkComboBox seems to build and destroy the popup on
> demand.

> Please note that the X11 works properly, with the same code in the evolution.</span >

Thanks!

I see that you're setting the transient_for on the popup conditionally around
<a href="https://git.gnome.org/browse/evolution/tree/e-util/e-emoticon-tool-button.c#n581">https://git.gnome.org/browse/evolution/tree/e-util/e-emoticon-tool-button.c#n581</a>
 . At that time the toplevel will still be NULL, so that if() is never stepped
in.

The transient_for window is essential for popups to appear properly positioned
in wayland, so that needs to be done at some point when the button has a
toplevel, maybe hierarchy_changed(), or before showing.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>