From f5be28d99aca5a71d4f60ec2ed52dca523b9eb97 Mon Sep 17 00:00:00 2001
From: Nolan Lawson <nolan@nolanlawson.com>
Date: Sun, 3 Feb 2019 14:01:45 -0800
Subject: [PATCH] fix: use intrinsicsize for images/videos (#935)

* fix: use intrinsicsize for images/videos

* add comment
---
 .../_components/dialog/components/MediaInDialog.html | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/routes/_components/dialog/components/MediaInDialog.html b/src/routes/_components/dialog/components/MediaInDialog.html
index 08b514c..2d9d822 100644
--- a/src/routes/_components/dialog/components/MediaInDialog.html
+++ b/src/routes/_components/dialog/components/MediaInDialog.html
@@ -5,6 +5,7 @@
     src={url}
     {poster}
     controls
+    {intrinsicsize}
     ref:video
   />
 {:elseif type === 'gifv'}
@@ -18,6 +19,7 @@
     loop
     webkit-playsinline
     playsinline
+    {intrinsicsize}
   />
 {:else}
   <img
@@ -25,6 +27,7 @@
     alt={description}
     title={description}
     src={url}
+    {intrinsicsize}
   />
 {/if}
 <style>
@@ -41,7 +44,14 @@
       url: ({ media }) => media.url,
       description: ({ media }) => media.description || '',
       poster: ({ media }) => media.poster,
-      static_url: ({ media }) => media.static_url
+      static_url: ({ media }) => media.static_url,
+      intrinsicsize: ({ media }) => {
+        if (media.meta && media.meta.original && media.meta.original.width && media.meta.original.height) {
+          let { width, height } = media.meta.original
+          return `${width} x ${height}`
+        }
+        return '' // pleroma does not give us original width/height
+      }
     },
     ondestroy () {
       if (this.refs.video && !this.refs.video.paused) {