浏览代码

add support for gifs in galleries. (#744)

mikupls 2 年之前
父节点
当前提交
bf19ff513f
共有 1 个文件被更改,包括 8 次插入1 次删除
  1. 8 1
      src/utils.rs

+ 8 - 1
src/utils.rs

@@ -204,10 +204,17 @@ impl GalleryMedia {
 				// For each image in gallery
 				// For each image in gallery
 				let media_id = item["media_id"].as_str().unwrap_or_default();
 				let media_id = item["media_id"].as_str().unwrap_or_default();
 				let image = &metadata[media_id]["s"];
 				let image = &metadata[media_id]["s"];
+				let image_type = &metadata[media_id]["m"];
+
+				let url = if image_type == "image/gif" {
+					image["gif"].as_str().unwrap_or_default()
+				} else {
+					image["u"].as_str().unwrap_or_default()
+				};
 
 
 				// Construct gallery items
 				// Construct gallery items
 				Self {
 				Self {
-					url: format_url(image["u"].as_str().unwrap_or_default()),
+					url: format_url(url),
 					width: image["x"].as_i64().unwrap_or_default(),
 					width: image["x"].as_i64().unwrap_or_default(),
 					height: image["y"].as_i64().unwrap_or_default(),
 					height: image["y"].as_i64().unwrap_or_default(),
 					caption: item["caption"].as_str().unwrap_or_default().to_string(),
 					caption: item["caption"].as_str().unwrap_or_default().to_string(),