macos: fix redisplay of GdkPopup

This broke recently during the configure cleanups and also needed to have
the tail directions fixed again.
This commit is contained in:
Christian Hergert 2022-02-28 02:10:30 -08:00
parent fc4d36e50a
commit 25b3bd64af
2 changed files with 5 additions and 3 deletions

View File

@ -87,6 +87,9 @@ gdk_macos_popup_surface_layout (GdkMacosPopupSurface *self,
gdk_surface_get_origin (GDK_SURFACE (self)->parent, &x, &y);
GDK_SURFACE (self)->x = final_rect.x;
GDK_SURFACE (self)->y = final_rect.y;
x += final_rect.x;
y += final_rect.y;
@ -391,9 +394,7 @@ _gdk_macos_popup_surface_reposition (GdkMacosPopupSurface *self)
{
g_return_if_fail (GDK_IS_MACOS_POPUP_SURFACE (self));
if (self->layout == NULL ||
!gdk_surface_get_mapped (GDK_SURFACE (self)) ||
GDK_SURFACE (self)->parent == NULL)
if (self->layout == NULL || GDK_SURFACE (self)->parent == NULL)
return;
gdk_macos_popup_surface_layout (self,

View File

@ -908,6 +908,7 @@ _gdk_macos_surface_show (GdkMacosSurface *self)
if (!was_mapped)
{
gdk_surface_set_is_mapped (GDK_SURFACE (self), TRUE);
gdk_surface_request_layout (GDK_SURFACE (self));
gdk_surface_thaw_updates (GDK_SURFACE (self));
}
}