picture: Set overflow to be hidden

The new content-fit property was wrongly suggesting to manually set
widgets' overflow property, but that property is not really intended to
be set by external code. This commit removes those suggestions and
directly set picture's overflow to be hidden.
This commit is contained in:
Marco Melorio 2022-07-16 01:31:19 +02:00
parent a08bc46936
commit f1faa71d6d
3 changed files with 5 additions and 10 deletions

View File

@ -1266,7 +1266,6 @@ Suspendisse feugiat quam quis dolor accumsan cursus.</property>
<object class="GtkPicture">
<property name="file">resource:///org/gtk/WidgetFactory4/sunset.jpg</property>
<property name="content-fit">cover</property>
<property name="overflow">hidden</property>
<child>
<object class="GtkDragSource">
<signal name="prepare" handler="on_picture_drag_prepare" swapped="no"/>

View File

@ -121,10 +121,9 @@ typedef enum
* content will appear as letterboxed if its aspect ratio is different
* from the allocation aspect ratio.
* @GTK_CONTENT_FIT_COVER: Cover the entire allocation, while taking
* the content aspect ratio in consideration. This can result in an overflow
* if the content aspect ratio is different from the allocation aspect ratio.
* For this reason, you may also want to set [property@Gtk.Widget:overflow]
* to %GTK_OVERFLOW_HIDDEN.
* the content aspect ratio in consideration. The resulting content
* will appear as clipped if its aspect ratio is different from the
* allocation aspect ratio.
* @GTK_CONTENT_FIT_SCALE_DOWN: The content is scaled down to fit the
* allocation, if needed, otherwise its original size is used.
*

View File

@ -474,6 +474,8 @@ gtk_picture_init (GtkPicture *self)
{
self->can_shrink = TRUE;
self->content_fit = GTK_CONTENT_FIT_CONTAIN;
gtk_widget_set_overflow (GTK_WIDGET (self), GTK_OVERFLOW_HIDDEN);
}
/**
@ -972,11 +974,6 @@ gtk_picture_get_can_shrink (GtkPicture *self)
* Sets how the content should be resized to fit the `GtkPicture`.
*
* See [enum@Gtk.ContentFit] for details.
*
* If you use `GTK_CONTENT_FIT_COVER`, you may also want to set the
* [property@Gtk.Widget:overflow] to `GTK_OVERFLOW_HIDDEN`, otherwise the
* paintable will overflow the widget allocation if the aspect ratio of the
* paintable is different from the one of the `GtkPicture` allocation.
*/
void
gtk_picture_set_content_fit (GtkPicture *self,