From 67b35b1baa78e0d89f8a6ac92d480f10d84a8db3 Mon Sep 17 00:00:00 2001 From: "B. Petersen" Date: Fri, 23 Oct 2020 19:48:33 +0200 Subject: [PATCH] add icon-group --- assets/icon-group.png | Bin 0 -> 1386 bytes assets/icon-group.svg | 68 ++++++++++++++++++++++++++++++++++++++++++ src/chat.rs | 21 +++++++++++++ 3 files changed, 89 insertions(+) create mode 100644 assets/icon-group.png create mode 100644 assets/icon-group.svg diff --git a/assets/icon-group.png b/assets/icon-group.png new file mode 100644 index 0000000000000000000000000000000000000000..aebd7430c1243a613d5d15877ba8255c333bebc7 GIT binary patch literal 1386 zcmb`H|3A|S9LGPO&zdj8Y$g?p5k*F-`MzdpGUdzk72$T)6(@1%i*mEs!`*W7ZKN+( zQ*94~o0wgf=rcNJbP;h&U0V;6MBkKck9O1X=wIml!|U~YzkYcC^nSd~Frve)Q1&PQ z0IVYDv|RuIE+Pn+Eh><=N_QIokQ*atTlbtCpB>^Zg;1^Wm>pgd>b_+il>>m#GBXU} zs{yQRpLzYLolrXQ_A?pB6^Y+u7ayoUZLz22X}Ph(+q@$1>DqteJ%x84ZU{<`ad*4g z*zZJrGD9xKQDb*RvZf|bIF*ASiu|^h)RL&)x!fN0cP4DB;{mSe)&CLM} z;**la46%ocZyTnzc;y;i=y}$?`hF)ha5H&1N`%IS&-OXOQmiD3`v9AnP(_9jEAIs% zl{U;Ni_#;P_@eWN1A zG;wp-IADN>gJ_fkL``ya?^oNE`TI4z&`IXvGv!N(&gI<*Zl4KWmaORJc&P2Av`$?2V2<5f^a5d=`> zV9YOeA7R#vjj5VqQAf3iTtSSg45Z4F+1K6{vaao1&G8>&yW3J7c+dG7H1&7>V>`;K?9rtJ)82+Sv?rPmoQZI?kWpG7&hH?K`N#wsXp!h#?3+q3(I3;p0-^f9%AkQu zx&L%q+{c8G9UE1SaBAfHg88!LDA_dOV#WoPJ#%90&;2X+`l50Pn4Zq~&oZEKKlIIa z3A;V`MJILQOmoJ;EkAZW+=yg^U}6&OMy#{GpJ?22UYgp2AlU{*}Zt8_UI|F-@9^77RpX~cWY7#kt%8xq2M-7!-Z(hdK=$OeN))Pb`ta} z%5^4bodlP4Mxa47{aqnVpBu(!1&Z$>?zrR`H1m+GMufmSBb_v(NY%I9pb5Q4J~wJm zn8byxKdN9M)dwO-)a4EOA~K01sZ8Z~idfa;#CJ(<_UcvBO6M{U{S_Olq3|Gd-vln- zNJChbmu{QW11ibuaV`?@vE3#&>O7|RT)yf_i`DDw%uETU)YVJH1ptg?UwlcaTH%=C j$kWNCy8CJa^OsJkq4s%}zRiDA%F-4Q7ESvtlv(&cwN@>^ literal 0 HcmV?d00001 diff --git a/assets/icon-group.svg b/assets/icon-group.svg new file mode 100644 index 000000000..d6fef9598 --- /dev/null +++ b/assets/icon-group.svg @@ -0,0 +1,68 @@ + + + + + + image/svg+xml + + + + + + + + + + diff --git a/src/chat.rs b/src/chat.rs index b6d593822..6633e7fbe 100644 --- a/src/chat.rs +++ b/src/chat.rs @@ -1451,6 +1451,12 @@ impl Chat { if let Ok(image_rel) = get_archive_icon(context).await { return Ok(Some(get_abs_path(context, Path::new(&image_rel)))); } + } + + if self.typ == Chattype::Group { + if let Ok(image_rel) = get_group_icon(context).await { + return Ok(Some(get_abs_path(context, Path::new(&image_rel)))); + } } else if self.typ == Chattype::Single { let contacts = get_chat_contacts(context, self.id).await?; if let Some(contact_id) = contacts.first() { @@ -1983,6 +1989,21 @@ pub(crate) async fn get_broadcast_icon(context: &Context) -> Result { Ok(icon) } +pub(crate) async fn get_group_icon(context: &Context) -> Result { + if let Some(icon) = context.sql.get_raw_config("icon-group").await? { + return Ok(icon); + } + + let icon = include_bytes!("../assets/icon-group.png"); + let blob = BlobObject::create(context, "icon-group.png", icon).await?; + let icon = blob.as_name().to_string(); + context + .sql + .set_raw_config("icon-group", Some(&icon)) + .await?; + Ok(icon) +} + pub(crate) async fn get_archive_icon(context: &Context) -> Result { if let Some(icon) = context.sql.get_raw_config("icon-archive").await? { return Ok(icon);