[gtk: 2/4] picture: Set overflow to be hidden
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk: 2/4] picture: Set overflow to be hidden
- Date: Sat, 16 Jul 2022 00:24:32 +0000 (UTC)
commit f1faa71d6d1ab640f3e5aebaaf767cb75b2f28af
Author: Marco Melorio <marco melorio protonmail com>
Date: Sat Jul 16 01:31:19 2022 +0200
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.
demos/widget-factory/widget-factory.ui | 1 -
gtk/gtkenums.h | 7 +++----
gtk/gtkpicture.c | 7 ++-----
3 files changed, 5 insertions(+), 10 deletions(-)
---
diff --git a/demos/widget-factory/widget-factory.ui b/demos/widget-factory/widget-factory.ui
index 015ff4c791..7f8c1699d8 100644
--- a/demos/widget-factory/widget-factory.ui
+++ b/demos/widget-factory/widget-factory.ui
@@ -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"/>
diff --git a/gtk/gtkenums.h b/gtk/gtkenums.h
index 44e246fc9e..89d8f5e4a0 100644
--- a/gtk/gtkenums.h
+++ b/gtk/gtkenums.h
@@ -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.
*
diff --git a/gtk/gtkpicture.c b/gtk/gtkpicture.c
index eaabda7c74..92a177df97 100644
--- a/gtk/gtkpicture.c
+++ b/gtk/gtkpicture.c
@@ -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,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]