diff options
Diffstat (limited to 'nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch')
-rw-r--r-- | nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch new file mode 100644 index 000000000000..85534aaf4c60 --- /dev/null +++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch @@ -0,0 +1,55 @@ +From 9e61e9493e78b83b9599886561ee596c096030ed Mon Sep 17 00:00:00 2001 +From: Bobby Rong <rjl931189261@126.com> +Date: Thu, 29 Jul 2021 13:57:21 +0800 +Subject: [PATCH] Partly revert "Fix Warnings in Vala Code (#600)" + +This partly reverts commit 9477c24201d3c9c3c7bcc650e0290daa0ee1ab21. +--- + src/MessageList/MessageListItem.vala | 27 ++++++++++++++++++++++++++- + 1 file changed, 26 insertions(+), 1 deletion(-) + +diff --git a/src/MessageList/MessageListItem.vala b/src/MessageList/MessageListItem.vala +index 96b61027..a7ef8f9e 100644 +--- a/src/MessageList/MessageListItem.vala ++++ b/src/MessageList/MessageListItem.vala +@@ -290,7 +290,7 @@ public class Mail.MessageListItem : Gtk.ListBoxRow { + expanded = false; + show_all (); + +- avatar.set_loadable_icon (new GravatarIcon (parsed_address, get_style_context ().get_scale ())); ++ download_gravatar.begin (parsed_address, avatar.size); + + /* Override default handler to stop event propagation. Otherwise clicking the menu will + expand or collapse the MessageListItem. */ +@@ -348,6 +348,31 @@ public class Mail.MessageListItem : Gtk.ListBoxRow { + }); + } + ++ private async void download_gravatar (string address, int size) { ++ if (avatars[address] == null) { ++ var uri = "https://secure.gravatar.com/avatar/%s?d=404&s=%d".printf ( ++ Checksum.compute_for_string (ChecksumType.MD5, address.strip ().down ()), ++ size * get_style_context ().get_scale () ++ ); ++ ++ var server_file = File.new_for_uri (uri); ++ var path = Path.build_filename (Environment.get_tmp_dir (), server_file.get_basename ()); ++ var local_file = File.new_for_path (path); ++ ++ try { ++ yield server_file.copy_async (local_file, FileCopyFlags.OVERWRITE, Priority.DEFAULT, null); ++ avatars[address] = new Gdk.Pixbuf.from_file_at_scale (path, size, size, true); ++ } catch (Error e) { ++ debug ("Unable to fetch gravatar: %s", e.message); ++ return; ++ } ++ } ++ ++ avatar.set_image_load_func (() => { ++ return avatars[address]; ++ }); ++ } ++ + private void add_inline_composer (ComposerWidget.Type composer_type) { + var message_list_box = (MessageListBox) get_parent (); + message_list_box.add_inline_composer.begin (composer_type, this); |