From 2d8ab828aa2fa21131ada4e9800c570c6e93dda4 Mon Sep 17 00:00:00 2001 From: Ward from fusion-voyager-3 Date: Sun, 17 Mar 2024 17:50:50 +0300 Subject: [PATCH] Driver installed label --- debian/changelog | 2 +- locales/ar_AA.json | 3 ++- locales/bg_BG.json | 3 ++- locales/cs_CZ.json | 3 ++- locales/de_DE.json | 3 ++- locales/en_US.json | 3 ++- locales/fr_FR.json | 3 ++- locales/nl_NL.json | 3 ++- locales/sv_SE.json | 3 ++- locales/tr_TR.json | 3 ++- src/build_ui/mod.rs | 9 +++++++++ 11 files changed, 28 insertions(+), 10 deletions(-) diff --git a/debian/changelog b/debian/changelog index 91720eb..d881522 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -pika-drivers (1.0.0-100pika5) pikauwu; urgency=medium +pika-drivers (1.0.0-100pika6) pikauwu; urgency=medium * Temp internet check fix diff --git a/locales/ar_AA.json b/locales/ar_AA.json index 7be62a0..d9e2bda 100644 --- a/locales/ar_AA.json +++ b/locales/ar_AA.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "", "driver_install_dialog_success_false": "", "window_no_drivers_box_text_title": "", - "window_no_drivers_box_text_description": "" + "window_no_drivers_box_text_description": "", + "driver_status_icon_tooltip_text": "" } diff --git a/locales/bg_BG.json b/locales/bg_BG.json index ebd4ae6..cb93773 100644 --- a/locales/bg_BG.json +++ b/locales/bg_BG.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Драйвърът е инсталиран успешно!", "driver_install_dialog_success_false": "Драйвърът не е обработен успешно!", "window_no_drivers_box_text_title": "Никои устройства не изискват специални драйвъри", - "window_no_drivers_box_text_description": "Никои устройства в твоята система нямат специални драйвъри в нашата база данни." + "window_no_drivers_box_text_description": "Никои устройства в твоята система нямат специални драйвъри в нашата база данни.", + "driver_status_icon_tooltip_text": "" } diff --git a/locales/cs_CZ.json b/locales/cs_CZ.json index 3f120e0..68419df 100644 --- a/locales/cs_CZ.json +++ b/locales/cs_CZ.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Instalace ovladače proběhla úspěšně!", "driver_install_dialog_success_false": "Instalace ovladače se nezdařila!", "window_no_drivers_box_text_title": "Žádná zařízení nevyžadují speciální ovladače", - "window_no_drivers_box_text_description": "Na tvém počítači se nenachází žádné ovladače, podívej se tu prosím na naše ovladače." + "window_no_drivers_box_text_description": "Na tvém počítači se nenachází žádné ovladače, podívej se tu prosím na naše ovladače.", + "driver_status_icon_tooltip_text": "" } diff --git a/locales/de_DE.json b/locales/de_DE.json index 7437e34..2c490dd 100644 --- a/locales/de_DE.json +++ b/locales/de_DE.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Treiber erfolgreich installiert!", "driver_install_dialog_success_false": "Der Treiber konnte nicht installiert werden!", "window_no_drivers_box_text_title": "Keine Geräte erfordern spezielle Treiber", - "window_no_drivers_box_text_description": "Für keine auf Ihrem System installierten Geräte existieren spezielle Treiber in unserer Datenbank." + "window_no_drivers_box_text_description": "Für keine auf Ihrem System installierten Geräte existieren spezielle Treiber in unserer Datenbank.", + "driver_status_icon_tooltip_text": "" } diff --git a/locales/en_US.json b/locales/en_US.json index 0480a43..417fe68 100644 --- a/locales/en_US.json +++ b/locales/en_US.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Driver processed successfully!", "driver_install_dialog_success_false": "Driver did not process successfully!", "window_no_drivers_box_text_title": "No Devices require any special drivers", - "window_no_drivers_box_text_description": "No Devices installed on your system, have a special driver in our database." + "window_no_drivers_box_text_description": "No Devices installed on your system, have a special driver in our database.", + "driver_status_icon_tooltip_text": "This Driver is installed!" } diff --git a/locales/fr_FR.json b/locales/fr_FR.json index 6be5595..20688fb 100644 --- a/locales/fr_FR.json +++ b/locales/fr_FR.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Le pilote a été Installé avec succès !", "driver_install_dialog_success_false": "Le pilote n'a pas été installé!", "window_no_drivers_box_text_title": "Aucun périphérique ne nécessite de pilote spécial", - "window_no_drivers_box_text_description": "Aucun périphérique de votre système ne dispose d'un pilote spécial présent dans notre base de données." + "window_no_drivers_box_text_description": "Aucun périphérique de votre système ne dispose d'un pilote spécial présent dans notre base de données.", + "driver_status_icon_tooltip_text": "" } diff --git a/locales/nl_NL.json b/locales/nl_NL.json index e9dcd63..72b2aff 100644 --- a/locales/nl_NL.json +++ b/locales/nl_NL.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Stuurprogramma succesvol geïnstalleerd!", "driver_install_dialog_success_false": "Het stuurprogramma is niet succesvol geïnstalleerd!", "window_no_drivers_box_text_title": "Geen apparaten vereisen speciale stuurprogramma's", - "window_no_drivers_box_text_description": "Geen enkel apparaat in uw systeem heeft een speciaal stuurprogramma in onze database." + "window_no_drivers_box_text_description": "Geen enkel apparaat in uw systeem heeft een speciaal stuurprogramma in onze database.", + "driver_status_icon_tooltip_text": "" } diff --git a/locales/sv_SE.json b/locales/sv_SE.json index 704f1dd..43048d6 100644 --- a/locales/sv_SE.json +++ b/locales/sv_SE.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Drivrutinen har installerats framgångsrikt!", "driver_install_dialog_success_false": "Drivrutinen har inte installerats korrekt!", "window_no_drivers_box_text_title": "Inga Enheter kräver några speciella drivrutiner", - "window_no_drivers_box_text_description": "Inga Enheter installerade på ditt system behöver en drivrutin från vår databas." + "window_no_drivers_box_text_description": "Inga Enheter installerade på ditt system behöver en drivrutin från vår databas.", + "driver_status_icon_tooltip_text": "" } diff --git a/locales/tr_TR.json b/locales/tr_TR.json index 14a8ef0..fc684dc 100644 --- a/locales/tr_TR.json +++ b/locales/tr_TR.json @@ -16,5 +16,6 @@ "driver_install_dialog_success_true": "Sürücü başarıyla yüklendi!", "driver_install_dialog_success_false": "Sürücü yüklenemedi!", "window_no_drivers_box_text_title": "Hiçbir cihaz özel sürücü gerektirmiyor", - "window_no_drivers_box_text_description": "Sisteminizde kurulu hiçbir cihaz, veritabanımızda özel bir sürücü gerektirmiyor." + "window_no_drivers_box_text_description": "Sisteminizde kurulu hiçbir cihaz, veritabanımızda özel bir sürücü gerektirmiyor.", + "driver_status_icon_tooltip_text": "" } diff --git a/src/build_ui/mod.rs b/src/build_ui/mod.rs index b90b929..dbc6a47 100644 --- a/src/build_ui/mod.rs +++ b/src/build_ui/mod.rs @@ -344,6 +344,12 @@ fn get_drivers( .icon_name(driver.clone().icon) .pixel_size(32) .build(); + let driver_status_icon = gtk::Image::builder() + .icon_name("emblem-default") + .pixel_size(24) + .visible(false) + .tooltip_text(t!("driver_status_icon_tooltip_text")) + .build(); let driver_description_label = gtk::Label::builder() .label(driver.clone().description) .build(); @@ -370,6 +376,7 @@ fn get_drivers( let driver_action_box = gtk::Box::builder().homogeneous(true).build(); driver_remove_button.add_css_class("destructive-action"); driver_expander_row.add_prefix(&driver_icon); + driver_expander_row.add_suffix(&driver_status_icon); if driver.clone().experimental == true { driver_expander_row.set_title( &(driver.clone().driver @@ -393,11 +400,13 @@ fn get_drivers( driver_status_loop_context.spawn_local(clone!(@weak driver_remove_button, @weak driver_install_button, @strong driver_status_loop_receiver => async move { while let Ok(driver_status_state) = driver_status_loop_receiver.recv().await { if driver_status_state == true { + driver_status_icon.set_visible(true); driver_install_button.set_sensitive(false); if driver_package_removeble == true { driver_remove_button.set_sensitive(true); } } else { + driver_status_icon.set_visible(false); driver_remove_button.set_sensitive(false); driver_install_button.set_sensitive(true); }