[gitg/mime-type] default to text diff if mime type detection fails




commit 1bb7cfb4c3e11a3fd6e13d5189c58186bdc342a7
Author: Alberto Fanjul <albertofanjul gmail com>
Date:   Tue Jan 25 22:22:48 2022 +0100

    default to text diff if mime type detection fails

 libgitg/gitg-diff-view.vala | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/libgitg/gitg-diff-view.vala b/libgitg/gitg-diff-view.vala
index 00b125ed..111b2643 100644
--- a/libgitg/gitg-diff-view.vala
+++ b/libgitg/gitg-diff-view.vala
@@ -823,15 +823,20 @@ public class Gitg.DiffView : Gtk.Grid
                                                mime_type_for_image = 
ContentType.get_mime_type(info.new_file_content_type);
                                        }
 
+                                       bool can_diff_as_image = mime_type_for_image != null && 
s_image_mime_types.contains(mime_type_for_image);
                                        bool can_diff_as_text = ContentType.is_mime_type(mime_type_for_image, 
"text/plain");
 
                                        current_file = new Gitg.DiffViewFile(info);
 
-                                       if (mime_type_for_image != null
-                                               && s_image_mime_types.contains(mime_type_for_image))
+                                       if (can_diff_as_image)
                                        {
                                                current_file.add_image_renderer();
                                        }
+                                       if (!can_diff_as_image && !current_is_binary && !can_diff_as_text)
+                                       {
+                                                       //force diff as text if no other diff is possible
+                                                       can_diff_as_text = true;
+                                       }
                                        if (can_diff_as_text)
                                        {
                                                current_file.add_text_renderer(handle_selection);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]