Skip to content
  • Olivier Fourdan's avatar
    wayland: Avoid negative size constraints · dbd0923b
    Olivier Fourdan authored
    Setting the shadow width earlier as done with commit 4cb1b964 to address
    bug 771561 proved to cause unexpected side effects on size_allocate
    signal propagation.
    
    As the window is sized correctly earlier, the size_allocate signal is
    not emitted again in gtk_widget_size_allocate_with_baseline() which
    prevents clutter-gtk from relocating its child widget correctly.
    
    To avoid this issue, revert commit 4cb1b964 but make sure the values
    passed as min and max size is never negative in Wayland as this is a
    protocol error.
    
    With this, the min/max size will be wrong for a short amount of time,
    during the state transition, until the shadow width is updated from
    gdk_window_set_shadow_width().
    
    This approach is much safer and less intrusive than changing the
    size_allocate logic in gtk.
    
    This reverts commit 4cb1b964.
    
    Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=771915
    dbd0923b