From ee5b432e267358d7509eff106c0870d5cbaad14e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= Date: Wed, 23 Sep 2026 22:24:12 +0200 Subject: [PATCH 1/7] chore(appearance): rely on cosmic-settings-daemon to configure GTK font preferences (#2217) This is now redundant now that the cosmic-settings-daemon manages this --- .../src/pages/desktop/appearance/font_config.rs | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/cosmic-settings/src/pages/desktop/appearance/font_config.rs b/cosmic-settings/src/pages/desktop/appearance/font_config.rs index 2f88b13..e02290a 100644 --- a/cosmic-settings/src/pages/desktop/appearance/font_config.rs +++ b/cosmic-settings/src/pages/desktop/appearance/font_config.rs @@ -134,9 +134,6 @@ impl Model { stretch: cosmic::iced::font::Stretch::Normal, }; update_config(INTERFACE_FONT, self.interface_font.clone()); - tokio::spawn(async move { - set_gnome_font_name(font.as_ref()).await; - }); None } _ => None, @@ -221,11 +218,3 @@ fn update_config(variant: &str, font: FontConfig) { _ = config.set(variant, font); } } - -/// Set the preferred icon theme for GNOME/GTK applications. -pub async fn set_gnome_font_name(font_name: &str) { - let _res = tokio::process::Command::new("gsettings") - .args(["set", "org.gnome.desktop.interface", "font-name", font_name]) - .status() - .await; -} From 0e307f3cf4ca177abd57fad6f286200b8304b8dd Mon Sep 17 00:00:00 2001 From: Kartik <65574961+KodeBarista@users.noreply.github.com> Date: Thu, 24 Sep 2026 03:15:59 +0530 Subject: [PATCH 2/7] feat(vpn): add VPN config when pressing the enter key in the wireguard name text input (#2209) --- cosmic-settings/src/pages/networking/vpn/mod.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cosmic-settings/src/pages/networking/vpn/mod.rs b/cosmic-settings/src/pages/networking/vpn/mod.rs index 7323d84..7091905 100644 --- a/cosmic-settings/src/pages/networking/vpn/mod.rs +++ b/cosmic-settings/src/pages/networking/vpn/mod.rs @@ -313,7 +313,8 @@ impl page::Page for Page { VpnDialog::WireGuardName(device, ..) => { let input = widget::text_input("", device.as_str()).on_input(|input| { Message::WireGuardDeviceInput(input.replace(|c: char| !c.is_alphanumeric(), "")) - }); + }) + .on_submit(|_| Message::WireGuardConfig); let primary_action = widget::button::suggested(fl!("connect")).on_press(Message::WireGuardConfig); From 82492410584c7c010892d877ed7d19c10578aadb Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Wed, 30 Sep 2026 09:56:17 -0600 Subject: [PATCH 3/7] COSMIC policy update Generated by cosmic-epoch scripts/policy-update.sh. Uses `policy_nobuild` branch to avoid package builds as it contains no code changes. --- .github/PULL_REQUEST_TEMPLATE.md | 16 +++++++++------- .github/workflows/require-checklist.yml | 14 ++++++++++++++ 2 files changed, 23 insertions(+), 7 deletions(-) create mode 100644 .github/workflows/require-checklist.yml diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index e6ca28b..63abe52 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,8 +1,10 @@ -- [ ] I have disclosed use of any AI generated code in my commit messages. - - If you are using an LLM, and do not fully understand the changes it is making to the code base, do not create a PR. - - In our experience, AI generated code often results in overly complex code that lacks enough context for a proper fix or feature inclusion. This results in considerably longer code reviews. Due to this, AI authored or partially authored PRs may be closed without comment. -- [ ] I understand these changes in full and will be able to respond to review comments. -- [ ] My change is accurately described in the commit message. -- [ ] My contribution is tested and working as described. -- [ ] I have read the [Developer Certificate of Origin](https://developercertificate.org/) and certify my contribution under its conditions. +Replace this text with a description of your changes, and why these changes are important. Read and acknowledge the list below. PRs without a completed checkbox will be closed. +--- + +- I have not included any LLM (also known as AI) generated content in this PR, including code, comments, and descriptions. +- I understand these changes in full and will be able to respond to review comments. +- My change is accurately described in the commit message. +- My contribution is tested and working as described. +- I have read the [Developer Certificate of Origin](https://developercertificate.org/) and certify my contribution under its conditions. +- [ ] I have read and followed all of the above requirements. For more information, see our [contributor guide](https://github.com/pop-os/pop/blob/master/CONTRIBUTING.md). diff --git a/.github/workflows/require-checklist.yml b/.github/workflows/require-checklist.yml new file mode 100644 index 0000000..fd4ca8c --- /dev/null +++ b/.github/workflows/require-checklist.yml @@ -0,0 +1,14 @@ +# From https://github.com/mheap/require-checklist-action, license MIT +name: Require Checklist + +on: + pull_request: + types: [opened, edited, synchronize] + +jobs: + job1: + runs-on: ubuntu-latest + steps: + - uses: mheap/require-checklist-action@v2 + with: + requireChecklist: true From c972ef290397415b71dbd2659db3d96308ee591a Mon Sep 17 00:00:00 2001 From: Hosted Weblate Date: Tue, 6 Oct 2026 11:10:55 +0200 Subject: [PATCH 4/7] i18n: translation updates from weblate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Aindriú Mac Giolla Eoin Co-authored-by: Alex Co-authored-by: Amadɣas Co-authored-by: Arve Eriksson Co-authored-by: Baurzhan Muftakhidinov Co-authored-by: ButterflyOfFire Co-authored-by: CYAXXX <85353920+CYAXXX@users.noreply.github.com> Co-authored-by: Dan Co-authored-by: David Carvalho Co-authored-by: Ettore Atalan Co-authored-by: Geeson Wan Co-authored-by: Hosted Weblate Co-authored-by: Jim Spentzos Co-authored-by: Jiri Grönroos Co-authored-by: Julien Brouillard Co-authored-by: Martin Meizoso Co-authored-by: Michael Murphy Co-authored-by: VandaL Co-authored-by: Walter William Beckerleg Bruckman Co-authored-by: Zahid Rizky Fakhri Co-authored-by: lorduskordus Co-authored-by: taijuin Lee Co-authored-by: therealmate Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/cs/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/de/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/el/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/fi/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/fr/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/ga/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/gl/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/hu/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/id/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/kab/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/kk/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/kmr/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/pl/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/ru/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/sv/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/uk/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-settings/zh_Hant/ Translation: Pop OS/COSMIC Settings --- i18n/cs/cosmic_settings.ftl | 17 ++- i18n/de/cosmic_settings.ftl | 13 +- i18n/el/cosmic_settings.ftl | 15 ++- i18n/fi/cosmic_settings.ftl | 12 +- i18n/fr/cosmic_settings.ftl | 13 +- i18n/ga/cosmic_settings.ftl | 5 + i18n/gl/cosmic_settings.ftl | 10 ++ i18n/hu/cosmic_settings.ftl | 79 ++++++----- i18n/id/cosmic_settings.ftl | 11 +- i18n/kab/cosmic_settings.ftl | 237 +++++++++++++++++++++++++++++---- i18n/kk/cosmic_settings.ftl | 17 ++- i18n/kmr/cosmic_settings.ftl | 19 ++- i18n/pl/cosmic_settings.ftl | 13 +- i18n/pt-BR/cosmic_settings.ftl | 15 ++- i18n/ru/cosmic_settings.ftl | 13 +- i18n/sv/cosmic_settings.ftl | 13 +- i18n/uk/cosmic_settings.ftl | 19 ++- i18n/zh-CN/cosmic_settings.ftl | 13 +- i18n/zh-TW/cosmic_settings.ftl | 15 ++- 19 files changed, 449 insertions(+), 100 deletions(-) diff --git a/i18n/cs/cosmic_settings.ftl b/i18n/cs/cosmic_settings.ftl index 1e0276b..e893760 100644 --- a/i18n/cs/cosmic_settings.ftl +++ b/i18n/cs/cosmic_settings.ftl @@ -186,10 +186,11 @@ time-zone = Časové pásmo .auto = Automatické časové pásmo .auto-info = Vyžaduje službu polohy a internet time-format = Formát data a času - .twenty-four = 24 hodinový čas - .show-seconds = Zobrazit sekundy - .first = První den v týdnu - .show-date = Zobrazit datum v appletu pro čas + .twenty-four = 24hodinový čas + .show-seconds = Sekundy + .show-weekday = Den v týdnu + .first = První den týdne + .date = Datum .friday = Pátek .saturday = Sobota .sunday = Neděle @@ -935,3 +936,11 @@ bluetooth-display-pin = Párování Bluetooth .description = Zadejte prosím následující PIN na zařízení { $device } a poté stiskněte Enter rename = Přejmenovat bluetooth-rename-device = Přejmenovat zařízení +mobility = Pohyb +on-screen-keyboard = Klávesnice na obrazovce + .always-show = Zobrazovat vždy + .icon-on-panel = Ikona na panelu + .show-on-gamepad-shortcut = Zobrazit pomocí gamepadu současným stisknutím tlačítek Start a Select/Back + .show-on-text-input = Zobrazit při výběru textového pole +date-time-applet-settings-title = Applet pro datum a čas +date-time-applet-settings-label = Nastavení appletu pro datum a čas diff --git a/i18n/de/cosmic_settings.ftl b/i18n/de/cosmic_settings.ftl index 8430319..0c40850 100644 --- a/i18n/de/cosmic_settings.ftl +++ b/i18n/de/cosmic_settings.ftl @@ -720,9 +720,10 @@ time-zone = Zeitzone .auto-info = Erfordert Ortungsdienste und Internetzugang time-format = Datums- & Uhrzeitformat .twenty-four = 24-Stunden-Uhrzeit - .show-seconds = Sekunden anzeigen + .show-seconds = Sekunden + .show-weekday = Wochentag .first = Erster Tag der Woche - .show-date = Datum im Zeit-Applet anzeigen + .date = Datum .friday = Freitag .saturday = Samstag .sunday = Sonntag @@ -954,3 +955,11 @@ bluetooth-display-pin = Bluetooth-Kopplung .description = Bitte gib die folgende PIN auf { $device } ein und drücke dann die Eingabetaste bluetooth-rename-device = Gerät umbenennen rename = Umbenennen +mobility = Mobilität +on-screen-keyboard = Bildschirmtastatur + .always-show = Bildschirmtastatur immer anzeigen + .icon-on-panel = Symbol auf der Leiste + .show-on-gamepad-shortcut = Bildschirmtastatur mit einem Gamepad anzeigen, indem die Start- und Select-/Back-Tasten gleichzeitig gedrückt werden + .show-on-text-input = Bildschirmtastatur anzeigen, wenn ein Textfeld ausgewählt wird +date-time-applet-settings-title = Datum- & Uhrzeit-Applet +date-time-applet-settings-label = Einstellungen für das Datums- & Uhrzeit-Applet diff --git a/i18n/el/cosmic_settings.ftl b/i18n/el/cosmic_settings.ftl index 8f80934..fbc01d0 100644 --- a/i18n/el/cosmic_settings.ftl +++ b/i18n/el/cosmic_settings.ftl @@ -554,9 +554,10 @@ end-segment = Τελικό τμήμα bluetooth-adapters = Προσαρμογείς Bluetooth time-format = Μορφή ημερομηνίας και ώρας .twenty-four = 24ωρη μορφή - .show-seconds = Εμφάνιση δευτερολέπτων - .first = Πρώτη ημέρα εβδομάδας - .show-date = Εμφάνιση ημερομηνίας στη μικροεφαρμογή ώρας + .show-seconds = Δευτερόλεπτα + .show-weekday = Ημέρα της εβδομάδας + .first = Πρώτη ημέρα της εβδομάδας + .date = Ημερομηνία .friday = Παρασκευή .saturday = Σάββατο .sunday = Κυριακή @@ -860,3 +861,11 @@ bluetooth-display-pin = Σύζευξη Bluetooth .description = Πληκτρολογήστε το ακόλουθο PIN στο { $device } και πατήστε Enter rename = Μετονομασία bluetooth-rename-device = Μετονομασία συσκευής +date-time-applet-settings-title = Μικροεφαρμογή ημερομηνίας και ώρας +date-time-applet-settings-label = Ρυθμίσεις μικροεφαρμογής ημερομηνίας και ώρας +mobility = Κινητικότητα +on-screen-keyboard = Πληκτρολόγιο οθόνης + .always-show = Να εμφανίζεται πάντα το πληκτρολόγιο οθόνης + .icon-on-panel = Εικονίδιο στη γραμμή συστήματος + .show-on-gamepad-shortcut = Εμφάνιση του πληκτρολογίου οθόνης με χειριστήριο παιχνιδιών πατώντας τα κουμπιά «Start» και «Select»/κουμπί επιστροφής ταυτόχρονα + .show-on-text-input = Εμφάνιση του πληκτρολογίου οθόνης κατά την επιλογή ενός πεδίου κειμένου diff --git a/i18n/fi/cosmic_settings.ftl b/i18n/fi/cosmic_settings.ftl index d789cb0..0ecdc95 100644 --- a/i18n/fi/cosmic_settings.ftl +++ b/i18n/fi/cosmic_settings.ftl @@ -672,11 +672,12 @@ mirroring = Peilaus *[other] näytölle } end-segment = Päätyalue -time-format = Päiväyksen ja kellonajan muotoilu +time-format = Ajan ja päiväyksen muotoilu .twenty-four = 24-tuntinen kello .show-seconds = Näytä sekunnit + .show-weekday = Näytä viikonpäivä .first = Ensimmäinen viikonpäivä - .show-date = Näytä päiväys aikasovelmassa + .date = Päivä .friday = Perjantai .saturday = Lauantai .sunday = Sunnuntai @@ -841,3 +842,10 @@ bluetooth-display-pin = Bluetooth-parinmuodostus .description = Syötä seuraava PIN-koodi laitteelle { $device }, ja paina sitten Enter rename = Nimeä uudelleen bluetooth-rename-device = Nimeä laite uudelleen +date-time-applet-settings-title = Ajan ja päiväyksen sovelma +date-time-applet-settings-label = Ajan ja päiväyksen sovelman asetukset +on-screen-keyboard = Näyttönäppäimistö + .always-show = Näytä aina näyttönäppäimistö + .icon-on-panel = Kuvake paneelissa + .show-on-gamepad-shortcut = Näytä näyttönäppäimistö peliohjaimen Käynnistä- ja Valitse-/takaisin-painikkeita samanaikaisesti painettaessa + .show-on-text-input = Näytä näyttönäppäimistö kun tekstikenttä valitaan diff --git a/i18n/fr/cosmic_settings.ftl b/i18n/fr/cosmic_settings.ftl index 3b0c3f9..db1ca67 100644 --- a/i18n/fr/cosmic_settings.ftl +++ b/i18n/fr/cosmic_settings.ftl @@ -711,9 +711,10 @@ time-zone = Fuseau Horaire .auto-info = Nécessite les services de localisation et un accès à internet time-format = Format date et heure .twenty-four = Format 24 heures - .show-seconds = Afficher les secondes + .show-seconds = Secondes + .show-weekday = Jour de la semaine .first = Premier jour de la semaine - .show-date = Afficher la date dans l'applet du panneau + .date = Date .friday = Vendredi .saturday = Samedi .sunday = Dimanche @@ -944,3 +945,11 @@ bluetooth-display-pin = Appairage Bluetooth .description = Veuillez saisir le code PIN suivant sur { $device }, puis appuyer sur Entrée rename = Renommer bluetooth-rename-device = Renommer le périphérique +mobility = Mobilité +date-time-applet-settings-title = Applet date et heure +date-time-applet-settings-label = Paramètres de l'applet date et heure +on-screen-keyboard = Clavier virtuel + .always-show = Toujours afficher le clavier virtuel + .icon-on-panel = Icône sur le panneau + .show-on-gamepad-shortcut = Afficher le clavier virtuel avec une manette en appuyant sur les boutons Start et Select/Retour en même temps + .show-on-text-input = Afficher le clavier virtuel lors de la sélection d'un champ texte diff --git a/i18n/ga/cosmic_settings.ftl b/i18n/ga/cosmic_settings.ftl index 3eb16fb..fa55449 100644 --- a/i18n/ga/cosmic_settings.ftl +++ b/i18n/ga/cosmic_settings.ftl @@ -124,6 +124,8 @@ accessibility = Inrochtaineacht .high-contrast = Mód codarsnachta ard .invert-colors = Inbhéartaigh dathanna .color-filters = Scagairí dathanna + .shake-cursor = Croith an pointeoir chun é a aimsiú + .shake-cursor-desc = Croith an luch go tapa chun an pointeoir a mhéadú go sealadach hearing = Éisteacht .mono = Seinn fuaim steireo mar mhonó default = Réamhshocrú @@ -426,6 +428,7 @@ sound-alerts = Foláirimh .sound = Fuaime foláirimh sound-applications = Feidhmchláir .desc = Toirt agus socruithe feidhmchlár + .none = Níl aon fheidhmchlár ag úsáid fuaime ## Power @@ -948,3 +951,5 @@ bluetooth-display-passkey = Péireáil Bluetooth .description = Clóscríobh an eochair phas seo a leanas ar { $device }, ansin brúigh Iontráil bluetooth-display-pin = Péireáil Bluetooth .description = Clóscríobh an PIN seo a leanas ar { $device }, ansin brúigh Iontráil +rename = Athainmnigh +bluetooth-rename-device = Athainmnigh an gléas diff --git a/i18n/gl/cosmic_settings.ftl b/i18n/gl/cosmic_settings.ftl index f407632..1893b1c 100644 --- a/i18n/gl/cosmic_settings.ftl +++ b/i18n/gl/cosmic_settings.ftl @@ -856,3 +856,13 @@ remove-user = Eliminar o usuario full-name = Nome completo invalid-username = Nome de usuario non válido password-mismatch = O contrasinal e a confirmación deben coincidir +rename = Renomear +bluetooth-rename-device = Cambiar nome do dispositivo +mobility = Mobilidade +on-screen-keyboard = Teclado na pantalla + .always-show = Mostrar sempre o teclado na pantalla + .icon-on-panel = Icona no panel + .show-on-gamepad-shortcut = Mostrar o teclado na pantalla con un mando premendo os botóns Start e Select/Atrás ao mesmo tempo + .show-on-text-input = Mostrar o teclado na pantalla ao seleccionar un campo de texto +date-time-applet-settings-title = Miniaplicativo de data e hora +date-time-applet-settings-label = Axustes do miniaplicativo de data e hora diff --git a/i18n/hu/cosmic_settings.ftl b/i18n/hu/cosmic_settings.ftl index a44be3d..4dceb60 100644 --- a/i18n/hu/cosmic_settings.ftl +++ b/i18n/hu/cosmic_settings.ftl @@ -321,8 +321,8 @@ window-management-appearance = Ablakkezelés experimental-settings = Kísérleti beállítások icons-and-toolkit = Ikonok és eszközkészlet témázása -interface-font = Rendszer betűtípusa -monospace-font = Rögzített szélességű betűtípus +interface-font = Rendszer betűkészlete +monospace-font = Rögzített szélességű betűkészlet ## Desktop: Notifications @@ -773,9 +773,10 @@ time-zone = Időzóna .auto-info = Helymeghatározási szolgáltatások és internetkapcsolat szükséges time-format = Dátum- és időformátum .twenty-four = 24 órás időformátum - .show-seconds = Másodpercek megjelenítése + .show-seconds = Másodpercek + .show-weekday = A hét napja .first = A hét első napja - .show-date = Dátum megjelenítése az idő kisalkalmazásban + .date = Dátum .friday = Péntek .saturday = Szombat .sunday = Vasárnap @@ -909,44 +910,44 @@ workspaces-overview = Munkaterületek áttekintése .none = Nincs .launcher = Indító megnyitása .applications = Alkalmazások megnyitása -xdg-entry-mouse-keywords = COSMIC;Egér;Gyorsítás;Görgetés; -xdg-entry-notifications-keywords = COSMIC;Értesítés;Zárolás;Ne zavarjanak; -xdg-entry-startup-apps-keywords = COSMIC;Automatikus;Indítási alkalmazás; -xdg-entry-appearance-keywords = COSMIC;Kiemelő;Szín;Ikon;Betűkészlet;Téma; -xdg-entry-dock-keywords = COSMIC;Dokk;Panel;Kisalkalmazás; -xdg-entry-panel-keywords = COSMIC;Panel;Kisalkalmazás; +xdg-entry-mouse-keywords = COSMIC;egér;gyorsítás;görgetés; +xdg-entry-notifications-keywords = COSMIC;értesítés;zárolás;ne zavarjanak; +xdg-entry-startup-apps-keywords = COSMIC;automatikus;indítási;alkalmazás; +xdg-entry-appearance-keywords = COSMIC;kiemelő;szín;ikon;betűkészlet;betűtípus;téma; +xdg-entry-dock-keywords = COSMIC;dokk;panel;kisalkalmazás; +xdg-entry-panel-keywords = COSMIC;panel;kisalkalmazás; xdg-entry-time-language-comment = Rendszerdátum, idő, régió és a nyelv kezelése -xdg-entry-desktop-keywords = COSMIC;Asztal; -xdg-entry-system-keywords = COSMIC;Rendszer;Információk;Fiókok;Firmware; -xdg-entry-about-keywords = COSMIC;Névjegy; +xdg-entry-desktop-keywords = COSMIC;asztal; +xdg-entry-system-keywords = COSMIC;rendszer;információk;fiókok;firmware; +xdg-entry-about-keywords = COSMIC;névjegy; xdg-entry-panel = Panel -xdg-entry-a11y-keywords = COSMIC;Akadálymentesség;Képernyő;Olvasó;Nagyító;Kontraszt;Szín; -xdg-entry-date-time-keywords = COSMIC;Idő;Zóna; +xdg-entry-a11y-keywords = COSMIC;akadálymentesség;képernyő;olvasó;nagyító;kontraszt;szín; +xdg-entry-date-time-keywords = COSMIC;idő;zóna; xdg-entry-desktop-comment = Háttérkép, megjelenés, panel, dokk, ablakkezelés és munkaterület-beállítások xdg-entry-bluetooth-keywords = COSMIC;Bluetooth; -xdg-entry-network-keywords = COSMIC;Hálózat;Vezeték;Nélküli;WiFi;VPN; +xdg-entry-network-keywords = COSMIC;hálózat;vezeték;nélküli;WiFi;VPN; xdg-entry-system-comment = Rendszerinformációk, fiókok és firmware-frissítések -xdg-entry-time-language-keywords = COSMIC;Rendszer;Idő;Dátum;Régió;Nyelv; -xdg-entry-input-keywords = COSMIC;Bevitel;Billentyűzet;Egér;Egerek; -xdg-entry-sound-keywords = COSMIC;Hang;Figyelmeztetés;PipeWire; -xdg-entry-power-keywords = COSMIC;Energia;Akkumulátor; -xdg-entry-default-apps-keywords = COSMIC;Alapértelmezett;Alkalmazások; -xdg-entry-keywords = COSMIC;Beállítások; -xdg-entry-region-language-keywords = COSMIC;Régió;Nyelv;Dátum;Formátum;Idő;Területi;Beállítások; -xdg-entry-applications-keywords = COSMIC;Alapértelmezett;Alkalmazások;Indítás;X11;Támogatás; -xdg-entry-keyboard-keywords = COSMIC;Billentyűzet;Beviteli;Forrás;Gyorsbillentyűk; -xdg-entry-displays-keywords = COSMIC;Kijelző; -xdg-entry-wired-keywords = COSMIC;Vezetékes;LAN;Hálózat;Kapcsolat; -xdg-entry-x11-applications-keywords = COSMIC;X11;Alkalmazás;Játék;Támogatás; -xdg-entry-touchpad-keywords = COSMIC;Érintőpárna;Mozdulat; -xdg-entry-wireless-keywords = COSMIC;WiFi;Wi-Fi;Hálózat;Kapcsolat; +xdg-entry-time-language-keywords = COSMIC;rendszer;idő;dátum;régió;nyelv; +xdg-entry-input-keywords = COSMIC;bevitel;billentyűzet;egér;egerek; +xdg-entry-sound-keywords = COSMIC;hang;figyelmeztetés;PipeWire; +xdg-entry-power-keywords = COSMIC;energia;akkumulátor; +xdg-entry-default-apps-keywords = COSMIC;alapértelmezett;alkalmazások; +xdg-entry-keywords = COSMIC;beállítások; +xdg-entry-region-language-keywords = COSMIC;régió;nyelv;dátum;formátum;idő;területi;beállítások; +xdg-entry-applications-keywords = COSMIC;alapértelmezett;alkalmazások;indítás;X11;támogatás; +xdg-entry-keyboard-keywords = COSMIC;billentyűzet;beviteli;forrás;gyorsbillentyűk; +xdg-entry-displays-keywords = COSMIC;kijelző; +xdg-entry-wired-keywords = COSMIC;vezetékes;LAN;hálózat;kapcsolat; +xdg-entry-x11-applications-keywords = COSMIC;X11;alkalmazás;játék;támogatás; +xdg-entry-touchpad-keywords = COSMIC;érintőpárna;mozdulat; +xdg-entry-wireless-keywords = COSMIC;WiFi;Wi-Fi;hálózat;kapcsolat; xdg-entry-wireless = Wi-Fi -xdg-entry-workspaces-keywords = COSMIC;Munkaterület;Tájolás;Áttekintés;Monitor;Kijelző;Képernyő; -xdg-entry-wallpaper-keywords = COSMIC;Háttérkép;Háttér;Diavetítés; -xdg-entry-users-keywords = COSMIC;Felhasználó;Fiók; -xdg-entry-vpn-keywords = COSMIC;VPN;Hálózat;Kapcsolat;OpenVPN;OpenConnect; +xdg-entry-workspaces-keywords = COSMIC;munkaterület;tájolás;áttekintés;monitor;kijelző;képernyő; +xdg-entry-wallpaper-keywords = COSMIC;háttérkép;háttér;diavetítés; +xdg-entry-users-keywords = COSMIC;felhasználói;fiók; +xdg-entry-vpn-keywords = COSMIC;VPN;hálózat;kapcsolat;OpenVPN;OpenConnect; xdg-entry-comment = Beállításalkalmazás a COSMIC asztalhoz -xdg-entry-window-management-keywords = COSMIC;Ablak;Kezelés;Csempézés;Super;Billentyű; +xdg-entry-window-management-keywords = COSMIC;ablak;kezelés;csempézés;Super;billentyű; no-search-results = Nem található a keresésnek megfelelő hálózat. workspaces-navigation = Navigáció .wraparound = Váltás az első és az utolsó munkaterület között gyorsbillentyűkkel és gesztusokkal @@ -956,3 +957,11 @@ bluetooth-display-pin = Bluetooth-párosítás .description = Írd be a következő PIN-kódot a(z) { $device } eszközön, majd nyomd meg az Enter billentyűt rename = Átnevezés bluetooth-rename-device = Eszköz átnevezése +mobility = Mobilitás +on-screen-keyboard = Képernyő-billentyűzet + .always-show = Képernyő-billentyűzet állandó megjelenítése + .icon-on-panel = Ikon a panelen + .show-on-gamepad-shortcut = Képernyő-billentyűzet megjelenítése gamepaddel a Start és Select/Back gombok egyidejű megnyomásával + .show-on-text-input = Képernyő-billentyűzet megjelenítése szövegmező kijelölésekor +date-time-applet-settings-title = Dátum- és idő-kisalkalmazás +date-time-applet-settings-label = Dátum- és idő-kisalkalmazás beállításai diff --git a/i18n/id/cosmic_settings.ftl b/i18n/id/cosmic_settings.ftl index a849340..9409895 100644 --- a/i18n/id/cosmic_settings.ftl +++ b/i18n/id/cosmic_settings.ftl @@ -632,8 +632,9 @@ window-tiling = Pengubinan jendela time-format = Format tanggal & waktu .twenty-four = Waktu 24 jam .show-seconds = Tampilkan detik + .show-weekday = Hari dalam mingguan .first = Hari pertama dalam mingguan - .show-date = Tampilkan tanggal di applet waktu + .date = Tanggal .friday = Jum'at .saturday = Sabtu .sunday = Minggu @@ -860,3 +861,11 @@ bluetooth-display-pin = Pemasangan Bluetooth .description = Silakan ketik PIN berikut pada { $device }, kemudian tekan Enter rename = Ganti Nama bluetooth-rename-device = Ganti Nama Perangkat +mobility = Mobilitas +on-screen-keyboard = Papan ketik di layar + .always-show = Selalu tampilkan papan ketik di layar + .icon-on-panel = Ikon di panel + .show-on-gamepad-shortcut = Tampilkan papan ketik di layar dengan gamepad dengan menekan tombol Mulai dan Pilih/Kembali pada waktu yang sama + .show-on-text-input = Tampilkan papan ketik di layar saat memilih kolom teks +date-time-applet-settings-title = Applet tanggal & waktu +date-time-applet-settings-label = Pengaturan applet tanggal & waktu diff --git a/i18n/kab/cosmic_settings.ftl b/i18n/kab/cosmic_settings.ftl index 58b3826..5febe47 100644 --- a/i18n/kab/cosmic_settings.ftl +++ b/i18n/kab/cosmic_settings.ftl @@ -52,6 +52,7 @@ workspaces-orientation = Taɣda n tallunin n umahil .horizontal = Aglawan sound-applications = Isnasen .desc = Iblaɣen akked iɣewwaṛen n usnas + .none = Ulac isnasen i yesseqdacen ameslaw xdg-entry-x11-applications-keywords = COSMIC;X11;Asnas;Urar;Amṣada; xdg-entry-wireless-keywords = COSMIC;WiFi;Wi-Fi;Aẓeṭṭa;Tuqqna; xdg-entry-wireless-comment = Tuqqniwin Wi-Fi akked imeɣna n tuqqna @@ -138,15 +139,28 @@ interface-density = Taneẓẓi n ugrudem .compact = Akussim .spacious = Wessiɛen style = Aɣanib - .round = Imdewweṛ - .slightly-round = Imdewweṛ cwiṭ + .round = Imdewwer + .slightly-round = Imdewwer cwiṭ .square = Amkuẓ + .frosted-glass = Asmaɣ iluɣen + .frosted-system-interface = Agrudem n unagraw + .frosted-system-interface-desc = Snes asemdu n usmaɣ iluɣen ɣef umsekker, temkarḍit n yisnasen, tmuɣli tamatut n tallunin n umahil d yisenqaden ɣef ugdil + .frosted-windows = Isfuyla + .frosted-windows-desc = Snes asemdu n usmaɣ iluɣen ɣef yisfuyla d yidiwenniyen + .frosted-panels = Igalisen + .frosted-panels-desc = Snes asemdu n usmaɣ iluɣen ɣef ugalis d udekkan + .frosted-applets = Tappliḍin + .frosted-applets-desc = Snes asemdu n usmaɣ iluɣen ɣef wumuɣen n tappliḍin deg ugalis d udekkan + .frosted-thickness = Tuzert n usemdu n usmaɣ iluɣen + .less = drus + .more = ugar + .glass-opacity = Aswir n tḍullest n usmaɣ text-tint = Sbeɣ n uḍris n ugrudem .desc = Yettwaseqdec iwakken ad d-yawi initen n uḍris n ugrudem i yesɛan agnil akken iwata deg tugett n tjummiwin icon-theme = Asentel n tignit .desc = Ad yesnes tagrumma n tignitin yemgaraden ɣef isnasen -frosted = Asemdu n usmaɣ deg ugrudem n unagraw. - .desc = Snes asluɣu n ugilal ɣer ugalis, adekkan, tiplaḍin, ameskar, d temkarḍit n usnas +frosted = Asemdu n usmaɣ iluɣen deg ugrudem n unagraw. + .desc = Snes asluɣu n ugilal ɣer ugalis, adekkan, tiplaḍin, amsekker, d temkarḍit n usnas enable-export = Snes asentel amiran i yisnasen n GNOME .desc = Mačči akk ifecka sefraken asnifel awurman. Isnasen ur nelli n COSMIC zemrent ad sran ales n tnekra seld asnifel n usentel. control-tint = Sbeɣ n isger usenqed @@ -216,11 +230,13 @@ accessibility = Tuffart .vision = Tamuɣli .on = Yermed .off = Yensa - .unavailable = Ur yewjid ara + .unavailable = Ulac-it .screen-reader = Imeɣri n ugdil .high-contrast = Askar n ugnil afellay .invert-colors = Tti initen - .color-filters = Tistayin n yini + .color-filters = Tistayin n yiniten + .shake-cursor = Sḥerrek asewwaṛ iwakken ad t-id-tafeḍ + .shake-cursor-desc = Sḥerrek taɣerdayt s lemɣawla iwakken ad tessemɣreḍ asewwaṛ i kra n wakud bluetooth-adapters = Imezgayen n Bluetooth bluetooth-available = Ibenkan iqeṛben bluetooth-confirm-pin = Sentem Tangalt Bluetooth PIN @@ -255,20 +271,22 @@ wired = S ugatu .devices = Ibenkan n ugatu .remove = Kkes amaɣnu n tuqqna vpn-error = Tuccḍa n VPN - .config = Ur teddi ara tmerna n twila VPN - .connect = Tecceḍ tuqqna ɣer VPN - .connection-editor = Amaẓrag n tuqqna ur yeddi ara - .connection-settings = Yecceḍ wawway n iɣewwaṛen i tuqqniwin turmidin - .updating-state = Yecceḍ uleqqem n waddad n umsefrak n uzeṭṭa - .wireguard-config-path = Abrid n ufaylu d armeɣtu i twila n WireGuard - .wireguard-config-path-desc = Afaylu yettwafernen ilaq ad yili deg unagraw adigan. - .wireguard-device = Yecceḍ usnulfu n yibenk WireGuard + .config = Ur izmir ara ad yernu tawila n VPN + .connect = Ur izmir ara ad yeqqen ɣer VPN + .connection-editor = Amaẓrag n tuqqniwin ur yeddi ara + .connection-settings = Ur izmir ara ad d-yawi iɣewwaṛen n tuqqniwin yermden + .openvpn-config-path = Abrid n ufaylu n twila n OpenVPN mačči d ameɣtu + .openvpn-config-path-desc = Afaylu yettwafernen ilaq ad yili deg unagraw n yifuyla adigan. + .updating-state = Ur izmir ara ad ileqqem addad n usefrak n uzeṭṭa + .wireguard-config-path = Abrid n ufaylu n twila n WireGuard mačči d ameɣtu + .wireguard-config-path-desc = Afaylu yettwafernen ilaq ad yili deg unagraw n yifuyla adigan. + .wireguard-device = Ur izmir ara ad d-yesnulfu ibenk n WireGuard .with-password = - Ur yizmir ara ad isbadu { $field -> + Ur izmir ara ad isbadu { $field -> *[username] isem n useqdac [password] awal uffir - [password-flags] tikbabin n wawal uffir - } n VPN s nmcli + [password-flags] ticraḍ n wawal uffir + } s nmcli vpn = VPN .connections = Tuqqniwin VPN .error = Timerna n twila VPN ur teddi ara @@ -320,7 +338,7 @@ zoom-out = Simẓi zoom-in = Semɣeṛ replace-shortcut-dialog = Semselsi anegzum? .desc = { $shortcut } yettwaseqdec sɣur { $name }. Ma tsemselsiḍ-t, { $name } ad yettwsens. -window-tiling = Afser n yisfuyla +window-tiling = Afsar n yisfuyla .horizontal = Sbadu taɣda taglawant .vertical = Sbadu taɣda tubdidt .swap-window = Asfaylu n usemmeskel @@ -411,12 +429,12 @@ connected-devices = Ibenkan yeqqnen battery = Aẓru .minute = { $value } { $value -> - [one] tasdat + [one] n tesdat *[other] n tesdatin } .hour = { $value } { $value -> - [one] asrag + [one] n usrag *[other] n yisragen } .day = @@ -424,7 +442,7 @@ battery = Aẓru [one] wass *[other] n wussan } - .less-than-minute = Ur tettaweḍ ara tesdat + .less-than-minute = Ur yettaweḍ ara tasdat .and = akked .remaining-time = { $time } alamma { $action -> @@ -482,7 +500,7 @@ workspaces-behavior = Tiddin n tallunt n umahil workspaces-overview = Taskant n tallunin n umahil .action-on-typing = Tigawt deg tira .none = Ula yiwen - .launcher = Ldi Amsekkar + .launcher = Ldi Amsekker .applications = Ldi Isnasen workspaces = Tallunin n umahil focus-navigation = Asaḍas n yinig @@ -495,10 +513,10 @@ window-controls = Isenqaden n usfaylu .active-window-hint = Sken amatar n usfaylu urmid edge-gravity = Ajbad n yisfuyla yettifliwen ɣer yiran iqerben super-key = Tigawt n tsarut Super - .launcher = Ldi amsekkar + .launcher = Ldi amsekker .workspaces = Ldi tallunin n umahil .applications = Ldi isnasen - .disable = Sens + .none = Ula yiwen window-management = Amsefrak n yisfuyla panel-missing = Tawila n ugalis ulac-itt .desc = Afaylu n twila n ugalis ulac-it ɣef sebba n useqdec n twila yugnen neɣ yexṣer. @@ -633,3 +651,174 @@ click-behavior = Tiddin n usiti mouse = Taɣerdayt .speed = Arured n tɣerdayt .acceleration = Rmed asɣiwel n tɣerdayt +nav-shortcuts = Inig + .prev-output = Err asaḍas ɣer ugdil yezrin + .next-output = Err asaḍas ɣer ugdil i d-iteddun + .last-workspace = Err asaḍas ɣer tallunt n umahil taneggarut + .prev-workspace = Err asaḍas ɣer tallunt n umahil yezrin + .next-workspace = Err asaḍas ɣer tallunt n umahil i d-iteddun + .focus = + Err asaḍas ɣer usfaylu { $direction -> + *[down] n wadda + [in] n daxel + [left] n uzelmaḍ + [out] n beṛṛa + [right] n uyeffus + [up] n ufella + } + .output = + Uɣal ɣer ugdil { $direction -> + *[down] n wadda + [left] n uzelmaḍ + [right] n uyeffus + [up] n ufella + } + .workspace = Uɣal ɣer tallunt n umahil { $num } +move-windows = Smutti isfuyla + .direction = + Smutti asfaylu { $direction -> + *[down] ɣer tama wadda + [left] ɣer uzelmaḍ + [right] ɣer uyeffus + [up] ɣer tama ufella + } + .display = + Smutti asfaylu s yiwen n umeskan { $direction -> + *[down] ɣer tama wadda + [left] ɣer uzelmaḍ + [right] ɣer uyeffus + [up] ɣer tama ufella + } + .workspace = + Smutti asfaylu s yiwet n tallunt n umahil { $direction -> + *[below] ɣer tama wadda + [left] ɣer uzelmaḍ + [right] ɣer uyeffus + [above] ɣer tama ufella + } + .workspace-num = Smutti asfaylu ɣer tallunt n umahil tis { $num } + .prev-workspace = Smutti asfaylu ɣer tallunt n umahil tuzwirt + .next-workspace = Smutti asfaylu ɣer tallunt n umahil tuḍfirt + .last-workspace = Smutti asfaylu ɣer tallunt n umahil taneggarut + .next-display = Smutti asfaylu ɣer ugdil uḍfir + .prev-display = Smutti asfaylu ɣer ugdil azwir + .send-to-prev-workspace = Smutti asfaylu ɣer tallunt n umahil tuzwirt + .send-to-next-workspace = Smutti asfaylu ɣer tallunt n umahil tuḍfirt +system-shortcut = Anagraw + .app-library = Ldi tamkarḍit n yisnasen + .brightness-down = Ssenqes tifawt n ugdil + .brightness-up = Snerni tifawt n ugdil + .display-toggle = Sermed neɣ ssens agdil agensan + .home-folder = Ldi akaram agejdan + .keyboard-brightness-down = Ssenqes tifawt n unasiw + .keyboard-brightness-up = Snerni tifawt n unasiw + .launcher = Ldi amsekker + .log-out = Ffeɣ + .lock-screen = Sekkeṛ agdil + .mute = Sgugem tuffɣa n yimesli + .mute-mic = Sgugem anekcum n usawaḍ + .play-pause = Ɣeṛ / Ḥbes di leɛḍil + .play-next = Tafuɣalt i d-iteddun + .play-prev = Tafuɣalt yezrin + .poweroff = Ssensi + .screenshot = Ṭṭef tugna n ugdil + .suspend = Err ɣer usgunfu + .terminal = Ldi ixef + .touchpad-toggle = Sermed neɣ ssens talwiḥt n unnal + .volume-lower = Ssenqes ableɣ n yimesli n tuffɣa + .volume-raise = Snerni ableɣ n yimesli n tuffɣa + .web-browser = Ldi iminig n Web + .window-switcher = Uɣal gar yisfuyla yeldin + .window-switcher-previous = Uɣal gar yisfuyla yeldin s umyezwer imetti + .workspace-overview = Ldi tamuɣli tamatut n tallunin n umahil +xdg-entry-touchpad-keywords = COSMIC;Talwiḥt n unnal;Imussuten n yiḍuḍan; +xdg-entry-input-keywords = COSMIC;Asekcem;Anasiw;Taɣerdayt;Taɣerdayt; +xdg-entry-notifications-comment = Ur ttcewwil ara, alɣuten ɣef ugdil n usekkeṛ, akked iɣewwaṛen i yal asnas +xdg-entry-window-management-keywords = COSMIC;Asfaylu;Asefrak;Afsar;Super;Taqeffalt; +xdg-entry-window-management-comment = Tigawt n tqeffalt Super, tixtiṛiyin n usenqed n yisfuyla d tixtiṛiyin nniḍen n ufsar n yisfuyla +tap-to-click = Nnal iwakken ad tsiteḍ + .desc = Sermed annal s yiwen uḍad i usit agejdan, s sin iḍudan i usit asnawan, akked kraḍ iḍudan i usit alemmas +hot-corner = Tiɣmert turmidt + .top-left-corner = Sermed tiɣmert turmidt n ufella ɣer zelmaḍ i tallunin n umahil +hearing = Timesliwt + .mono = Ɣeṛ imesli stereo s uskar mono +shadows-tiling = Isfuyla yefseren + .clip = Semṣada akked tɣemmar n unagraw + .shadow = Snes tili +workspaces-overview-thumbnails = tinfulin n tmuɣli tamatut n tallunin n umahil + .show-number = Sken uṭṭun n tallunt n umahil + .show-name = Sken isem n tallunt n umahil +magnifier = Tasemɣert + .controls = + Neɣ seqdec inegzumen-a: { $zoom_in -> + [zero] { "" } + *[other] + { "" } + { $zoom_in } i usemɣer, + }{ $zoom_out -> + [zero] { "" } + *[other] + { "" } + { $zoom_out } i usemẓi, + } + Super + adrurem s tɣerdayt + .scroll_controls = Sermed asemɣer d usemẓi s tɣerdayt neɣ s telwiḥt n unnal s Super + adrurem + .show_overlay = Sken agalis n tsemɣert yettwaran sufella + .increment = Tifest n usemɣer + .signin = Sekker tasemɣert deg unekcum + .applet = Sermed neɣ ssens tasemɣert seg teppleṭ deg ugalis + .movement = Tamuɣli yettwasemɣren tettḥerrik + .continuous = S wudem aɣezfan akked usewwaṛ + .onedge = Mi ara yaweḍ usewwaṛ ɣer yiri + .centered = Iwakken ad yeqqim usewwaṛ deg tlemmast +xdg-entry-touchpad = Talwiḥt n unnal +xdg-entry-x11-applications-comment = Tafesna n yisnasen n unagraw n yisfuyla X11, agdil agejdan d yinegzumen imuta +xdg-entry-touchpad-comment = Arured n telwiḥt n unnal, tixtiṛiyin n usiti d yimussuten n yiḍuḍan +scan-to-connect-description = Ḍumm tangalt QR akken ad teqqneḍ ɣer uzeṭṭa-agi. +rename = Snifel isem +bluetooth-rename-device = Snifel isem n yibenk +bluetooth-display-passkey = Ayugan n Bluetooth + .description = Ttxil-k·m sekcem tasarut-a n uɛeddi deg { $device }, sakin sit ɣef Kcem +bluetooth-display-pin = Ayugan n Bluetooth + .description = Ttxil-k·m sekcem tangalt-a PIN deg { $device }, sakin sit ɣef Kcem +workspaces-navigation = Inig + .wraparound = Asaka seg tallunt n umahil tamezwarut ɣer tneggarut s yinegzumen n unasiw d yimussuten n yiḍuḍan +keyboard-numlock-boot = Num Lock + .boot-state = Addad deg usekker + .last-boot = Asekker aneggaru + .on = Yermed + .off = Yensa + .set = Sbadu addad n Num Lock deg usekker +display = Igdilen + .arrangement = Asuddes n yigdilen + .arrangement-desc = Zuɣer igdilen iwakken ad tbeddeleḍ asuddes-nsen + .enable = Sermed agdil + .external = Agdil azɣaray { $size } { $output } + .laptop = Agdil n uselkim aziraz { $size } + .options = Tixtiṛiyin n ugdil + .refresh-rate = Asnagar n usismeḍ + .resolution = Tabadut + .scale = Tafesna + .additional-scale-options = Tixtiṛiyin nniḍen n tfesna +keyboard-special-char = Asekcem n yisekkilen uzzigen + .alternate = Taqeffalt n yisekkilen imlellayen + .compose = Taqeffalt n usuddes + .compose-desc = Taqeffalt n usuddes tettɛawan-ik·im ad teskecmeḍ aṭas n yisekkilen yemgaraden. Iwakken ad tt-tesqedceḍ, senned ɣef asuddes, syen ɣef uḍfer n yisekkilen. Amedya, senned ɣef asuddes, syen ɣef C d o iwakken ad teskecmeḍ © ; senned ɣef asuddes, syen ɣef a d ‘ iwakken ad teskecmeḍ á. + .caps = Taqeffalt isekkilen imeqqranen + .ctrl = Asenqed + .ctrl-right = Ctrl n uyeffus + .swap-with-ctrl = Semmeskel akked Usenqed + .alt = Alt + .alt-left = Alt n uzelmaḍ + .alt-right = Alt n uyeffus + .super = Super + .super-left = Super n uzelmaḍ + .super-right = Super n uyeffus + .menu = Taqeffalt n wumuɣ + .backspace = Tallunt ɣer deffir + .escape = Asenser(ESC) + .swap-with-escape = Semmeskel akked tqeffalt usenser + .print-screen = Siggez agdil + .scroll-lock = Taqeffalt n udrurem + .none = Ulac +sound-device-port-unplugged = Ur yeqqin ara diff --git a/i18n/kk/cosmic_settings.ftl b/i18n/kk/cosmic_settings.ftl index 0776899..ed4e993 100644 --- a/i18n/kk/cosmic_settings.ftl +++ b/i18n/kk/cosmic_settings.ftl @@ -187,7 +187,7 @@ close = Жабу color-picker = Түс таңдаушы copied-to-clipboard = Алмасу буферіне көшірілді copy-to-clipboard = Алмасу буферіне көшіру -dark = Қою +dark = Қараңғы export = Экспорттау hex = Он алтылық import = Импорттау @@ -663,9 +663,10 @@ time-zone = Уақыт белдеуі .auto-info = Орналасқан жер қызметтері мен интернетке қол жеткізуді қажет етеді time-format = Күн және уақыт пішімі .twenty-four = 24 сағаттық уақыт - .show-seconds = Секундтарды көрсету + .show-seconds = Секундтар + .show-weekday = Апта күні .first = Аптаның бірінші күні - .show-date = Уақыт апплетінде күнді көрсету + .date = Күн .friday = Жұма .saturday = Сенбі .sunday = Жексенбі @@ -858,3 +859,13 @@ bluetooth-display-passkey = Bluetooth жұптау .description = { $device } құрылғысында келесі кілттік кодты енгізіңіз, одан кейін Enter басыңыз bluetooth-display-pin = Bluetooth жұптау .description = { $device } құрылғысында келесі PIN кодты енгізіңіз, одан кейін Enter басыңыз +rename = Атауын өзгерту +bluetooth-rename-device = Құрылғы атауын өзгерту +mobility = Мобильділік +on-screen-keyboard = Экрандық пернетақта + .always-show = Экрандық пернетақтаны әрқашан көрсету + .icon-on-panel = Панельдегі таңбаша + .show-on-gamepad-shortcut = Экрандық пернетақтаны геймпадтағы Start және Select/Back батырмаларын бір уақытта басу арқылы көрсету + .show-on-text-input = Мәтіндік өріс таңдалғанда экрандық пернетақтаны көрсету +date-time-applet-settings-title = Күн және уақыт апплеті +date-time-applet-settings-label = Күн және уақыт апплетінің баптаулары diff --git a/i18n/kmr/cosmic_settings.ftl b/i18n/kmr/cosmic_settings.ftl index 78a6b08..8cf0053 100644 --- a/i18n/kmr/cosmic_settings.ftl +++ b/i18n/kmr/cosmic_settings.ftl @@ -484,11 +484,12 @@ orientation = Araste auto = Xweber end-segment = Beşa dawîn bluetooth-adapters = Adaptorên Bluetoothê -time-format = Awaya dîrok û demê - .twenty-four = Dema 24-demjimêr - .show-seconds = Çirkeyan nîşan bide - .first = Roja yekem a hefteyê - .show-date = Dîrokê di sepanoka demê de nîşan bide +time-format = Formata dîrok û demê + .twenty-four = Dema 24-demjimêrî + .show-seconds = Çirke + .show-weekday = Roja hefteyê + .first = Roja yekemîn a hefteyê + .date = Dîrok .friday = Înî .saturday = Şemî .sunday = Yekşem @@ -860,3 +861,11 @@ workspaces-navigation = Gerandin no-search-results = Tu tor li lêgerînên te li hev nakin . rename = Navê biguhêrîne bluetooth-rename-device = Navê amûrê biguhêrîne +mobility = Livînbarî +on-screen-keyboard = Kilîtdanka li ser dîmenderê + .always-show = Her dem kilîtdankê li ser dîmenderê nîşan bide + .icon-on-panel = îkonên li ser destgehê + .show-on-gamepad-shortcut = Bi riya tikandina bişkokên dest pê bike û Hilbijêre/Vegere di heman demê de, kilîtdankê li ser dîmenderê bi gamepadê nîşan bide + .show-on-text-input = Di dema hilbijartina qadeke nivîsê de kilîtdankê li ser dîmenderê nîşan bide +date-time-applet-settings-title = Sepanoka dîrok û demê +date-time-applet-settings-label = Sazkariyên sepanoka dîrok û demê diff --git a/i18n/pl/cosmic_settings.ftl b/i18n/pl/cosmic_settings.ftl index 04665d4..b8a9283 100644 --- a/i18n/pl/cosmic_settings.ftl +++ b/i18n/pl/cosmic_settings.ftl @@ -786,9 +786,10 @@ time-zone = Strefa czasowa .auto-info = Wymaga usług lokalizacji oraz połączenia internetowego time-format = Format daty i godziny .twenty-four = Czas 24-godzinny - .show-seconds = Pokaż sekundy + .show-seconds = Sekundy + .show-weekday = Dzień tygodnia .first = Pierwszy dzień tygodnia - .show-date = Pokaż datę w aplecie czasu + .date = Data .friday = Piątek .saturday = Sobota .sunday = Niedziela @@ -970,3 +971,11 @@ bluetooth-display-pin = Bluetooth Pairing .description = Wpisz PIN na { $device } i naciśnij Enter rename = Zmień nazwę bluetooth-rename-device = Zmień Nazwę Urządzenia +mobility = Mobilność +on-screen-keyboard = Klawiatura ekranowa + .always-show = Zawsze pokazuj klawiaturę ekranową + .icon-on-panel = Ikony na pulpicie + .show-on-gamepad-shortcut = Pokaż klawiaturę ekranową kontrolerem po naciśnięciu jednocześnie przycisków Start i Select/Back + .show-on-text-input = Pokaż klawiaturę ekranową po wybraniu pola tekstowego +date-time-applet-settings-title = Aplet czasu i daty +date-time-applet-settings-label = Ustawienia apletu czasu i daty diff --git a/i18n/pt-BR/cosmic_settings.ftl b/i18n/pt-BR/cosmic_settings.ftl index c09c830..960c4e6 100644 --- a/i18n/pt-BR/cosmic_settings.ftl +++ b/i18n/pt-BR/cosmic_settings.ftl @@ -180,7 +180,7 @@ colors = Cores dialog-add = Adicionar fill = Preencher fit-to-screen = Ajustar à tela -open-new-folder = Abrir Nova Pasta +open-new-folder = Abrir nova pasta recent-folders = Pastas recentes x-minutes = { $number } { $number -> @@ -716,9 +716,10 @@ time-zone = Fuso horário .auto-info = Requer um serviço de localização e acesso à Internet time-format = Formato de data e hora .twenty-four = Formato de 24 horas - .show-seconds = Mostrar segundos + .show-seconds = Segundos + .show-weekday = Dia da semana .first = Primeiro dia da semana - .show-date = Mostrar a data no miniaplicativo de hora + .date = Data .friday = Sexta-feira .saturday = Sábado .sunday = Domingo @@ -953,3 +954,11 @@ bluetooth-display-pin = Emparelhamento Bluetooth .description = Por favor, digite o seguinte PIN em { $device }, depois pressione Enter rename = Renomear bluetooth-rename-device = Renomear dispositivo +mobility = Mobilidade +on-screen-keyboard = Teclado virtual + .always-show = Sempre exibir o teclado virtual + .icon-on-panel = Ícone no painel + .show-on-gamepad-shortcut = Exibir o teclado virtual com um controle de jogo pressionando os botões Iniciar e Selecionar/Voltar simultaneamente. + .show-on-text-input = Exibir o teclado virtual ao selecionar um campo de texto +date-time-applet-settings-title = Miniaplicativo de data e hora +date-time-applet-settings-label = Configurações do miniaplicativo de data e hora diff --git a/i18n/ru/cosmic_settings.ftl b/i18n/ru/cosmic_settings.ftl index 8a0198d..6a0c3e0 100644 --- a/i18n/ru/cosmic_settings.ftl +++ b/i18n/ru/cosmic_settings.ftl @@ -249,9 +249,10 @@ time-zone = Часовой пояс .auto-info = Требуются службы определения местоположения и доступ в Интернет time-format = Формат даты и времени .twenty-four = 24-часовой формат - .show-seconds = Отображать секунды + .show-seconds = Секунды + .show-weekday = День недели .first = Первый день недели - .show-date = Отображать дату в апплете времени + .date = Дата .friday = Пятница .saturday = Суббота .sunday = Воскресенье @@ -930,3 +931,11 @@ bluetooth-display-pin = Сопряжение по Bluetooth .description = Введите следующий PIN-код на { $device }, затем нажмите Enter rename = Переименовать bluetooth-rename-device = Переименовать устройство +mobility = Мобильность +on-screen-keyboard = Экранная клавиатура + .always-show = Всегда отображать Экранную клавиатуру + .icon-on-panel = Значок на панели + .show-on-gamepad-shortcut = Отображать Экранную клавиатуру с помощью контроллера, нажав одновременно кнопки «Start» и «Select/Back» + .show-on-text-input = Отображать Экранную клавиатуру при выборе текстового поля +date-time-applet-settings-title = Апплет «Дата и время» +date-time-applet-settings-label = Параметры апплета «Дата и время» diff --git a/i18n/sv/cosmic_settings.ftl b/i18n/sv/cosmic_settings.ftl index dd3d254..2f5d469 100644 --- a/i18n/sv/cosmic_settings.ftl +++ b/i18n/sv/cosmic_settings.ftl @@ -457,9 +457,10 @@ time-zone = Tidszon .auto-info = Kräver platstjänster och internetåtkomst time-format = Datum & tidsformat .twenty-four = 24-timmars tid - .show-seconds = Visa sekunder + .show-seconds = Sekunder + .show-weekday = Veckodag .first = Första dagen på veckan - .show-date = Visa datum i tids-miniprogrammet + .date = Datum .friday = Fredag .saturday = Lördag .sunday = Söndag @@ -968,3 +969,11 @@ bluetooth-display-pin = Bluetooth-koppling .description = Ange följande PIN på { $device }, tryck sedan Enter bluetooth-rename-device = Byt namn på enhet rename = Byt namn +mobility = Rörlighet +on-screen-keyboard = Virtuellt tangentbord + .always-show = Visa alltid virtuellt tangentbord + .icon-on-panel = Ikon på panel + .show-on-gamepad-shortcut = Visa virtuellt tangentbrod med en spelkontroll genom att trycka på Start- och Select-/Back-knapparna samtidigt + .show-on-text-input = Visa virtuellt tangentbord när ett textinmatningsfält markeras +date-time-applet-settings-title = Miniprogrammet Datum & tid +date-time-applet-settings-label = Inställningar för miniprogrammet Datum & tid diff --git a/i18n/uk/cosmic_settings.ftl b/i18n/uk/cosmic_settings.ftl index 466a9e0..67fd7ff 100644 --- a/i18n/uk/cosmic_settings.ftl +++ b/i18n/uk/cosmic_settings.ftl @@ -508,12 +508,13 @@ time-date = Дата та час time-zone = Часовий пояс .auto = Автоматичне визначення часового поясу .auto-info = Необхідні служби визначення місцезнаходження та доступ до Інтернету -time-format = Формат дати та часу - .twenty-four = 24-годинний формат часу - .show-seconds = Показувати секунди +time-format = Формат дати й часу + .twenty-four = 24-годинний формат + .show-seconds = Секунди + .show-weekday = День тижня .first = Перший день тижня - .show-date = Показувати дату на панелі - .friday = Пʼятниця + .date = Дата + .friday = П’ятниця .saturday = Субота .sunday = Неділя .monday = Понеділок @@ -942,3 +943,11 @@ bluetooth-display-passkey = Злучення Bluetooth .description = Введіть код для створення пари на { $device }, далі натисніть Enter rename = Перейменувати bluetooth-rename-device = Перейменувати пристрій +mobility = Мобільність +on-screen-keyboard = Екранна клавіатура + .always-show = Завжди показувати екранну клавіатуру + .icon-on-panel = Значок на панелі + .show-on-gamepad-shortcut = Показувати екранну клавіатуру за допомогою ґеймпада, одночасно натиснувши кнопки Start і Select/Back + .show-on-text-input = Показувати екранну клавіатуру під час вибору текстового поля +date-time-applet-settings-title = Віджет дати й часу +date-time-applet-settings-label = Налаштування віджета дати й часу diff --git a/i18n/zh-CN/cosmic_settings.ftl b/i18n/zh-CN/cosmic_settings.ftl index b589863..1707a8e 100644 --- a/i18n/zh-CN/cosmic_settings.ftl +++ b/i18n/zh-CN/cosmic_settings.ftl @@ -775,9 +775,10 @@ time-zone = 时区 .auto-info = 需要位置服务和互联网连接 time-format = 日期与时间格式 .twenty-four = 24 小时制 - .show-seconds = 显示秒数 + .show-seconds = 秒数 + .show-weekday = 星期 .first = 每周第一天 - .show-date = 在时间小部件中显示日期 + .date = 日期 .friday = 星期五 .saturday = 星期六 .sunday = 星期日 @@ -956,3 +957,11 @@ bluetooth-display-pin = 蓝牙配对 .description = 请在 { $device } 上输入以下 PIN 码,然后按回车键 rename = 重命名 bluetooth-rename-device = 重命名设备 +mobility = 移动性 +date-time-applet-settings-title = 时间与日期小部件 +date-time-applet-settings-label = 时间与日期小部件设置 +on-screen-keyboard = 屏幕键盘 + .always-show = 始终显示屏幕键盘 + .icon-on-panel = 面板上的图标 + .show-on-gamepad-shortcut = 使用游戏手柄时,同时按下“开始”和“选择/返回“键即可显示屏幕键盘” + .show-on-text-input = 选择文字框时显示屏幕键盘 diff --git a/i18n/zh-TW/cosmic_settings.ftl b/i18n/zh-TW/cosmic_settings.ftl index 422a96b..3f86cf4 100644 --- a/i18n/zh-TW/cosmic_settings.ftl +++ b/i18n/zh-TW/cosmic_settings.ftl @@ -715,9 +715,10 @@ time-zone = 時區 .auto-info = 需要定位服務與網際網路存取 time-format = 日期與時間格式 .twenty-four = 24 小時制 - .show-seconds = 顯示秒數 - .first = 每週第一天 - .show-date = 在時間小程式中顯示日期 + .show-seconds = 秒數 + .show-weekday = 星期幾 + .first = 每週的第一天 + .date = 日期 .friday = 星期五 .saturday = 星期六 .sunday = 星期日 @@ -953,3 +954,11 @@ bluetooth-display-pin = 藍牙配對 .description = 請在 { $device } 上輸入 PIN 碼,然後按 Enter 鍵 rename = 重新命名 bluetooth-rename-device = 重新命名裝置 +mobility = 機動性 +on-screen-keyboard = 螢幕鍵盤 + .always-show = 始終顯示螢幕鍵盤 + .icon-on-panel = 面板上的圖示 + .show-on-gamepad-shortcut = 使用遊戲手把時,同時按下「開始」和「選擇/返回」按鈕,即可顯示螢幕鍵盤 + .show-on-text-input = 選擇文字欄位時顯示螢幕鍵盤 +date-time-applet-settings-title = 日期與時間小程式 +date-time-applet-settings-label = 日期與時間小程式設定 From fd683178a49fd6311f08fb2d36fc037b4060e372 Mon Sep 17 00:00:00 2001 From: Michael Aaron Murphy Date: Mon, 5 Oct 2026 21:27:10 +0200 Subject: [PATCH 5/7] Epoch 1.10.0 version update [x] Generated by cosmic-epoch scripts/version-update.sh --- Cargo.lock | 523 ++++++++++++----------- cosmic-settings/Cargo.toml | 2 +- debian/changelog | 6 + page/Cargo.toml | 2 +- pages/sound/Cargo.toml | 2 +- pages/wallpapers/Cargo.toml | 2 +- subscriptions/a11y-manager/Cargo.toml | 2 +- subscriptions/accessibility/Cargo.toml | 2 +- subscriptions/airplane-mode/Cargo.toml | 2 +- subscriptions/bluetooth/Cargo.toml | 2 +- subscriptions/settings-daemon/Cargo.toml | 2 +- subscriptions/upower/Cargo.toml | 2 +- 12 files changed, 280 insertions(+), 269 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6ba8382..780e512 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -21,7 +21,7 @@ checksum = "366ffbaa4442f4684d91e2cd7c5ea7c4ed8add41959a31447066e279e432b618" [[package]] name = "accesskit" version = "0.22.0" -source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +source = "git+https://github.com/wash2/accesskit?rev=6c20249#6c20249d3b9fd45e7002efad9f6b6171a9257912" dependencies = [ "uuid", ] @@ -29,7 +29,7 @@ dependencies = [ [[package]] name = "accesskit_atspi_common" version = "0.15.0" -source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +source = "git+https://github.com/wash2/accesskit?rev=6c20249#6c20249d3b9fd45e7002efad9f6b6171a9257912" dependencies = [ "accesskit", "accesskit_consumer", @@ -41,7 +41,7 @@ dependencies = [ [[package]] name = "accesskit_consumer" version = "0.32.0" -source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +source = "git+https://github.com/wash2/accesskit?rev=6c20249#6c20249d3b9fd45e7002efad9f6b6171a9257912" dependencies = [ "accesskit", "hashbrown 0.16.1", @@ -50,12 +50,12 @@ dependencies = [ [[package]] name = "accesskit_macos" version = "0.23.0" -source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +source = "git+https://github.com/wash2/accesskit?rev=6c20249#6c20249d3b9fd45e7002efad9f6b6171a9257912" dependencies = [ "accesskit", "accesskit_consumer", "hashbrown 0.16.1", - "objc2 0.5.2", + "objc2 0.5.3", "objc2-app-kit 0.2.2", "objc2-foundation 0.2.2", ] @@ -63,7 +63,7 @@ dependencies = [ [[package]] name = "accesskit_unix" version = "0.18.0" -source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +source = "git+https://github.com/wash2/accesskit?rev=6c20249#6c20249d3b9fd45e7002efad9f6b6171a9257912" dependencies = [ "accesskit", "accesskit_atspi_common", @@ -78,7 +78,7 @@ dependencies = [ [[package]] name = "accesskit_windows" version = "0.30.0" -source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +source = "git+https://github.com/wash2/accesskit?rev=6c20249#6c20249d3b9fd45e7002efad9f6b6171a9257912" dependencies = [ "accesskit", "accesskit_consumer", @@ -91,7 +91,7 @@ dependencies = [ [[package]] name = "accesskit_winit" version = "0.30.0" -source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +source = "git+https://github.com/wash2/accesskit?rev=6c20249#6c20249d3b9fd45e7002efad9f6b6171a9257912" dependencies = [ "accesskit", "accesskit_macos", @@ -224,7 +224,7 @@ dependencies = [ "ndk-context", "ndk-sys", "num_enum", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] @@ -464,7 +464,7 @@ dependencies = [ "futures-lite", "parking", "polling", - "rustix 1.1.4", + "rustix 1.1.5", "slab", "windows-sys 0.61.2", ] @@ -495,18 +495,18 @@ dependencies = [ "cfg-if", "event-listener", "futures-lite", - "rustix 1.1.4", + "rustix 1.1.5", ] [[package]] name = "async-recursion" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" +checksum = "4f8abc12baad266b1c8cec146854c195b5864b4221d4b2ca7296a7ae82d9e451" dependencies = [ "proc-macro2", "quote", - "syn 2.0.119", + "syn 3.0.6", ] [[package]] @@ -521,7 +521,7 @@ dependencies = [ "cfg-if", "futures-core", "futures-io", - "rustix 1.1.4", + "rustix 1.1.5", "signal-hook-registry", "slab", "windows-sys 0.61.2", @@ -541,7 +541,7 @@ checksum = "82f6aeea286b8eb4dd3431a1be1b59d290ace00f5bfd8e2a159bc2a05e2c1667" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -603,7 +603,7 @@ dependencies = [ "derive_utils", "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -640,7 +640,7 @@ dependencies = [ "num-traits", "pastey", "rayon", - "thiserror 2.0.20", + "thiserror 2.0.21", "v_frame", "y4m", ] @@ -797,7 +797,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" dependencies = [ - "objc2 0.5.2", + "objc2 0.5.3", ] [[package]] @@ -806,7 +806,7 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" dependencies = [ - "objc2 0.6.4", + "objc2 0.6.5", ] [[package]] @@ -896,7 +896,7 @@ dependencies = [ [[package]] name = "build_helpers" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#87ab8179e1bd9880239c340855ae8862034bd0e8" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "cfg_aliases 0.2.2", ] @@ -942,7 +942,7 @@ checksum = "6a1f896587b6f2c069c73d2f0913e2d590c3990285cd2f0b6aa02b786b4c679c" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -975,14 +975,13 @@ dependencies = [ [[package]] name = "calloop" -version = "0.14.4" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dbf9978365bac10f54d1d4b04f7ce4427e51f71d61f2fe15e3fed5166474df7" +checksum = "43b32313e937c8721c9d17ee9bf60699a6402b4b7c2cb6ac1bee0ffcaa4b4e5e" dependencies = [ "bitflags 2.13.2", "polling", - "rustix 1.1.4", - "slab", + "rustix 1.1.5", "tracing", ] @@ -993,7 +992,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "138efcf0940a02ebf0cc8d1eff41a1682a46b431630f4c52450d6265876021fa" dependencies = [ "calloop", - "rustix 1.1.4", + "rustix 1.1.5", "wayland-backend", "wayland-client", ] @@ -1009,9 +1008,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.4.6" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3eb0f42d6c360dc3f8a821f6bf2fdea7f72bfd36b3076eb0e6d1e9e0752fff4" +checksum = "f74872d07caf508b30a21f6836e7d7016a2eaf7d9ff4f48deaa58cd8a0407630" dependencies = [ "find-msvc-tools", "jobserver", @@ -1032,9 +1031,9 @@ dependencies = [ [[package]] name = "cfg-expr" -version = "0.20.9" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe4ece8474b5f766c63426647e7b4b316b67431ade1036a8313cee24a03ae917" +checksum = "9ba9e9ec16c447027685b1f897b720e18e9a8afd00bd7332c483537e38086c9f" dependencies = [ "smallvec", "target-lexicon", @@ -1042,9 +1041,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" +checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600" [[package]] name = "cfg_aliases" @@ -1122,7 +1121,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -1213,7 +1212,7 @@ checksum = "fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81" dependencies = [ "serde", "termcolor", - "unicode-width", + "unicode-width 0.2.2", ] [[package]] @@ -1359,7 +1358,7 @@ dependencies = [ [[package]] name = "cosmic-bg-config" version = "1.0.3" -source = "git+https://github.com/pop-os/cosmic-bg#9d82a34dab4e73d90ba66c9f72d18d0f9b8be208" +source = "git+https://github.com/pop-os/cosmic-bg#5b585e2e91b17e84973efe2d4de93b64486f9344" dependencies = [ "cosmic-config", "derive_setters", @@ -1384,7 +1383,7 @@ dependencies = [ [[package]] name = "cosmic-comp-config" version = "1.0.0" -source = "git+https://github.com/pop-os/cosmic-comp#a7349b72e39fd91d7ed25eddb2fa24b900a615d5" +source = "git+https://github.com/pop-os/cosmic-comp#41497b42d9744d9963c4c6d17e8add49489b45ee" dependencies = [ "cosmic-config", "input", @@ -1396,7 +1395,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic#87ab8179e1bd9880239c340855ae8862034bd0e8" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1417,7 +1416,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic#87ab8179e1bd9880239c340855ae8862034bd0e8" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "quote", "syn 2.0.119", @@ -1440,7 +1439,7 @@ dependencies = [ "btoi", "memchr", "memmap2 0.9.11", - "thiserror 2.0.20", + "thiserror 2.0.21", "tracing", "xdg", ] @@ -1448,7 +1447,7 @@ dependencies = [ [[package]] name = "cosmic-idle-config" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-idle#c95d066b5b640509a6369634b669ca60dc50e168" +source = "git+https://github.com/pop-os/cosmic-idle#09e64e7ee2d2414edecba016d462ef31af195ce0" dependencies = [ "cosmic-config", "serde", @@ -1470,7 +1469,7 @@ dependencies = [ [[package]] name = "cosmic-osk-config" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-osk#d7b66a24890d03e38dd8962d956bc802d4a41067" +source = "git+https://github.com/pop-os/cosmic-osk#e1ba4af0c75fd107c5d8d54b613f3137e47e7923" dependencies = [ "cosmic-config", "iced_futures", @@ -1479,8 +1478,8 @@ dependencies = [ [[package]] name = "cosmic-panel-config" -version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-panel#15ba731b0850e5733a1f3bb51d5d48d58e6ce35b" +version = "1.9.0" +source = "git+https://github.com/pop-os/cosmic-panel#f4ba4efb89bf070df91efe291272788e6d009da7" dependencies = [ "anyhow", "cosmic-config", @@ -1508,11 +1507,11 @@ dependencies = [ [[package]] name = "cosmic-randr" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-randr#6e8e795970fa06d434af22775e415b517f7552d3" +source = "git+https://github.com/pop-os/cosmic-randr#cfe8a1be466223840bba68d88c60ec66ed989814" dependencies = [ "cosmic-protocols", "indexmap 2.14.2", - "thiserror 2.0.20", + "thiserror 2.0.21", "tokio", "tracing", "wayland-client", @@ -1522,16 +1521,16 @@ dependencies = [ [[package]] name = "cosmic-randr-shell" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-randr#6e8e795970fa06d434af22775e415b517f7552d3" +source = "git+https://github.com/pop-os/cosmic-randr#cfe8a1be466223840bba68d88c60ec66ed989814" dependencies = [ "kdl", "slotmap", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] name = "cosmic-settings" -version = "1.9.0" +version = "1.10.0" dependencies = [ "accounts-zbus", "anyhow", @@ -1591,7 +1590,7 @@ dependencies = [ "regex", "ron 0.12.2", "rust-embed", - "rustix 1.1.4", + "rustix 1.1.5", "secret-service", "secure-string", "serde", @@ -1619,7 +1618,7 @@ dependencies = [ [[package]] name = "cosmic-settings-a11y-manager-subscription" -version = "1.9.0" +version = "1.10.0" dependencies = [ "cosmic-protocols", "iced_futures", @@ -1632,7 +1631,7 @@ dependencies = [ [[package]] name = "cosmic-settings-accessibility-subscription" -version = "1.9.0" +version = "1.10.0" dependencies = [ "cosmic-dbus-a11y", "futures", @@ -1644,19 +1643,19 @@ dependencies = [ [[package]] name = "cosmic-settings-airplane-mode-subscription" -version = "1.9.0" +version = "1.10.0" dependencies = [ "futures", "iced_futures", "log", - "rustix 1.1.4", + "rustix 1.1.5", "tokio", ] [[package]] name = "cosmic-settings-audio-client" -version = "1.0.0" -source = "git+https://github.com/pop-os/cosmic-settings-daemon#67c995d5e659173352ca0adfb22108ac1bf91f5a" +version = "1.9.0" +source = "git+https://github.com/pop-os/cosmic-settings-daemon#30aecb52621a1e0b8dc1cf5ccaf0555736d6bec4" dependencies = [ "cosmic-settings-audio-core", "dirs", @@ -1671,8 +1670,8 @@ dependencies = [ [[package]] name = "cosmic-settings-audio-core" -version = "1.0.0" -source = "git+https://github.com/pop-os/cosmic-settings-daemon#67c995d5e659173352ca0adfb22108ac1bf91f5a" +version = "1.9.0" +source = "git+https://github.com/pop-os/cosmic-settings-daemon#30aecb52621a1e0b8dc1cf5ccaf0555736d6bec4" dependencies = [ "dirs", "ron 0.12.2", @@ -1682,7 +1681,7 @@ dependencies = [ [[package]] name = "cosmic-settings-bluetooth-subscription" -version = "1.9.0" +version = "1.10.0" dependencies = [ "bluez-zbus", "futures", @@ -1694,8 +1693,8 @@ dependencies = [ [[package]] name = "cosmic-settings-config" -version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-settings-daemon#67c995d5e659173352ca0adfb22108ac1bf91f5a" +version = "1.9.0" +source = "git+https://github.com/pop-os/cosmic-settings-daemon#30aecb52621a1e0b8dc1cf5ccaf0555736d6bec4" dependencies = [ "cosmic-config", "ron 0.11.0", @@ -1715,8 +1714,8 @@ dependencies = [ [[package]] name = "cosmic-settings-daemon-config" -version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-settings-daemon#67c995d5e659173352ca0adfb22108ac1bf91f5a" +version = "1.9.0" +source = "git+https://github.com/pop-os/cosmic-settings-daemon#30aecb52621a1e0b8dc1cf5ccaf0555736d6bec4" dependencies = [ "cosmic-config", "serde", @@ -1724,7 +1723,7 @@ dependencies = [ [[package]] name = "cosmic-settings-daemon-subscription" -version = "1.9.0" +version = "1.10.0" dependencies = [ "futures", "iced_futures", @@ -1736,7 +1735,7 @@ dependencies = [ [[package]] name = "cosmic-settings-page" -version = "1.9.0" +version = "1.10.0" dependencies = [ "derive_setters", "downcast-rs 2.0.2", @@ -1749,7 +1748,7 @@ dependencies = [ [[package]] name = "cosmic-settings-sound" -version = "1.9.0" +version = "1.10.0" dependencies = [ "cosmic-settings-audio-client", "futures", @@ -1760,7 +1759,7 @@ dependencies = [ [[package]] name = "cosmic-settings-upower-subscription" -version = "1.9.0" +version = "1.10.0" dependencies = [ "futures", "iced_futures", @@ -1773,7 +1772,7 @@ dependencies = [ [[package]] name = "cosmic-settings-wallpaper" -version = "1.9.0" +version = "1.10.0" dependencies = [ "cosmic-bg-config", "cosmic-randr-shell", @@ -1817,7 +1816,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "almost", "configparser", @@ -1829,7 +1828,7 @@ dependencies = [ "ron 0.12.2", "serde", "serde_json", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] @@ -2013,7 +2012,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -2035,7 +2034,7 @@ checksum = "2ac7135c3ef02b2f7833bbeb1be5ba7f966dcde8a87c6b87f65a778d71a02785" dependencies = [ "darling_core 0.24.1", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -2094,7 +2093,7 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "10d60334b3b2e7c9d91ef8150abfb6fa4c1c39ebbcf4a81c2e346aad939fee3e" dependencies = [ - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] @@ -2126,7 +2125,7 @@ checksum = "dc05a5d33db20c784f873e84934ad94bb209a090987ac5f62fede2c178234f23" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -2180,7 +2179,7 @@ dependencies = [ "bitflags 2.13.2", "block2 0.6.2", "libc", - "objc2 0.6.4", + "objc2 0.6.5", ] [[package]] @@ -2191,7 +2190,7 @@ checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -2239,7 +2238,7 @@ checksum = "117240f60069e65410b3ae1bb213295bd828f707b5bec6596a1afc8793ce0cbc" [[package]] name = "dpi" version = "0.1.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" [[package]] name = "drm" @@ -2358,7 +2357,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -2454,7 +2453,7 @@ dependencies = [ "document-features", "image", "num-traits", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] @@ -2483,9 +2482,9 @@ dependencies = [ [[package]] name = "find-msvc-tools" -version = "0.1.12" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e0f1c7c3a72c66fd80abe965175f7523475c0489a87d3ff9d6e8c87d87a9d2d" +checksum = "aedcfb3409746eddb02b9e19ebda1c3394f759a152e48ee875a0844d1b955484" [[package]] name = "fixed_decimal" @@ -2572,7 +2571,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "54f0d287c53ffd184d04d8677f590f4ac5379785529e5e08b1c8083acdd5c198" dependencies = [ "memchr", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] @@ -2604,9 +2603,9 @@ dependencies = [ [[package]] name = "font-types" -version = "0.12.5" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8eb065f3251655b3c90e22e5e363f310fc5332fb3402e37bbc94752283248f6" +checksum = "6c92d9081c7ab3bd83ef1eecdfad090f3d966e3ce74106779664114cfe1a6274" dependencies = [ "bytemuck", ] @@ -2652,7 +2651,7 @@ checksum = "ea5190182e6915eb873ddbc16e23b711b6eb1f9c00a0d0a3a91b5f6228475225" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -2680,7 +2679,7 @@ dependencies = [ "gettext-rs 0.8.0", "log", "memchr", - "thiserror 2.0.20", + "thiserror 2.0.21", "unicase", "xdg", ] @@ -2697,9 +2696,9 @@ dependencies = [ [[package]] name = "fs-err" -version = "3.3.1" +version = "3.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b91aa448ca50d7e79433bdf3ee8d99215430d2ec02ade5aefab2a073a1822e8a" +checksum = "b5c95b673b8f6f7235229ae11c5642d81b04c2e64c1e2fb417bc0cf73ca45f29" dependencies = [ "autocfg", "tokio", @@ -2783,7 +2782,7 @@ checksum = "9fb9654ba8355388abeb8dcb4fc62f511300867002afc858860463bdd9fe0c44" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -2837,7 +2836,7 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bd49230192a3797a9a4d6abe9b3eed6f7fa4c8a8a4947977c6f80025f92cbd8" dependencies = [ - "rustix 1.1.4", + "rustix 1.1.5", "windows-link 0.2.1", ] @@ -2969,7 +2968,7 @@ dependencies = [ "hashbrown 0.16.1", "log", "presser", - "thiserror 2.0.20", + "thiserror 2.0.21", "windows 0.62.2", ] @@ -3267,7 +3266,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "build_helpers", "dnd", @@ -3282,14 +3281,14 @@ dependencies = [ "iced_winit", "image", "mime 0.1.0", - "thiserror 2.0.20", + "thiserror 2.0.21", "window_clipboard", ] [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic#87ab8179e1bd9880239c340855ae8862034bd0e8" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "accesskit", "accesskit_winit", @@ -3298,7 +3297,7 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#87ab8179e1bd9880239c340855ae8862034bd0e8" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "bitflags 2.13.2", "build_helpers", @@ -3316,7 +3315,7 @@ dependencies = [ "rustc-hash 2.1.3", "serde", "smol_str", - "thiserror 2.0.20", + "thiserror 2.0.21", "unicode-segmentation", "web-time", "window_clipboard", @@ -3325,7 +3324,7 @@ dependencies = [ [[package]] name = "iced_debug" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "iced_core", "iced_futures", @@ -3335,7 +3334,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#87ab8179e1bd9880239c340855ae8862034bd0e8" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "futures", "iced_core", @@ -3349,7 +3348,7 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "bitflags 2.13.2", "bytemuck", @@ -3363,14 +3362,14 @@ dependencies = [ "lyon_path", "raw-window-handle", "rustc-hash 2.1.3", - "thiserror 2.0.20", + "thiserror 2.0.21", "unicode-segmentation", ] [[package]] name = "iced_program" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "iced_graphics", "iced_runtime", @@ -3379,19 +3378,19 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "iced_graphics", "iced_tiny_skia", "iced_wgpu", "log", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] name = "iced_runtime" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "build_helpers", "bytes", @@ -3401,14 +3400,14 @@ dependencies = [ "iced_core", "iced_futures", "raw-window-handle", - "thiserror 2.0.20", + "thiserror 2.0.21", "window_clipboard", ] [[package]] name = "iced_tiny_skia" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "bytemuck", "cosmic-text", @@ -3425,7 +3424,7 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "as-raw-xcb-connection", "bitflags 2.13.2", @@ -3444,7 +3443,7 @@ dependencies = [ "resvg", "rustc-hash 2.1.3", "rustix 0.38.44", - "thiserror 2.0.20", + "thiserror 2.0.21", "tiny-xlib", "wayland-backend", "wayland-client", @@ -3457,7 +3456,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.2" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "build_helpers", "cosmic-client-toolkit", @@ -3470,7 +3469,7 @@ dependencies = [ "ouroboros", "qrcode", "rustc-hash 2.1.3", - "thiserror 2.0.20", + "thiserror 2.0.21", "unicode-segmentation", "window_clipboard", ] @@ -3478,7 +3477,7 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "build_helpers", "cosmic-client-toolkit", @@ -3494,7 +3493,7 @@ dependencies = [ "raw-window-handle", "rustc-hash 2.1.3", "rustix 0.38.44", - "thiserror 2.0.20", + "thiserror 2.0.21", "wasm-bindgen-futures", "wayland-backend", "wayland-client", @@ -3927,9 +3926,9 @@ dependencies = [ [[package]] name = "icu_time_data" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "005ff86fa5851a77fc0a977b72d717f777bd9230415a247219d7898aefb1517a" +checksum = "d9e21be527807cda7562cbfbdb04179f9cca46c12691d6a8073ffae6cfd7aeec" [[package]] name = "ident_case" @@ -4237,7 +4236,7 @@ dependencies = [ "jni-sys 0.4.1", "log", "simd_cesu8", - "thiserror 2.0.20", + "thiserror 2.0.21", "walkdir", "windows-link 0.2.1", ] @@ -4295,9 +4294,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.105" +version = "0.3.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce57d20d1ea864ce2ac172ab472d409214f4fd359f0b2a2775abdf522e2af99e" +checksum = "7883d941dae510fb2d978fc3fe018c71c9e2892fd38854de3e8b92c2e5ad9cc5" dependencies = [ "cfg-if", "futures-util", @@ -4583,9 +4582,9 @@ dependencies = [ [[package]] name = "lazy_static" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +checksum = "20870f649af7073d53e38067b2a84312175d56ea15217e1b15bc83506ec50afb" [[package]] name = "lebe" @@ -4595,14 +4594,14 @@ checksum = "7a79a3332a6609480d7d0c9eab957bca6b455b91bb84e66d19f5ff66294b85b8" [[package]] name = "libc" -version = "0.2.189" +version = "0.2.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2" +checksum = "ce5d3ddc6d3fa000eb1536d85e147bfe31aacaba692ed6a876f95cb7c855be78" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic#d77e99fb1555e2728297677de61e23ada4d9d09b" +source = "git+https://github.com/pop-os/libcosmic#5a8bd9482a35ae94c1e54edf77b331c6b970f170" dependencies = [ "apply", "ashpd 0.12.3", @@ -4644,12 +4643,12 @@ dependencies = [ "ron 0.12.2", "roxmltree", "rust-embed", - "rustix 1.1.4", + "rustix 1.1.5", "serde", "shlex 1.3.0", "slotmap", "taffy", - "thiserror 2.0.20", + "thiserror 2.0.21", "tokio", "tracing", "unicode-segmentation", @@ -4685,9 +4684,9 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.24" +version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6480ccc157a1389bb2e4891b24751b0f798ba640d22386f23143fbcc89da195a" +checksum = "61ff90caf6077a803a240f62fdbe88645a890bbca49ef8174c3cb0404362171d" dependencies = [ "bitflags 2.13.2", "libc", @@ -4779,7 +4778,7 @@ dependencies = [ "fs-err", "serde", "serde_json", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] @@ -4958,7 +4957,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f98efec8807c63c752b5bd61f862c165c115b0a35685bdcfd9238c7aeb592b7" dependencies = [ "cfg-if", - "unicode-width", + "unicode-width 0.1.14", ] [[package]] @@ -5007,9 +5006,9 @@ dependencies = [ [[package]] name = "mio" -version = "1.2.3" +version = "1.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b18443e9c262bfe8fa82f51666e2642c53393f7e5c27b3e1aeab922cff5b9d8" +checksum = "1788edb87fdc09c7e26304471e2f5be8cdefb1b6930d6e3985fc02ff53bf86ee" dependencies = [ "libc", "log", @@ -5069,7 +5068,7 @@ dependencies = [ "once_cell", "rustc-hash 1.1.0", "spirv", - "thiserror 2.0.20", + "thiserror 2.0.21", "unicode-ident", ] @@ -5111,9 +5110,9 @@ checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] name = "nmrs" -version = "3.5.3" +version = "3.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83ad7c7fb5d3552a6b08801a6fe858ec4e3af49be51b53cba51fa6615155f3f3" +checksum = "d85b4f3e82a7d5d97bd6db2e37e650f8334f2996bd9c81c7a4b350d4a35be671" dependencies = [ "async-trait", "base64 0.22.1", @@ -5122,7 +5121,7 @@ dependencies = [ "futures-timer", "log", "serde", - "thiserror 2.0.20", + "thiserror 2.0.21", "tokio", "uuid", "zbus", @@ -5339,9 +5338,9 @@ checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" [[package]] name = "objc2" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" +checksum = "19d5490aaf8f1d7cf7688dfa9b0ce07900e168852c45cd2c03f534dfd27cfd0b" dependencies = [ "objc-sys", "objc2-encode", @@ -5349,9 +5348,9 @@ dependencies = [ [[package]] name = "objc2" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a12a8ed07aefc768292f076dc3ac8c48f3781c8f2d5851dd3d98950e8c5a89f" +checksum = "08849bbd4767dfae9457696856ae1c84fe4e0281bbe4a7abff2d0e06fb7981f8" dependencies = [ "objc2-encode", ] @@ -5365,7 +5364,7 @@ dependencies = [ "bitflags 2.13.2", "block2 0.5.1", "libc", - "objc2 0.5.2", + "objc2 0.5.3", "objc2-core-data", "objc2-core-image", "objc2-foundation 0.2.2", @@ -5380,7 +5379,7 @@ checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c" dependencies = [ "bitflags 2.13.2", "block2 0.6.2", - "objc2 0.6.4", + "objc2 0.6.5", "objc2-core-foundation", "objc2-foundation 0.3.2", ] @@ -5393,7 +5392,7 @@ checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" dependencies = [ "bitflags 2.13.2", "block2 0.5.1", - "objc2 0.5.2", + "objc2 0.5.3", "objc2-foundation 0.2.2", ] @@ -5406,7 +5405,7 @@ dependencies = [ "bitflags 2.13.2", "block2 0.6.2", "dispatch2", - "objc2 0.6.4", + "objc2 0.6.5", ] [[package]] @@ -5427,7 +5426,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80" dependencies = [ "block2 0.5.1", - "objc2 0.5.2", + "objc2 0.5.3", "objc2-foundation 0.2.2", "objc2-metal", ] @@ -5458,7 +5457,7 @@ dependencies = [ "bitflags 2.13.2", "block2 0.5.1", "libc", - "objc2 0.5.2", + "objc2 0.5.3", ] [[package]] @@ -5469,7 +5468,7 @@ checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" dependencies = [ "bitflags 2.13.2", "block2 0.6.2", - "objc2 0.6.4", + "objc2 0.6.5", "objc2-core-foundation", ] @@ -5491,7 +5490,7 @@ checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" dependencies = [ "bitflags 2.13.2", "block2 0.5.1", - "objc2 0.5.2", + "objc2 0.5.3", "objc2-foundation 0.2.2", ] @@ -5503,7 +5502,7 @@ checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" dependencies = [ "bitflags 2.13.2", "block2 0.5.1", - "objc2 0.5.2", + "objc2 0.5.3", "objc2-foundation 0.2.2", "objc2-metal", ] @@ -5515,7 +5514,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d87d638e33c06f577498cbcc50491496a3ed4246998a7fbba7ccb98b1e7eab22" dependencies = [ "bitflags 2.13.2", - "objc2 0.6.4", + "objc2 0.6.5", "objc2-core-foundation", "objc2-foundation 0.3.2", ] @@ -5787,9 +5786,9 @@ checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" [[package]] name = "pin-utils" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +checksum = "13bee6c73da26345c729282832b60b0363cf3dd9f4bfd81d8551b7a1c889a113" [[package]] name = "piper" @@ -5850,7 +5849,7 @@ dependencies = [ "concurrent-queue", "hermit-abi 0.5.3", "pin-project-lite", - "rustix 1.1.4", + "rustix 1.1.5", "windows-sys 0.61.2", ] @@ -5888,9 +5887,9 @@ dependencies = [ [[package]] name = "powerfmt" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" +checksum = "4a6394b9e965e73d0a289ee54f589087e2c676aedf60885baf52c76b771e4958" [[package]] name = "ppv-lite86" @@ -5935,7 +5934,7 @@ dependencies = [ "proc-macro-error-attr3", "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -6175,7 +6174,7 @@ dependencies = [ "rand 0.9.5", "rand_chacha 0.9.0", "simd_helpers", - "thiserror 2.0.20", + "thiserror 2.0.21", "v_frame", "wasm-bindgen", ] @@ -6248,7 +6247,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "046a7d674daf459825b32f5062056d6882db0d2f5a479fbd76ccfc870ac18709" dependencies = [ "bytemuck", - "font-types 0.12.5", + "font-types 0.12.6", "once_cell", ] @@ -6288,13 +6287,12 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" +checksum = "60dc65c0ff1a7ae1294b0c67b9f14baf70b644404010370171787bfac1038fc0" dependencies = [ - "getrandom 0.2.17", "libredox", - "thiserror 2.0.20", + "thiserror 2.0.21", ] [[package]] @@ -6314,7 +6312,7 @@ checksum = "92ecd8964f8453721699a1ed72037b0db49ce2f5a5138486ee89bed6f67cdf3a" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -6380,7 +6378,7 @@ dependencies = [ "dispatch2", "js-sys", "log", - "objc2 0.6.4", + "objc2 0.6.5", "objc2-app-kit 0.3.2", "objc2-core-foundation", "objc2-foundation 0.3.2", @@ -6507,20 +6505,20 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.4.15", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "rustix" -version = "1.1.4" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" +checksum = "891efababe418670775f199f0d233d84843c227a0949a883ce15b37c78d6629d" dependencies = [ "bitflags 2.13.2", "errno", "libc", "linux-raw-sys 0.12.1", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -6691,7 +6689,7 @@ checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -6716,7 +6714,7 @@ checksum = "8d3b1629de253c70a0508c3899572da79ca359fdab27c7920ff00406df418906" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -6730,9 +6728,9 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.23.0" +version = "3.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "935177bb8c0cd8ca1a4e6d1a2ac8988bea69cab4f9d3a31311e012ad27868ea4" +checksum = "df9adc193c780ef8f159aee8b61e2d5801aaa555e6eb0947fe45530ec506296f" dependencies = [ "base64 0.23.1", "bs58", @@ -6751,14 +6749,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.23.0" +version = "3.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d607aa01a3cb0ad757d6fd216136910db3c97b102fe686585689615a02dbcdc" +checksum = "3e17bbc68e28663bbbb90df47e058aa7eda4fb445b89fe70457bb94fbccf6e49" dependencies = [ "darling 0.24.1", "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -6877,9 +6875,9 @@ dependencies = [ [[package]] name = "siphasher" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649" +checksum = "33f4fe9184a62d842c9ef383018f3306d8ba224fd9d836f56d7288308847c256" [[package]] name = "skrifa" @@ -6918,9 +6916,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.16.1" +version = "1.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba467056f1b547ed52077911161fc86985becbc60e8e1857c8a144dab0def891" +checksum = "f9395f0f0eee849a9b707b2f06bb92a6a422090e2123bb2ef8e87a0e61892a8e" [[package]] name = "smithay-client-toolkit" @@ -6937,8 +6935,8 @@ dependencies = [ "log", "memmap2 0.9.11", "pkg-config", - "rustix 1.1.4", - "thiserror 2.0.20", + "rustix 1.1.5", + "thiserror 2.0.21", "wayland-backend", "wayland-client", "wayland-csd-frame", @@ -7143,9 +7141,9 @@ dependencies = [ [[package]] name = "syn" -version = "3.0.5" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12df2e0110f65b775f769bb17ef989067a1d931b2eb822bd4346631eeada89f9" +checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee" dependencies = [ "proc-macro2", "quote", @@ -7154,13 +7152,13 @@ dependencies = [ [[package]] name = "synstructure" -version = "0.13.2" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" +checksum = "901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02" dependencies = [ "proc-macro2", "quote", - "syn 2.0.119", + "syn 3.0.6", ] [[package]] @@ -7232,8 +7230,8 @@ dependencies = [ "fastrand", "getrandom 0.4.3", "once_cell", - "rustix 1.1.4", - "windows-sys 0.52.0", + "rustix 1.1.5", + "windows-sys 0.61.2", ] [[package]] @@ -7256,11 +7254,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.20" +version = "2.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f" +checksum = "09e52cb86a36cede5cb101bf8908837b3e4c6e5e59fe7fd85c23fb56200d189e" dependencies = [ - "thiserror-impl 2.0.20", + "thiserror-impl 2.0.21", ] [[package]] @@ -7276,13 +7274,13 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.20" +version = "2.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af" +checksum = "fe5197923287db20a58125f0bc85c062f7f2c892de97b18c356f9efb14b28524" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -7415,9 +7413,9 @@ checksum = "fd3ca314f692efd6c868f8408f53fe444634a845f96c028b97d35f6a1f79f0ee" [[package]] name = "tokio" -version = "1.53.1" +version = "1.53.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "202caea871b69668250d242070849eb495be178ed697a3e98aebce5bc81a0bed" +checksum = "e95f91fcc7a621e8b030f6aa23c71fe9838ae2fb4d8118b75602a328f5144044" dependencies = [ "bytes", "libc", @@ -7438,7 +7436,7 @@ checksum = "78773a2a397f451582ce068015985c33193cf6dea8b74d2a639fe457b2f07b0e" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] @@ -7682,9 +7680,9 @@ dependencies = [ [[package]] name = "unicase" -version = "2.9.0" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" +checksum = "357cc3acc6a036009fd6c973ed009037c732d60d0b4f6c673e9041497482a28f" [[package]] name = "unicode-bidi" @@ -7706,9 +7704,9 @@ checksum = "ce61d488bcdc9bc8b5d1772c404828b17fc481c0a582b5581e95fb233aef503e" [[package]] name = "unicode-ident" -version = "1.0.24" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" +checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954" [[package]] name = "unicode-linebreak" @@ -7746,6 +7744,12 @@ version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" +[[package]] +name = "unicode-width" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" + [[package]] name = "upower_dbus" version = "0.3.2" @@ -7822,9 +7826,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.26.1" +version = "1.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ef6dac1e96601b4fb3acccccff2139741fcb757cb9a36089bf5be91cfb285ce" +checksum = "97277d36b9c3ace13e58fa6e753f8b0bbbf302a18dd193240d70f9e29681059a" dependencies = [ "getrandom 0.4.3", "js-sys", @@ -7889,9 +7893,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.128" +version = "0.2.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aecb87a33d3b0c5e3b7aa46336eaf486cffafbd281b195e4c8b80d50df2351bf" +checksum = "9bb54f33acc68fd454578d9820b0bde1a1a3d17aa17bb7b6595806d02886d409" dependencies = [ "cfg-if", "once_cell", @@ -7902,19 +7906,20 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.78" +version = "0.4.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ef4c5d3d2cdf5c54f4231181768f5510842e350db025faf1f7163b1030ed928" +checksum = "3cbab34de2d982e9b48e18d216d04c4a6f641066ff19ffb699980f591ee3610e" dependencies = [ "js-sys", + "tokio", "wasm-bindgen", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.128" +version = "0.2.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a690d511e3c1a8b3a55e33511e3c2c00c78415cd23650f32b808627f5696b9ed" +checksum = "2e29d0c35b16e224a7eeb5cd2d25e3e1968fbd65604117b44d3b789d00ee8535" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7922,22 +7927,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.128" +version = "0.2.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "411e4887f0071ef2d2164a9d5fdf2d20efbef78fccd3a78b0c10a1dc5295e48a" +checksum = "6f501a8bc3719dba86ef8ae4728879c08001bea749eb1333ac5b91e040e2a6b7" dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.128" +version = "0.2.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81941cd78d0c92026c33e5e01312845a4cb1e9af3407f9134b100dd03144103e" +checksum = "23f0c9c52aa7cd7d77769a4cfe2a9adb1b331f489a41d912ce14513d5ab995c6" dependencies = [ "unicode-ident", ] @@ -7964,7 +7969,7 @@ checksum = "38a91b4eaddff87b1cd1074985e3713da4af2c49742d1b356b2c01670a67a078" dependencies = [ "cc", "downcast-rs 1.2.1", - "rustix 1.1.4", + "rustix 1.1.5", "scoped-tls", "smallvec", "wayland-sys", @@ -7977,7 +7982,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3c36a0f861ad76d0901f2800b46321410d9f73f2ea88aac0650d86c32688073" dependencies = [ "bitflags 2.13.2", - "rustix 1.1.4", + "rustix 1.1.5", "wayland-backend", "wayland-scanner", ] @@ -7999,7 +8004,7 @@ version = "0.31.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a52d18780be9b1314328a3de5f930b73d2200112e3849ca6cb11822793fb34d" dependencies = [ - "rustix 1.1.4", + "rustix 1.1.5", "wayland-client", "xcursor", ] @@ -8089,7 +8094,7 @@ checksum = "0dde9c29be0f723a573977de51ee455bf3dfa03652730a74f9dd3b337e374d75" dependencies = [ "bitflags 2.13.2", "downcast-rs 1.2.1", - "rustix 1.1.4", + "rustix 1.1.5", "wayland-backend", "wayland-scanner", ] @@ -8108,9 +8113,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.105" +version = "0.3.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fbddc4a036f00ec4f18c83445bd3115cb306a91da554919a099d9222fe4a7f8" +checksum = "88261b9deccee56594c11a3460c462c41f58d148598fe70ad77070126a68aba4" dependencies = [ "js-sys", "wasm-bindgen", @@ -8186,7 +8191,7 @@ dependencies = [ "raw-window-handle", "rustc-hash 1.1.0", "smallvec", - "thiserror 2.0.20", + "thiserror 2.0.21", "wgpu-core-deps-apple", "wgpu-core-deps-emscripten", "wgpu-core-deps-windows-linux-android", @@ -8261,7 +8266,7 @@ dependencies = [ "raw-window-handle", "renderdoc-sys", "smallvec", - "thiserror 2.0.20", + "thiserror 2.0.21", "wasm-bindgen", "web-sys", "wgpu-types", @@ -8313,7 +8318,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -8770,7 +8775,7 @@ checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winit" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "bitflags 2.13.2", "cfg_aliases 0.2.2", @@ -8778,7 +8783,7 @@ dependencies = [ "dpi", "libc", "raw-window-handle", - "rustix 1.1.4", + "rustix 1.1.5", "smol_str", "tracing", "winit-android", @@ -8796,7 +8801,7 @@ dependencies = [ [[package]] name = "winit-android" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "android-activity", "bitflags 2.13.2", @@ -8811,13 +8816,13 @@ dependencies = [ [[package]] name = "winit-appkit" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "bitflags 2.13.2", "block2 0.6.2", "dispatch2", "dpi", - "objc2 0.6.4", + "objc2 0.6.5", "objc2-app-kit 0.3.2", "objc2-core-foundation", "objc2-core-graphics", @@ -8833,10 +8838,10 @@ dependencies = [ [[package]] name = "winit-common" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "memmap2 0.9.11", - "objc2 0.6.4", + "objc2 0.6.5", "objc2-core-foundation", "smol_str", "tracing", @@ -8848,7 +8853,7 @@ dependencies = [ [[package]] name = "winit-core" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "bitflags 2.13.2", "cursor-icon", @@ -8862,7 +8867,7 @@ dependencies = [ [[package]] name = "winit-orbital" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "bitflags 2.13.2", "dpi", @@ -8878,13 +8883,13 @@ dependencies = [ [[package]] name = "winit-uikit" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "bitflags 2.13.2", "block2 0.6.2", "dispatch2", "dpi", - "objc2 0.6.4", + "objc2 0.6.5", "objc2-core-foundation", "objc2-foundation 0.3.2", "objc2-ui-kit", @@ -8898,7 +8903,7 @@ dependencies = [ [[package]] name = "winit-wayland" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "ahash", "bitflags 2.13.2", @@ -8908,7 +8913,7 @@ dependencies = [ "libc", "memmap2 0.9.11", "raw-window-handle", - "rustix 1.1.4", + "rustix 1.1.5", "sctk-adwaita", "smithay-client-toolkit", "smol_str", @@ -8924,7 +8929,7 @@ dependencies = [ [[package]] name = "winit-web" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "atomic-waker", "bitflags 2.13.2", @@ -8946,7 +8951,7 @@ dependencies = [ [[package]] name = "winit-win32" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "bitflags 2.13.2", "cursor-icon", @@ -8962,7 +8967,7 @@ dependencies = [ [[package]] name = "winit-x11" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#71ce08c043814514a8fd92d9d0599f115ae854e8" +source = "git+https://github.com/pop-os/winit.git?rev=9567503#9567503d34130113e36b0167a2b8829c3756e429" dependencies = [ "bitflags 2.13.2", "bytemuck", @@ -8972,7 +8977,7 @@ dependencies = [ "libc", "percent-encoding", "raw-window-handle", - "rustix 1.1.4", + "rustix 1.1.5", "smol_str", "tracing", "winit-common", @@ -9043,7 +9048,7 @@ dependencies = [ "libc", "libloading", "once_cell", - "rustix 1.1.4", + "rustix 1.1.5", "x11rb-protocol", "xcursor", ] @@ -9068,8 +9073,8 @@ checksum = "2fb433233f2df9344722454bc7e96465c9d03bff9d77c248f9e7523fe79585b5" [[package]] name = "xdg-shell-wrapper-config" -version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-panel#15ba731b0850e5733a1f3bb51d5d48d58e6ce35b" +version = "1.9.0" +source = "git+https://github.com/pop-os/cosmic-panel#f4ba4efb89bf070df91efe291272788e6d009da7" dependencies = [ "serde", "wayland-protocols-wlr", @@ -9210,13 +9215,13 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.2" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" +checksum = "ec8ebde2db3681e8c9980cc27822030e68752690ddfa9473e739aeb4dbde6d71" dependencies = [ "proc-macro2", "quote", - "syn 2.0.119", + "syn 3.0.6", "synstructure", ] @@ -9242,7 +9247,7 @@ dependencies = [ "hex", "libc", "ordered-stream", - "rustix 1.1.4", + "rustix 1.1.5", "serde", "serde_repr", "tokio", @@ -9289,7 +9294,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", "zbus_names", "zvariant", "zvariant_utils", @@ -9348,18 +9353,18 @@ checksum = "6df3dc4292935e51816d896edcd52aa30bc297907c26167fec31e2b0c6a32524" [[package]] name = "zerocopy" -version = "0.8.57" +version = "0.8.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d35102a9f36d089ccae9e4c6802bc118be4487b80aaffc0ab4e0cf5ce92d2873" +checksum = "6df92bf3d9227be3d53173901ddbffac2babc27ae50f397776ffd6dc33f800cb" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.57" +version = "0.8.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c01f5ab44258da43cf276c74a2763db2ff3969c9c652c3f2de07041d0b2bc" +checksum = "ac4f328cf2f05d084e496c3e9c3f33ed0a183656a16e1fcec4d464d8373aec82" dependencies = [ "proc-macro2", "quote", @@ -9377,13 +9382,13 @@ dependencies = [ [[package]] name = "zerofrom-derive" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" +checksum = "f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.119", + "syn 3.0.6", "synstructure", ] @@ -9425,14 +9430,14 @@ checksum = "34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da" dependencies = [ "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", ] [[package]] name = "zlib-rs" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34b31d188d9d685a4f9c7b46d6e36631b07058d2cfe190267adce54dc230bf12" +checksum = "b268e58e7c693d7c271f93ffc4ba3b380412554231c85bf61ca7af91042a4112" [[package]] name = "zlink" @@ -9454,7 +9459,7 @@ dependencies = [ "itoa", "libc", "pin-project-lite", - "rustix 1.1.4", + "rustix 1.1.5", "ryu", "serde", "serde_json", @@ -9571,7 +9576,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 3.0.5", + "syn 3.0.6", "zvariant_utils", ] @@ -9584,6 +9589,6 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 3.0.5", + "syn 3.0.6", "winnow 1.0.4", ] diff --git a/cosmic-settings/Cargo.toml b/cosmic-settings/Cargo.toml index 80ffb46..50511b8 100644 --- a/cosmic-settings/Cargo.toml +++ b/cosmic-settings/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings" -version = "1.9.0" +version = "1.10.0" edition = "2024" license = "GPL-3.0-only" publish = false diff --git a/debian/changelog b/debian/changelog index 0675461..225784d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cosmic-settings (1.10.0) noble; urgency=medium + + * Epoch 1.10.0 version update + + -- Michael Murphy Mon, 05 Oct 2026 21:26:47 +0200 + cosmic-settings (1.9.0) noble; urgency=medium * Epoch 1.9.0 version update diff --git a/page/Cargo.toml b/page/Cargo.toml index 464876e..a4f393c 100644 --- a/page/Cargo.toml +++ b/page/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-page" -version = "1.9.0" +version = "1.10.0" edition = "2024" [dependencies] diff --git a/pages/sound/Cargo.toml b/pages/sound/Cargo.toml index 62d5384..c0dff7d 100644 --- a/pages/sound/Cargo.toml +++ b/pages/sound/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-sound" -version = "1.9.0" +version = "1.10.0" edition = "2024" rust-version.workspace = true diff --git a/pages/wallpapers/Cargo.toml b/pages/wallpapers/Cargo.toml index d6daf6f..a7091bc 100644 --- a/pages/wallpapers/Cargo.toml +++ b/pages/wallpapers/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-wallpaper" -version = "1.9.0" +version = "1.10.0" edition = "2024" rust-version.workspace = true diff --git a/subscriptions/a11y-manager/Cargo.toml b/subscriptions/a11y-manager/Cargo.toml index c3a271c..ece5a67 100644 --- a/subscriptions/a11y-manager/Cargo.toml +++ b/subscriptions/a11y-manager/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-a11y-manager-subscription" -version = "1.9.0" +version = "1.10.0" edition = "2024" license = "MPL-2.0" rust-version.workspace = true diff --git a/subscriptions/accessibility/Cargo.toml b/subscriptions/accessibility/Cargo.toml index dc5fe5c..bfc9fb5 100644 --- a/subscriptions/accessibility/Cargo.toml +++ b/subscriptions/accessibility/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-accessibility-subscription" -version = "1.9.0" +version = "1.10.0" edition = "2024" license = "MPL-2.0" rust-version.workspace = true diff --git a/subscriptions/airplane-mode/Cargo.toml b/subscriptions/airplane-mode/Cargo.toml index 884ff4d..021dbfa 100644 --- a/subscriptions/airplane-mode/Cargo.toml +++ b/subscriptions/airplane-mode/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-airplane-mode-subscription" -version = "1.9.0" +version = "1.10.0" edition = "2024" license = "MPL-2.0" rust-version.workspace = true diff --git a/subscriptions/bluetooth/Cargo.toml b/subscriptions/bluetooth/Cargo.toml index 769d134..e9cbd9d 100644 --- a/subscriptions/bluetooth/Cargo.toml +++ b/subscriptions/bluetooth/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-bluetooth-subscription" -version = "1.9.0" +version = "1.10.0" edition = "2024" license = "MPL-2.0" rust-version.workspace = true diff --git a/subscriptions/settings-daemon/Cargo.toml b/subscriptions/settings-daemon/Cargo.toml index 1936604..42cb0a0 100644 --- a/subscriptions/settings-daemon/Cargo.toml +++ b/subscriptions/settings-daemon/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-daemon-subscription" -version = "1.9.0" +version = "1.10.0" edition = "2024" rust-version.workspace = true publish = true diff --git a/subscriptions/upower/Cargo.toml b/subscriptions/upower/Cargo.toml index 4525482..f94c9f0 100644 --- a/subscriptions/upower/Cargo.toml +++ b/subscriptions/upower/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-settings-upower-subscription" -version = "1.9.0" +version = "1.10.0" edition = "2024" license = "MPL-2.0" rust-version.workspace = true From 8940ec1af6c067b6ccec483b844548ad6e37f041 Mon Sep 17 00:00:00 2001 From: blakewilliams1 Date: Wed, 7 Oct 2026 07:33:35 -0700 Subject: [PATCH 6/7] First pass at drawing tablet settings page (#2220) This is a first pass at creating a page dedicated for controlling the settings of tablet/pen style input devices. It's purpose is to modify the config file found at `/home/$USER/.config/cosmic/com.system76.CosmicComp/v1/input_devices`, so that the Compositor can route incoming input events to the correct displays and the events don't get discarded. Here's a video showing the functionality: As this is a first pass at the page, it naturally isn't in a fully featured state. It only is doing the bare minimum to get tablet input to not be discarded. There are 2 limitations I'd like to call out with this current state: **1)** The settings page will only show settings options for tablet/pen style input devices that currently plugged in. It doesn't have ability to allow users to clear out stale config entries for old tablets they might not be using anymore. They'll need to manually delete the entries from `input_devices` with a text editor. **2)** The list of drawing tablets present is calculated once when you open the settings application and doesn't live reload as devices are connected or disconnected. - [X] I have disclosed use of any AI generated code in my commit messages. - If you are using an LLM, and do not fully understand the changes it is making to the code base, do not create a PR. - In our experience, AI generated code often results in overly complex code that lacks enough context for a proper fix or feature inclusion. This results in considerably longer code reviews. Due to this, AI authored or partially authored PRs may be closed without comment. - [X] I understand these changes in full and will be able to respond to review comments. - [X] My change is accurately described in the commit message. - [X] My contribution is tested and working as described. - [X] I have read the [Developer Certificate of Origin](https://developercertificate.org/) and certify my contribution under its conditions. --------- Co-authored-by: Levi Portenier --- cosmic-settings/src/app.rs | 7 + .../src/pages/input/drawing_tablet.rs | 411 ++++++++++++++++++ cosmic-settings/src/pages/input/mod.rs | 6 +- cosmic-settings/src/pages/mod.rs | 2 + i18n/en/cosmic_settings.ftl | 12 + 5 files changed, 437 insertions(+), 1 deletion(-) create mode 100644 cosmic-settings/src/pages/input/drawing_tablet.rs diff --git a/cosmic-settings/src/app.rs b/cosmic-settings/src/app.rs index e002ec9..b77f643 100644 --- a/cosmic-settings/src/app.rs +++ b/cosmic-settings/src/app.rs @@ -510,6 +510,13 @@ impl cosmic::Application for SettingsApp { } } + #[cfg(feature = "page-input")] + crate::pages::Message::DrawingTablet(message) => { + if let Some(page) = self.pages.page_mut::() { + return page.update(message).map(Into::into); + } + } + #[cfg(feature = "page-input")] crate::pages::Message::Keyboard(message) => { if let Some(page) = self.pages.page_mut::() { diff --git a/cosmic-settings/src/pages/input/drawing_tablet.rs b/cosmic-settings/src/pages/input/drawing_tablet.rs new file mode 100644 index 0000000..0c466ca --- /dev/null +++ b/cosmic-settings/src/pages/input/drawing_tablet.rs @@ -0,0 +1,411 @@ +// Copyright 2023 System76 +// SPDX-License-Identifier: GPL-3.0-only +use std::collections::HashMap; + +use cosmic::cosmic_config::{ConfigGet, ConfigSet}; +use cosmic::iced::Subscription; +use cosmic::iced::stream; +use cosmic::widget::{dropdown, settings}; +use cosmic::{Apply, Element, Task}; +use cosmic_comp_config::input::{DeviceState, InputConfig}; +use cosmic_settings_page::{self as page, Section, section}; +use futures::SinkExt; +use slotmap::{Key, SlotMap}; +use udev::Enumerator; + +pub fn default_drawing_tablet_button() -> cosmic::widget::segmented_button::SingleSelectModel { + let mut model = cosmic::widget::segmented_button::SingleSelectModel::builder().build(); + model.activate_position(0); + model +} + +#[derive(Clone, Debug)] +pub enum Message { + SetTabletDeviceState(String, bool), + SetTabletOutput(String, Option), + Surface(cosmic::surface::Action), + RefreshTablets, + RefreshDisplays, +} + +impl From for crate::pages::Message { + fn from(message: Message) -> Self { + crate::pages::Message::DrawingTablet(message) + } +} + +pub struct Page { + entity: page::Entity, + connected_tablets: HashMap>, + connected_displays: Vec, + saved_input_devices: HashMap, + tablet_config: cosmic_config::Config, +} + +pub fn get_connected_tablets() -> HashMap> { + let mut tablets = HashMap::new(); + let Ok(mut device_scanner) = Enumerator::new() else { + return tablets; + }; + + if device_scanner.match_subsystem("input").is_err() { + return tablets; + } + + let Ok(devices) = device_scanner.scan_devices() else { + return tablets; + }; + + for device in devices { + if device + .property_value("ID_INPUT_TABLET") + .is_some_and(|v| v == "1") + { + let physical_device_id = get_physical_device_id(&device); + + let device_name = device.property_value("NAME"); + if !device_name.is_some() { + continue; + } + + tablets.entry(physical_device_id).or_default().push(device); + } + } + + tablets +} + +pub fn get_physical_device_id(device: &udev::Device) -> String { + if let Some(group) = device.property_value("LIBINPUT_DEVICE_GROUP") { + return group.to_string_lossy().into_owned(); + } + + let mut curr = Some(device.clone()); + while let Some(dev) = curr { + if dev.devtype().is_some_and(|t| t == "usb_device") { + return dev.syspath().to_string_lossy().into_owned(); + } + curr = dev.parent(); + } + + device.syspath().to_string_lossy().into_owned() +} + +pub fn get_pen_interface(devices: &Vec) -> Option<&udev::Device> { + devices.into_iter().find(|device| { + let is_tablet = device + .property_value("ID_INPUT_TABLET") + .is_some_and(|v| v == "1"); + + let is_pad = device + .property_value("ID_INPUT_TABLET_PAD") + .is_some_and(|v| v == "1"); + let is_touchpad = device + .property_value("ID_INPUT_TOUCHPAD") + .is_some_and(|v| v == "1"); + + is_tablet && !is_pad && !is_touchpad + }) +} + +pub fn get_connected_displays() -> Vec { + let mut displays: Vec = futures::executor::block_on(async { + cosmic_randr_shell::list() + .await + .map(|l| l.outputs.values().map(|o| o.name.clone()).collect()) + .unwrap_or_default() + }); + + displays.insert(0, fl!("drawing-tablet", "not-set")); + + displays +} + +impl Default for Page { + fn default() -> Self { + let tablet_config = cosmic_config::Config::new("com.system76.CosmicComp", 1).unwrap(); + let saved_input_devices: HashMap = tablet_config + .get("saved_input_devices") + .unwrap_or_else(|_| HashMap::new()); + + let connected_tablets = get_connected_tablets(); + let connected_displays = get_connected_displays(); + + Page { + entity: page::Entity::null(), + connected_tablets, + connected_displays, + saved_input_devices, + tablet_config, + } + } +} + +impl page::Page for Page { + fn set_id(&mut self, entity: page::Entity) { + self.entity = entity; + } + + fn content( + &self, + sections: &mut SlotMap>, + ) -> Option { + let devices_section = Section::default().view::(move |_binder, page, section| { + if page.connected_tablets.is_empty() { + settings::section() + .title(§ion.title) + .add( + settings::item::builder(fl!("drawing-tablet", "no-devices-detected")) + .control(cosmic::widget::space()), + ) + .apply(Element::from) + .map(crate::pages::Message::DrawingTablet) + } else { + let mut sections_column = Vec::new(); + for tablet in page.connected_tablets.values() { + if let Some(pen_interface) = get_pen_interface(tablet) { + if let Some(pen_name) = pen_interface.property_value("NAME") { + let tablet_device_name = + pen_name.to_string_lossy().trim_matches('"').to_owned(); + sections_column.push(tablet_settings_ui(tablet_device_name, page)); + } + } + } + settings::view_column(sections_column).apply(Element::from) + } + }); + + Some(vec![sections.insert(devices_section)]) + } + + fn info(&self) -> page::Info { + page::Info::new("drawing-tablet", "input-tablet-symbolic") + .title(fl!("drawing-tablet")) + .description(fl!("xdg-entry-drawing-tablet-comment")) + } + + fn on_enter(&mut self) -> Task { + Task::none() + } + + fn subscription(&self, _core: &cosmic::Core) -> Subscription { + let tablet_subscription = Subscription::run(|| { + stream::channel( + 1, + move |mut emitter: futures::channel::mpsc::Sender| async move { + let (tx, mut rx) = tokio::sync::mpsc::channel(1); + + let tokio_handle = tokio::runtime::Handle::current(); + std::thread::spawn(move || { + tokio_handle.block_on(async move { + let Ok(builder) = udev::MonitorBuilder::new() else { + return; + }; + + let Ok(builder) = builder.match_subsystem("input") else { + return; + }; + + let Ok(socket) = builder.listen() else { + return; + }; + + let Ok(mut async_fd) = tokio::io::unix::AsyncFd::new(socket) else { + return; + }; + + loop { + if let Ok(mut guard) = async_fd.writable().await { + guard.clear_ready(); + + let input_event_occurred = &mut false; + async_fd.get_mut().iter().for_each(|event| { + let event_type = event.event_type(); + if event_type == udev::EventType::Add + || event_type == udev::EventType::Remove + { + *input_event_occurred = true; + } + }); + + if *input_event_occurred { + if tx.send(()).await.is_err() { + break; + } + } + } + tokio::time::sleep(std::time::Duration::from_secs(1)).await; + } + }); + }); + + while let Some(()) = rx.recv().await { + if emitter.send(Message::RefreshTablets.into()).await.is_err() { + break; + } + } + }, + ) + }); + + let display_subscription = Subscription::run(|| { + stream::channel( + 1, + move |mut emitter: futures::channel::mpsc::Sender| async move { + let (tx, mut rx) = tokio::sync::mpsc::channel(1); + + let tokio_handle = tokio::runtime::Handle::current(); + std::thread::spawn(move || { + tokio_handle.block_on(async move { + let Ok(builder) = udev::MonitorBuilder::new() else { + return; + }; + + let Ok(builder) = builder.match_subsystem("drm") else { + return; + }; + + let Ok(socket) = builder.listen() else { + return; + }; + + let Ok(mut async_fd) = tokio::io::unix::AsyncFd::new(socket) else { + return; + }; + + loop { + if let Ok(mut guard) = async_fd.writable().await { + guard.clear_ready(); + + let drm_hotplug_occurred = &mut false; + async_fd.get_mut().iter().for_each(|_| { + *drm_hotplug_occurred = true; + }); + + if *drm_hotplug_occurred { + if tx.send(()).await.is_err() { + break; + } + } + } + tokio::time::sleep(std::time::Duration::from_secs(1)).await; + } + }); + }); + + while let Some(()) = rx.recv().await { + if emitter.send(Message::RefreshDisplays.into()).await.is_err() { + break; + } + } + }, + ) + }); + + Subscription::batch(vec![tablet_subscription, display_subscription]) + } +} + +impl page::AutoBind for Page {} + +impl Page { + pub fn update(&mut self, message: Message) -> Task { + match message { + Message::SetTabletDeviceState(device_name, enabled) => { + let state = if enabled { + DeviceState::Enabled + } else { + DeviceState::Disabled + }; + let mut devices: HashMap = self.saved_input_devices.clone(); + devices.entry(device_name).or_default().state = state; + if let Err(err) = self.tablet_config.set("input_devices", &devices) { + tracing::error!(?err, "Failed to set input_devices config"); + } + self.saved_input_devices = devices; + } + + Message::SetTabletOutput(device_name, output) => { + let mut devices: HashMap = self.saved_input_devices.clone(); + devices.entry(device_name).or_default().map_to_output = output; + if let Err(err) = self.tablet_config.set("input_devices", &devices) { + tracing::error!(?err, "Failed to set input_devices config"); + } + self.saved_input_devices = devices; + } + + Message::RefreshTablets => { + self.connected_tablets = get_connected_tablets(); + } + + Message::RefreshDisplays => { + self.connected_displays = get_connected_displays(); + } + + Message::Surface(a) => { + return cosmic::task::message(crate::app::Message::Surface(a)); + } + } + + Task::none() + } +} + +// The returned value represents all the settings UI for a single tablet device. +fn tablet_settings_ui( + tablet_device_name: String, + page: &Page, +) -> Element<'_, crate::pages::Message> { + let mut section_ui = settings::section().title(tablet_device_name.clone()); + let tablet_config = page.saved_input_devices.get(&tablet_device_name); + + let enabled = tablet_config.map_or(false, |c| { + c.state == cosmic_comp_config::input::DeviceState::Enabled + }); + let tablet_name = tablet_device_name.clone(); + let device_state_toggler = settings::item::builder(fl!("drawing-tablet", "enabled")) + .toggler(enabled, { + move |checked| Message::SetTabletDeviceState(tablet_name.clone(), checked) + }); + section_ui = section_ui.add(device_state_toggler); + + if enabled { + let mut display_names = page.connected_displays.clone(); + if let Some(preexisting_output) = tablet_config.and_then(|c| c.map_to_output.as_ref()) { + if !display_names.contains(preexisting_output) { + display_names.push(preexisting_output.clone()); + } + } + + let selected_dropdown_index = tablet_config + .and_then(|c| c.map_to_output.as_ref()) + .and_then(|output_display_name| { + display_names.iter().position(|d| d == output_display_name) + }) + .unwrap_or(0); + let tablet_name = tablet_device_name.clone(); + let dropdown_element = dropdown::popup_dropdown( + display_names.clone(), + Some(selected_dropdown_index), + move |idx| { + let output = if idx == 0 { + None + } else { + Some(display_names[idx].clone()) + }; + Message::SetTabletOutput(tablet_name.clone(), output) + }, + cosmic::iced::window::Id::RESERVED, + Message::Surface, + |a| crate::app::Message::PageMessage(crate::pages::Message::DrawingTablet(a)), + ); + + let dropdown_item = settings::item::builder(fl!("drawing-tablet", "map-to-display")) + .control(dropdown_element); + section_ui = section_ui.add(dropdown_item); + } + + section_ui + .apply(Element::from) + .map(crate::pages::Message::DrawingTablet) +} diff --git a/cosmic-settings/src/pages/input/mod.rs b/cosmic-settings/src/pages/input/mod.rs index 10613dc..d0d8325 100644 --- a/cosmic-settings/src/pages/input/mod.rs +++ b/cosmic-settings/src/pages/input/mod.rs @@ -11,6 +11,7 @@ use cosmic_comp_config::input::{ use cosmic_settings_page as page; use tracing::error; +pub mod drawing_tablet; pub mod keyboard; pub mod mouse; pub mod touchpad; @@ -192,7 +193,10 @@ impl page::Page for Page { impl page::AutoBind for Page { fn sub_pages(page: page::Insert) -> page::Insert { - let insert = page.sub_page::().sub_page::(); + let insert = page + .sub_page::() + .sub_page::() + .sub_page::(); if system_has_touchpad() { insert.sub_page::() diff --git a/cosmic-settings/src/pages/mod.rs b/cosmic-settings/src/pages/mod.rs index 01170b1..e24524e 100644 --- a/cosmic-settings/src/pages/mod.rs +++ b/cosmic-settings/src/pages/mod.rs @@ -64,6 +64,8 @@ pub enum Message { #[cfg(feature = "page-input")] Input(input::Message), #[cfg(feature = "page-input")] + DrawingTablet(input::drawing_tablet::Message), + #[cfg(feature = "page-input")] Keyboard(input::keyboard::Message), #[cfg(feature = "page-input")] KeyboardShortcuts(input::keyboard::shortcuts::Message), diff --git a/i18n/en/cosmic_settings.ftl b/i18n/en/cosmic_settings.ftl index 7318d9a..1a36487 100644 --- a/i18n/en/cosmic_settings.ftl +++ b/i18n/en/cosmic_settings.ftl @@ -61,6 +61,10 @@ xdg-entry-mouse = Mouse xdg-entry-mouse-comment = Mouse speed, acceleration, and natural scrolling xdg-entry-mouse-keywords = COSMIC;Mouse;Acceleration;Scrolling; +xdg-entry-drawing-tablet = Drawing tablet +xdg-entry-drawing-tablet-comment = Display mapping +xdg-entry-drawing-tablet-keywords = COSMIC;Tablet;Drawing;Sensitivity; + xdg-entry-network = Network & Wireless xdg-entry-network-comment = Manage network connections xdg-entry-network-keywords = COSMIC;Network;Wireless;WiFi;VPN; @@ -948,6 +952,14 @@ switch-between-windows = Switch between windows open-application-library = Open Application Library open-workspaces-view = Open Workspaces Overview +## Input: Tablet + +drawing-tablet = Drawing tablet + .no-devices-detected = No drawing tablets or pen devices detected + .map-to-display = Map to display + .not-set = Not Set + .enabled = Enabled + ## Time & language time = Time & language From 58aeb65244b8830880e8b6ced89dcd25663f20b1 Mon Sep 17 00:00:00 2001 From: LinuxBoy-96 <128245725+LinuxBoy-96@users.noreply.github.com> Date: Wed, 7 Oct 2026 13:38:45 -0400 Subject: [PATCH 7/7] build(debian): remove gettext dep and replace network-manager-gnome with nm-connection-editor (#2229) --- debian/control | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/debian/control b/debian/control index 703a847..3807f4f 100644 --- a/debian/control +++ b/debian/control @@ -29,9 +29,8 @@ Depends: accountsservice, cosmic-randr, cosmic-settings-daemon, - gettext, iso-codes, - network-manager-gnome, + nm-connection-editor | network-manager-gnome, network-manager-openvpn, network-manager-openvpn-gnome, xkb-data,