From 66fb2ba58ee5543fd41b803feff2c155f24b363d Mon Sep 17 00:00:00 2001 From: GyulyVGC Date: Mon, 9 Mar 2026 23:45:35 +0100 Subject: [PATCH] improve star buttons --- resources/fonts/subset/icons.ttf | Bin 21872 -> 21756 bytes src/gui/pages/inspect_page.rs | 2 +- src/gui/pages/notifications_page.rs | 2 +- src/gui/pages/overview_page.rs | 26 +++++++++++++------------- src/gui/styles/button.rs | 10 +++++----- src/utils/types/icon.rs | 6 ++++-- 6 files changed, 24 insertions(+), 22 deletions(-) diff --git a/resources/fonts/subset/icons.ttf b/resources/fonts/subset/icons.ttf index ba1348cf57f123e7abe23f85c39ae64f36c9dc1a..f8f309032a3c41d188ded63bcd665125d5bc0755 100644 GIT binary patch delta 815 zcmah{O-NKx6h7y@J8$0L^UbLB-ZV4LkMmo|I1TpHh)F6Z8BN4Qnl>Rd=E5>as36dV zmZ496z=H0M^W+Oz>U6O+sXm} z8wY5g=uh=t2(^z))7g8PT0aHE{fq(N9>TuEw#oG@)dbAN!hZ({`)9!@lb1surD}U1wdZZpnSjJ?>7sUwJss zO|RqwU&43Sm-ol~cLGu%o*85JYlpFg4ZPsQXoKIN zL}M7_{W0WqgCgsTDW*D9meLnx#Ux57rkH58lSfgqTSb;4FLKw)Er^%|TI@Dc zPG6R76=E(YR@h|Jawgk+^o3=Z`^&)wM~Q`uYE>{$W5y~iP=}rvHrUaLs>c}d?@lnt zElMIwZk0Kt%_I}0O?1gBOD36OM%N~`{7e7LfA}+;GudRlkQT)>T4bAv)^e=SzmTl- z%iXofnK#E@mkm?D7*dBT!3njbu0Bx5h0!a3Q2|whh6qL#m0tc3>5QOeBB^_2G?LN? zgPsJ(#pn9g^bdl7HEVfv3pyl5wPN}}m~ChEj{$n~aQ$KSE!#EK$id~MR*q|K74(gK oUf-Y^cXb}0L_)<`Z8VYH7K)WS1&vc(1h~ffjM~{_;OWEt1{%u3cmMzZ delta 934 zcmW+!O>7%g5PtLCuGi~b?|Qx7-R6h&+VSqD&~9B598!XV)FxCZY2(V_FB0IkfK?J& zDL#Ninu zGn!BH)-OTx6X->N5DKH?h@kP2k;2&7v3+9*O%!Of`{`Z7Bj`tTpW@i5UT^P&NTb2m zr`~?;rLEIHBg9k?8bhU5i-+95PCrlI7O7@SG!Wd(FbF}6;#6t6{FeM2H%{@V6rYUGE?S0=RAZ8&(MV0gOTW1cP_6!{IWc_h6LJ+$}jKlnQ!~w zXXHDVVLQav(FxQ|Pr0?)TA_D%P)RddR1mI?;|&Dt|OtUJ*C?n95q z&G;G1vq;$dE{dn6K74OLnCQ=u*zAznk`1F!i1h#~APDYmlY;gHw>A!-K8GeI*7 zLIWR*bujL-s_W{q%XGM|T=!QrM-20`vwT=|G?41DtNtWfioZO|^Rpl;mRRp4n$m14 z8tJX0>gnxYM&_8-dg~t3-kFJp(H_)Z7G;>ABv?HMlt3br?N=#*9Bcz8$)zFS^s6~A zK?XaUF<9bchai!3`m+5A6F64Y1Fp@c-SiM}Y1VO#H2lhC2K>)DWevi7EKK;jU`ZNt zXqc#TF`i6>wuJoEO?KcQ6V-So4`OH&58-JhDBShG6C_E1$u248-+PC%4gXvJb`k@@ z9|0z0Nn5ypJ>`o4iN*rwWf7dOLp&E1{xyvCMAYhp9tzda-{14WAK+!|^o-AHGFg1C-bgi9m?N+U_e}AP`0#rS_?^%}6fBrvCZ{>0T diff --git a/src/gui/pages/inspect_page.rs b/src/gui/pages/inspect_page.rs index ef93fae1..7c101097 100644 --- a/src/gui/pages/inspect_page.rs +++ b/src/gui/pages/inspect_page.rs @@ -368,7 +368,7 @@ fn additional_filters_row<'a>( ..search_params.clone() }) }, - Icon::Star.codepoint(), + Icon::StarEmpty.codepoint(), only_show_favorites_translation(language), ); diff --git a/src/gui/pages/notifications_page.rs b/src/gui/pages/notifications_page.rs index d0adb292..3239fd69 100644 --- a/src/gui/pages/notifications_page.rs +++ b/src/gui/pages/notifications_page.rs @@ -211,7 +211,7 @@ fn favorite_notification_log<'a>( .spacing(30) .align_y(Alignment::Center) .push( - Icon::Star + Icon::StarEmpty .to_text() .size(80) .line_height(LineHeight::Relative(1.0)), diff --git a/src/gui/pages/overview_page.rs b/src/gui/pages/overview_page.rs index 0860b5b3..574d0f3a 100644 --- a/src/gui/pages/overview_page.rs +++ b/src/gui/pages/overview_page.rs @@ -5,7 +5,6 @@ use crate::chart::types::donut_chart::donut_chart; use crate::countries::country_utils::get_flag_tooltip; -use crate::countries::flags_pictures::{FLAGS_HEIGHT_BIG, FLAGS_WIDTH_BIG}; use crate::countries::types::country::Country; use crate::gui::components::ellipsized_text::EllipsizedText; use crate::gui::components::tab::get_pages_tabs; @@ -158,7 +157,7 @@ fn col_host<'a>(sniffer: &Sniffer) -> Column<'a, Message, StyleType> { scroll_host = scroll_host.push( button(content) - .padding(Padding::new(5.0).right(15).left(10)) + .padding(Padding::new(5.0).right(10)) .on_press(Message::Search(SearchParameters::new_host_search(host))) .class(ButtonType::Neutral), ); @@ -688,21 +687,22 @@ pub fn get_bars<'a>(in_len: u16, out_len: u16) -> Row<'a, Message, StyleType> { } fn get_star_button<'a>(is_favorite: bool, host: Host) -> Button<'a, Message, StyleType> { + let (icon, class) = if is_favorite { + (Icon::StarFull, ButtonType::Starred) + } else { + (Icon::StarEmpty, ButtonType::NotStarred) + }; + button( - Icon::Star - .to_text() - .size(20) + icon.to_text() + .size(16) .align_x(Alignment::Center) .align_y(Alignment::Center), ) .padding(0) - .height(FLAGS_HEIGHT_BIG) - .width(FLAGS_WIDTH_BIG) - .class(if is_favorite { - ButtonType::Starred - } else { - ButtonType::NotStarred - }) + .height(25) + .width(25) + .class(class) .on_press(Message::AddOrRemoveFavorite(host, !is_favorite)) } @@ -739,7 +739,7 @@ fn sort_arrows<'a>( .class(active_sort_type.button_type()) .on_press(message(active_sort_type.next_sort())), ) - .width(60.0) + .width(50.0) .align_x(Alignment::Center) } diff --git a/src/gui/styles/button.rs b/src/gui/styles/button.rs index a2f28cd4..057f579b 100644 --- a/src/gui/styles/button.rs +++ b/src/gui/styles/button.rs @@ -41,13 +41,13 @@ impl ButtonType { ButtonType::TabActive | ButtonType::BorderedRoundSelected => { Background::Color(mix_colors(colors.primary, ext.buttons_color)) } - ButtonType::Starred => Background::Color(colors.starred), ButtonType::BorderedRound => Background::Color(Color { a: ext.alpha_round_containers, ..ext.buttons_color }), ButtonType::Neutral | ButtonType::Thumbnail + | ButtonType::Starred | ButtonType::NotStarred | ButtonType::SortArrows | ButtonType::SortArrowActive => Background::Color(Color::TRANSPARENT), @@ -92,7 +92,7 @@ impl ButtonType { }, }, text_color: match self { - ButtonType::Starred => Color::BLACK, + ButtonType::Starred => colors.starred, ButtonType::SortArrows => Color { a: ext.alpha_chart_badge, ..colors.text_body @@ -136,7 +136,6 @@ impl ButtonType { }, }, background: Some(match self { - ButtonType::Starred => Background::Color(colors.starred), ButtonType::SortArrows | ButtonType::SortArrowActive | ButtonType::Thumbnail => { Background::Color(Color::TRANSPARENT) } @@ -165,6 +164,7 @@ impl ButtonType { }, width: match self { ButtonType::Starred + | ButtonType::NotStarred | ButtonType::TabActive | ButtonType::SortArrows | ButtonType::SortArrowActive @@ -175,7 +175,7 @@ impl ButtonType { }, color: match self { ButtonType::Alert => ext.red_alert_color, - ButtonType::BorderedRound | ButtonType::NotStarred => Color { + ButtonType::BorderedRound => Color { a: ext.alpha_round_borders, ..ext.buttons_color }, @@ -184,7 +184,7 @@ impl ButtonType { }, }, text_color: match self { - ButtonType::Starred => Color::BLACK, + ButtonType::Starred => colors.starred, ButtonType::Gradient(_) | ButtonType::Thumbnail => colors.text_headers, ButtonType::SortArrowActive | ButtonType::SortArrows => colors.secondary, _ => colors.text_body, diff --git a/src/utils/types/icon.rs b/src/utils/types/icon.rs index de733825..e6086163 100644 --- a/src/utils/types/icon.rs +++ b/src/utils/types/icon.rs @@ -50,7 +50,8 @@ pub enum Icon { SortAscending, SortDescending, SortNeutral, - Star, + StarEmpty, + StarFull, Sun, ThumbnailOpen, ThumbnailClose, @@ -101,7 +102,8 @@ impl Icon { Icon::Sniffnet2 => '"', Icon::Sniffnet3 => '#', Icon::Sniffnet4 => '$', - Icon::Star => 'g', + Icon::StarEmpty => 'g', + Icon::StarFull => 'X', Icon::Warning => 'T', Icon::Waves => 'y', Icon::Copy => 'u',