summaryrefslogtreecommitdiff
path: root/gtk/gtkcssimage.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2017-01-13 03:28:34 +0100
committerBenjamin Otte <otte@redhat.com>2017-01-13 03:38:36 +0100
commita06b1ea1baecf6f0211726e901af93995f01a923 (patch)
tree4efa20db1b6fd372ab7113cb5968e7336f42e06f /gtk/gtkcssimage.c
parentb58de2d16cbb1b4e8fbdb6aac9d73deb887650e9 (diff)
downloadgtk+-a06b1ea1baecf6f0211726e901af93995f01a923.tar.gz
cssimage: Scale images to contain, not cover
Images with just an aspect ratio, but without a size, should be scaled to be fully visible in the given area. But we scaled them to completely cover the given area, which made them partially invisible. Reftest included.
Diffstat (limited to 'gtk/gtkcssimage.c')
-rw-r--r--gtk/gtkcssimage.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gtk/gtkcssimage.c b/gtk/gtkcssimage.c
index 29d9959d8b..822ba4726f 100644
--- a/gtk/gtkcssimage.c
+++ b/gtk/gtkcssimage.c
@@ -358,13 +358,13 @@ _gtk_css_image_get_concrete_size (GtkCssImage *image,
{
if (image_aspect * default_height > default_width)
{
- *concrete_width = default_height * image_aspect;
- *concrete_height = default_height;
+ *concrete_width = default_width;
+ *concrete_height = default_width / image_aspect;
}
else
{
- *concrete_width = default_width;
- *concrete_height = default_width / image_aspect;
+ *concrete_width = default_height * image_aspect;
+ *concrete_height = default_height;
}
}
else