From 86e283d3fcf94f4f2bffbb807a223b76ff1758bd Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Thu, 29 Aug 2024 17:04:04 +0200 Subject: [PATCH 01/11] feat: reworked gamescope settings --- Cargo.lock | 8 +- Cargo.toml | 2 +- assets/locales/cs/enhancements.ftl | 1 + assets/locales/cs/gamescope.ftl | 50 +++- assets/locales/de/enhancements.ftl | 1 + assets/locales/de/gamescope.ftl | 50 +++- assets/locales/en/enhancements.ftl | 1 + assets/locales/en/gamescope.ftl | 52 +++- assets/locales/es/enhancements.ftl | 1 + assets/locales/es/gamescope.ftl | 50 +++- assets/locales/fr/enhancements.ftl | 1 + assets/locales/fr/gamescope.ftl | 50 +++- assets/locales/hu/enhancements.ftl | 1 + assets/locales/hu/gamescope.ftl | 50 +++- assets/locales/id/enhancements.ftl | 5 +- assets/locales/id/gamescope.ftl | 52 +++- assets/locales/it/enhancements.ftl | 1 + assets/locales/it/gamescope.ftl | 50 +++- assets/locales/ja/enhancements.ftl | 3 +- assets/locales/ja/gamescope.ftl | 50 +++- assets/locales/ko/enhancements.ftl | 1 + assets/locales/ko/gamescope.ftl | 50 +++- assets/locales/nl/enhancements.ftl | 1 + assets/locales/nl/gamescope.ftl | 50 +++- assets/locales/pl/enhancements.ftl | 1 + assets/locales/pl/gamescope.ftl | 50 +++- assets/locales/pt/enhancements.ftl | 1 + assets/locales/pt/gamescope.ftl | 50 +++- assets/locales/ru/enhancements.ftl | 1 + assets/locales/ru/gamescope.ftl | 52 +++- assets/locales/sv/enhancements.ftl | 1 + assets/locales/sv/gamescope.ftl | 52 +++- assets/locales/th/enhancements.ftl | 1 + assets/locales/th/gamescope.ftl | 52 +++- assets/locales/tr/enhancements.ftl | 3 +- assets/locales/tr/gamescope.ftl | 52 +++- assets/locales/uk/enhancements.ftl | 1 + assets/locales/uk/gamescope.ftl | 52 +++- assets/locales/vi/enhancements.ftl | 1 + assets/locales/vi/gamescope.ftl | 52 +++- assets/locales/zh-cn/enhancements.ftl | 1 + assets/locales/zh-cn/gamescope.ftl | 53 +++- flake.nix | 3 + src/ui/preferences/gamescope.rs | 394 ++++++++++++++++++-------- 44 files changed, 1179 insertions(+), 275 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f70f6ed..f57c7e6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -57,8 +57,8 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "anime-game-core" -version = "1.22.0" -source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.22.0#41a15f2f5620d281e22ccf2e7e68391c9d08cf5c" +version = "1.22.2" +source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.22.2#e3f2c3361bd986e60c8b8e11b0921ac46d6473b8" dependencies = [ "anyhow", "bzip2", @@ -107,8 +107,8 @@ dependencies = [ [[package]] name = "anime-launcher-sdk" -version = "1.17.0" -source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.17.0#a17a0824344d24bf02de00aee71967b028c176bb" +version = "1.18.0" +source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.18.0#62053890f6da849aba5253cac0e3ff769bb756bb" dependencies = [ "anime-game-core", "anyhow", diff --git a/Cargo.toml b/Cargo.toml index ea8d0d7..e612993 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ glib-build-tools = "0.20" [dependencies.anime-launcher-sdk] git = "https://github.com/an-anime-team/anime-launcher-sdk" -tag = "1.17.0" +tag = "1.18.0" features = ["all", "genshin"] # path = "../anime-launcher-sdk" # ! for dev purposes only diff --git a/assets/locales/cs/enhancements.ftl b/assets/locales/cs/enhancements.ftl index c247b2a..bca1e8e 100644 --- a/assets/locales/cs/enhancements.ftl +++ b/assets/locales/cs/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Prodleva v milisekundách mezi přepisován window-mode = Režim v okně borderless = Celá obrazovka v okně +headless = Headless popup = Popup fullscreen = Celá obrazovka diff --git a/assets/locales/cs/gamescope.ftl b/assets/locales/cs/gamescope.ftl index da3b1f1..c9f6b4c 100644 --- a/assets/locales/cs/gamescope.ftl +++ b/assets/locales/cs/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Rozlišení hry gamescope-resolution = Rozlišení Gamescope +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Škálování +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Integerové škálování -integer-scaling-description = Změní každý pixel na čtvercovou nebo obdélníkovou skupinu celočíselného počtu pixelů stejné barvy. Zabraňuje ztrátě ostrosti při škálování Full HD na 4K -gamescope-fsr-description = Technika upscalingu s otevřeným zdrojovým kódem vyvinutá společností AMD pro lepší kvalitu škálování -nis-description = Technika škálování s otevřeným zdrojovým kódem vyvinutá společností Nvidia jako nezávislá, nenáročná alternativa k jejich proprietárnímu řešení DLSS, což znamená, že funguje na grafických procesorech AMD a Intel a také na GPU Nvidia. +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Další nastavení -framerate-limit = FPS limit -unfocused-framerate-limit = FPS limit při nečinosti +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Vynutit uchopení kurzoru force-grab-cursor-description = Vždy používejte relativní režim myši namísto překlápění v závislosti na viditelnosti kurzoru. Kurzor myši bude ve hře správně vycentrován + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/de/enhancements.ftl b/assets/locales/de/enhancements.ftl index 79d5cc4..67eee4f 100644 --- a/assets/locales/de/enhancements.ftl +++ b/assets/locales/de/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Fenster Modus borderless = Randlos +headless = Headless popup = Popup fullscreen = Vollbild diff --git a/assets/locales/de/gamescope.ftl b/assets/locales/de/gamescope.ftl index 600c6c2..7037dd4 100644 --- a/assets/locales/de/gamescope.ftl +++ b/assets/locales/de/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Spiel-Auflösung gamescope-resolution = Gamescope-Auflösung +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Upscaling +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Integer-Skalierung -integer-scaling-description = Verwandelt jeden Pixel in eine quadratische oder rechteckige Gruppe mit einer ganzzahligen Anzahl gleichfarbiger Pixel. Verhindert Schärfeverluste bei der Skalierung von Full HD auf 4K -gamescope-fsr-description = Eine von AMD entwickelte Open-Source-Upscaling-Technik für bessere Upscaling-Qualität -nis-description = Eine Open-Source-Upscaling-Technik, die von Nvidia als herstellerübergreifende, kostengünstige Alternative zu ihrer proprietären DLSS-Lösung entwickelt wurde, d. h. sie funktioniert sowohl auf AMD- und Intel-GPUs als auch auf Nvidia-GPUs +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Andere Einstellungen -framerate-limit = Framerate-Limit -unfocused-framerate-limit = Unfokussiert Framerate-Limit +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Cursor greifen erzwingen force-grab-cursor-description = Verwende immer den relativen Mausmodus, anstatt abhängig von der Sichtbarkeit des Cursors umzuschalten. Der Mauszeiger wird korrekt in der Mitte des Spiels zentriert. + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/en/enhancements.ftl b/assets/locales/en/enhancements.ftl index 6239782..1ce4e47 100644 --- a/assets/locales/en/enhancements.ftl +++ b/assets/locales/en/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Window Mode borderless = Borderless +headless = Headless popup = Popup fullscreen = Fullscreen diff --git a/assets/locales/en/gamescope.ftl b/assets/locales/en/gamescope.ftl index 7e7ed77..9f35c92 100644 --- a/assets/locales/en/gamescope.ftl +++ b/assets/locales/en/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Game resolution gamescope-resolution = Gamescope resolution -upscaling = Upscaling - -integer-scaling = Integer scaling -integer-scaling-description = Turns each pixel into a square or rectangular group of integer number of same-color pixels. Prevents sharpness loss when scaling Full HD to 4K -gamescope-fsr-description = An open-source upscaling technique developed by AMD for better upscaling quality -nis-description = An open source upscaling technique developed by Nvidia as a cross-vendor, low-overhead alternative to their proprietary DLSS solution, meaning it works on AMD and Intel GPUs as well as Nvidia GPUs - -other-settings = Other settings +framerate = Framerate framerate-limit = Framerate limit unfocused-framerate-limit = Unfocused framerate limit +upscaling = Upscaling +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms + +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling + +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support + force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/es/enhancements.ftl b/assets/locales/es/enhancements.ftl index 8df3f67..ac4e3f5 100644 --- a/assets/locales/es/enhancements.ftl +++ b/assets/locales/es/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Modo de ventana borderless = Sin bordes +headless = Headless popup = Popup fullscreen = Pantalla completa diff --git a/assets/locales/es/gamescope.ftl b/assets/locales/es/gamescope.ftl index d65d0dd..d96afa3 100644 --- a/assets/locales/es/gamescope.ftl +++ b/assets/locales/es/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Resolución del juego gamescope-resolution = Resolución de Gamescope +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Reescalado +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Escalado por números enteros -integer-scaling-description = Convierte a cada pixel en un grupo cuadrado o rectangular de pixeles del mismo color al escalar. Evita pérdidas de nitidez al escalar desde Full HD a 4K. -gamescope-fsr-description = Una técnica de escalado de código abierto desarrollada por AMD para mejor calidad de reescalado. -nis-description = Una técnica de escalado de código abierto desarrollada por Nvidia, pensada como una alternativa más compatible y menos costosa que su solución propietaria DLSS. Esto quiere decir que funciona tanto en tarjetas Nvidia como en AMD e Intel. +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Otras opciones -framerate-limit = Límite de framerate -unfocused-framerate-limit = Límite de framerate en segundo plano +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/fr/enhancements.ftl b/assets/locales/fr/enhancements.ftl index deb2579..6f3c253 100644 --- a/assets/locales/fr/enhancements.ftl +++ b/assets/locales/fr/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Type de fenêtre borderless = Sans bordure +headless = Headless popup = Popup fullscreen = Plein écran diff --git a/assets/locales/fr/gamescope.ftl b/assets/locales/fr/gamescope.ftl index 53eda0c..f639452 100644 --- a/assets/locales/fr/gamescope.ftl +++ b/assets/locales/fr/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Résolution du jeu gamescope-resolution = Résolution de Gamescope +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Upscaling (mise à l'échelle intelligente) +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Mise à l'échelle à l'entier -integer-scaling-description = Transforme chaque pixel en un nombre entier de pixel de même couleur, sous la forme d'un carré ou d'un rectangle. Permet d'éviter l'effet de flou lors de la mise à l'échelle entre la Full-HD et la 4K par exemple -gamescope-fsr-description = Une technique de mise à l'échelle Open Source développée par AMD pour avoir une meilleur qualité de mise à l'échelle -nis-description = Une technologie de mise à l'échelle Open Source développée par NVidia comme alternative compatible avec les autres marques à leur solution DLSS qui est propriétaire. Ainsi, cette option foctionne non seulement sur les cartes graphiques NVidia, mais aussi sur celles d'Intel et d'AMD. +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Autres paramètres -framerate-limit = Limitation des FPS -unfocused-framerate-limit = Limitation des FPS hors focus +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/hu/enhancements.ftl b/assets/locales/hu/enhancements.ftl index 3add58c..d1b7696 100644 --- a/assets/locales/hu/enhancements.ftl +++ b/assets/locales/hu/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Milliszekundumban (ms) hogy mekkora időkö window-mode = Ablak mód borderless = Keretmentes +headless = Headless popup = Popup fullscreen = Teljesképernyő diff --git a/assets/locales/hu/gamescope.ftl b/assets/locales/hu/gamescope.ftl index 758ffac..f1512a6 100644 --- a/assets/locales/hu/gamescope.ftl +++ b/assets/locales/hu/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Játékfelbontás gamescope-resolution = Gamescope felbontás +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Upscaling +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Integer scaling -integer-scaling-description = Minden kerek számnyi egyező színű pixelt egy négyzet vagy téglalap csoportba rak. Megelőzheti az élességvesztést Full HD - 4K upscalingnél -gamescope-fsr-description = Open-source upscaling technika az AMD-től jobb upscaling minőségért -nis-description = Open source upscaling technika az Nvidia-tól, alternatíva a DLSS-re, minden videókártyán működik. 16 +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Egyéb beállítások -framerate-limit = FPS limit -unfocused-framerate-limit = Fókuszon kívüli FPS limit +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/id/enhancements.ftl b/assets/locales/id/enhancements.ftl index 5684fb6..12e7cae 100644 --- a/assets/locales/id/enhancements.ftl +++ b/assets/locales/id/enhancements.ftl @@ -25,7 +25,7 @@ game = Game hud = HUD fsr = FSR -fsr-description = Menaikkan skala resolusi game ke ukuran monitor Anda. Untuk menggunakan, pilih resolusi yang lebih rendah di pengaturan game dan tekan Alt+Enter +fsr-description = Menaikkan skala resolusi game ke ukuran monitor Anda. Untuk menggunakan, pilih resolusi yang lebih rendah di pengaturan game dan tekan Alt+Enter ultra-quality = Kualitas Ultra quality = Kualitas balanced = Seimbang @@ -44,7 +44,7 @@ title = Judul description = Deskripsi fps-unlocker = FPS Unlocker -fps-unlocker-description = Meniadakan batas maksimum frame yang dapat dirender oleh game dengan memodifikasi memori game. Dapat terdeteksi oleh anti-cheat +fps-unlocker-description = Meniadakan batas maksimum frame yang dapat dirender oleh game dengan memodifikasi memori game. Dapat terdeteksi oleh anti-cheat enabled = Aktifkan @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Jeda antara penulisan ulang nilai batas FPS window-mode = Window Mode borderless = Tanpa border +headless = Headless popup = Popup fullscreen = Penuhi layar diff --git a/assets/locales/id/gamescope.ftl b/assets/locales/id/gamescope.ftl index 8c9e95c..2a55b30 100644 --- a/assets/locales/id/gamescope.ftl +++ b/assets/locales/id/gamescope.ftl @@ -1,16 +1,52 @@ -game-resolution = Resolusi game +game-resolution = Resolusi game gamescope-resolution = Resolusi Gamescope +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Peningkatan skala resolusi game +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Skala integer -integer-scaling-description = Membuat setiap pixel menjadi kelompok persegi atau persegi panjang dengan bilangan bulat dari pixel dengan warna yang sama. Mengecah hilangnya ketajaman ketika menskala dari Full HD ke 4K -gamescope-fsr-description = Teknik peningkatan skala Open-source yang dikembangkan oleh AMD untuk kualitas peningkatan skala yang lebih baik -nis-description = Teknik peningkatan skala yang dikembangkan oleh Nvidia sebagai alternatif antar-vendor, overhead rendah DLSS yang artinya bisa dijalankan pada GPU AMD, Intel, dan tentunya Nvidia +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Pengaturan lainnya -framerate-limit = Batas framerate -unfocused-framerate-limit = Batas framerate saat tidak fokus +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/it/enhancements.ftl b/assets/locales/it/enhancements.ftl index bdcd3ff..d90d231 100644 --- a/assets/locales/it/enhancements.ftl +++ b/assets/locales/it/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Ritardo in millisecondi tra le sovrascrittur window-mode = Modalità della finestra borderless = Senza bordi +headless = Headless popup = Popup fullscreen = Schermo intero diff --git a/assets/locales/it/gamescope.ftl b/assets/locales/it/gamescope.ftl index 06fdc7a..e43bec4 100644 --- a/assets/locales/it/gamescope.ftl +++ b/assets/locales/it/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Risoluzione del gioco gamescope-resolution = Risoluzione di Gamescope +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Upscaling +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Scala per interi -integer-scaling-description = Trasforma ogni pixel in un quadrato o gruppo rettangolare di numero intero di pixel dello stesso colore. Evita la perdita di nitidezza quando scala da Full HD a 4K -gamescope-fsr-description = Una tecnica di upscaling open-source sviluppata da AMD per un upscaling di migliore qualità -nis-description = Una tecnica di upscaling open-source sviluppata da Nvidia per essere indipendente dal produttore, alternativa alla loro soluzione DLSS proprietaria, a basso costo di prestazioni, ciò significa che funziona su GPU AMD e Intel oltre alle GPU Nvidia +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Altre impostazioni -framerate-limit = Limite del framerate -unfocused-framerate-limit = Limite del framerate quando fuori dal focus +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Forza la cattura del cursore force-grab-cursor-description = Usa sempre la modalità relativa del mouse invece di cambiare in base alla visibilità del cursore. Il cursore del mouse verrà correttamente centrato nel gioco + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/ja/enhancements.ftl b/assets/locales/ja/enhancements.ftl index 448b8bd..cb1931d 100644 --- a/assets/locales/ja/enhancements.ftl +++ b/assets/locales/ja/enhancements.ftl @@ -7,7 +7,7 @@ wine = Wine synchronization = 同期 wine-sync-description = Wine内部のイベントを同期するためのものです。 -language =言語 +language =言語 wine-lang-description = wine環境で使用される言語です。キーボードの問題を修正できます。 system = システム @@ -52,5 +52,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = ウィンドウモード borderless = ボーダーレス +headless = Headless popup = ポップアップ fullscreen = フルスクリーン diff --git a/assets/locales/ja/gamescope.ftl b/assets/locales/ja/gamescope.ftl index 48c5bff..a57dd34 100644 --- a/assets/locales/ja/gamescope.ftl +++ b/assets/locales/ja/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = ゲーム解像度 gamescope-resolution = ゲームスコープの解像度 +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = 拡大 +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = 整数値 -integer-scaling-description = Turns each pixel into a square or rectangular group of integer number of same-color pixels. Prevents sharpness loss when scaling Full HD to 4K -gamescope-fsr-description = An open-source upscaling technique developed by AMD for better upscaling quality -nis-description = An open source upscaling technique developed by Nvidia as a cross-vendor, low-overhead alternative to their proprietary DLSS solution, meaning it works on AMD and Intel GPUs as well as Nvidia GPUs +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = その他の設定 -framerate-limit = FPS制限 -unfocused-framerate-limit = 非フォーカス時の最大FPS +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/ko/enhancements.ftl b/assets/locales/ko/enhancements.ftl index 8c50b2a..e63d1a8 100644 --- a/assets/locales/ko/enhancements.ftl +++ b/assets/locales/ko/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = 창 모드 borderless = 테두리 없는 창 모드 +headless = Headless popup = 팝업 fullscreen = 전체 화면 diff --git a/assets/locales/ko/gamescope.ftl b/assets/locales/ko/gamescope.ftl index eeb0407..b650b05 100644 --- a/assets/locales/ko/gamescope.ftl +++ b/assets/locales/ko/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = 게임 해상도 gamescope-resolution = 게임 범위 해상도 +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = 업스케일링 +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = 정수 스케일링 -integer-scaling-description = 각 픽셀을 정수로 구성된 정사각형 또는 직사각형의 동일한 색상 픽셀 그룹으로 변환합니다. Full HD에서 4K로 업스케일링할 때 선명도 손실을 방지합니다 -gamescope-fsr-description = 더 나은 업스케일링 품질을 위해 AMD에서 개발한 오픈 소스 업스케일링 기술입니다 -nis-description = Nvidia가 독점 DLSS 솔루션에 대한 낮은 오버헤드 대안으로 공급업체 간, 낮은 오버헤드로 개발한 오픈 소스 업스케일링 기술입니다. 즉, Nvidia GPU는 물론 AMD 및 Intel GPU에서도 작동합니다 +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = 기타 설정 -framerate-limit = 프레임 속도 제한 -unfocused-framerate-limit = 초점이 맞지 않는 프레임 속도 제한 +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/nl/enhancements.ftl b/assets/locales/nl/enhancements.ftl index 9799bbc..6759fd1 100644 --- a/assets/locales/nl/enhancements.ftl +++ b/assets/locales/nl/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Venster Mode borderless = Randloos +headless = Headless popup = Popup fullscreen = Volledig scherm diff --git a/assets/locales/nl/gamescope.ftl b/assets/locales/nl/gamescope.ftl index 6f6dc12..042d0a6 100644 --- a/assets/locales/nl/gamescope.ftl +++ b/assets/locales/nl/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Spelresolutie gamescope-resolution = Gamescope resolutie +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Opschaling +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Schalen van gehele getallen -integer-scaling-description = Verandert elke pixel in een vierkante of rechthoekige groep van een geheel aantal pixels met dezelfde kleur. Voorkomt scherpteverlies bij het schalen van Full HD naar 4K -gamescope-fsr-description = Een open-source opschalingstechniek ontwikkeld door AMD voor een betere opschalingskwaliteit -nis-description = Een open source opschalingstechniek ontwikkeld door Nvidia als een cross-vendor, low-overhead alternatief voor hun eigen DLSS-oplossing, wat betekent dat het werkt op AMD- en Intel GPU's en Nvidia GPU's +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Andere instellingen -framerate-limit = Frameratelimiet -unfocused-framerate-limit = Ongefocuste frameratelimiet +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/pl/enhancements.ftl b/assets/locales/pl/enhancements.ftl index 4076bf7..897e65c 100644 --- a/assets/locales/pl/enhancements.ftl +++ b/assets/locales/pl/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Tryb okna borderless = Okno bezramkowe +headless = Headless popup = Wyskakujące okno fullscreen = Pełny ekran diff --git a/assets/locales/pl/gamescope.ftl b/assets/locales/pl/gamescope.ftl index 5305bc8..360a623 100644 --- a/assets/locales/pl/gamescope.ftl +++ b/assets/locales/pl/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Rozdzielczość gry gamescope-resolution = Rozdzielczość Gamescope +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Skalowanie +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Skalowanie całkowitoliczbowe -integer-scaling-description = Zamienia każdy piksel na grupę kwadratowych lub prostokątnych pikseli o całkowitej liczbie tego samego koloru. Zapobiega utracie ostrości przy skalowaniu Full HD do 4K. -gamescope-fsr-description = Technika skalowania otwartego źródła opracowana przez AMD w celu poprawy jakości skalowania -nis-description = Technika skalowania otwartego źródła opracowana przez Nvidia jako alternatywa o niskim narzucie dla ich własnego rozwiązania DLSS, co oznacza, że działa ona również na GPU AMD i Intel, a nie tylko na GPU Nvidia +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Inne ustawienia -framerate-limit = Limit klatek na sekundę -unfocused-framerate-limit = Limit klatek na sekundę po utraceniu skupienia +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/pt/enhancements.ftl b/assets/locales/pt/enhancements.ftl index 6d6d5af..79a0f98 100644 --- a/assets/locales/pt/enhancements.ftl +++ b/assets/locales/pt/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Modo janela borderless = Sem borda +headless = Headless popup = Popup fullscreen = Tela cheia diff --git a/assets/locales/pt/gamescope.ftl b/assets/locales/pt/gamescope.ftl index d4bbdbe..d2138b4 100644 --- a/assets/locales/pt/gamescope.ftl +++ b/assets/locales/pt/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Resolução de jogo gamescope-resolution = Resolução gamescope +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit + upscaling = Upscaling +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms -integer-scaling = Escalamento inteiro -integer-scaling-description = Torna cada pixel em um grupo de números inteiros de mesma cor em forma de quadrado ou retângulo. Previne a perda de nitidez quando escalando Full HD para 4K -gamescope-fsr-description = Uma técnica de upscaling de código aberto desenvolvida pela AMD para melhor qualidade -nis-description = Uma técnica de upscaling de código aberto desenvolvida pela Nvidia como uma alternativa á solução DLSS proprietária, significa que funciona em GPUs AMD, Intel e Nvidia +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling -other-settings = Outras configuraões -framerate-limit = Limite de taxa de quadros -unfocused-framerate-limit = Limite de taxa de quadros desfocado +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/ru/enhancements.ftl b/assets/locales/ru/enhancements.ftl index 0ac1dcd..90c4ff2 100644 --- a/assets/locales/ru/enhancements.ftl +++ b/assets/locales/ru/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Задержка между перезапи window-mode = Режим окна borderless = Безрамочный +headless = Без заголовка popup = Всплывающий fullscreen = Полноэкранный diff --git a/assets/locales/ru/gamescope.ftl b/assets/locales/ru/gamescope.ftl index 48aff04..39c78cb 100644 --- a/assets/locales/ru/gamescope.ftl +++ b/assets/locales/ru/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Разрешение игры -gamescope-resolution = Разрешение Gamescope +gamescope-resolution = Разрешение gamescope + +framerate = Частота кадров +framerate-limit = Предел частоты кадров +unfocused-framerate-limit = Предел частоты кадров окна без фокуса upscaling = Масштабирование +upscaling-description = Рисовать игру в меньшем разрешении, улучшая качество картинки с помощью специальных алгоритмов -integer-scaling = Целочисленное масштабирование -integer-scaling-description = Переводит каждый пиксель в квадрат или прямоугольник из целого числа пикселей одного цвета. Предотвращает потерю резкости при масштабировании Full HD до 4K -gamescope-fsr-description = Открытая техника масштабирования с сохранением хорошего качества изображения, разработанная AMD -nis-description = Открытая техника масштабирования с сохранением хорошего качества изображения, разработанная Nvidia для замены DLSS и работающая на видеокартах AMD, Intel и Nvidia +upscaler = Алгоритм увеличения изображения +upscaler-description = Алгоритм, используемый для увеличения изображения к выбранному разрешению -other-settings = Другие настройки -framerate-limit = Лимит числа кадров -unfocused-framerate-limit = Лимит числа кадров вне фокуса +auto = Автоматический +integer = Целочисленное +fit = Вмещение +fill = Заполнение +stretch = Растягивание + +upscale-filter = Фильтр увеличенного изображения +upscale-filter-description = Алгоритм, используемый для пост-обработки увеличенного изображения + +linear = Линейный +nearest = Ближайшие соседи +nis = NIS +pixel = Пиксельный + +upscale-sharpness = Резкость изображения +upscale-sharpness-description = Резкость объекток на обработанном изображении + +smallest = Наименьшая +small = Небольшая +high = Высокая +highest = Высочайшая + +hdr-support = Поддержка HDR +hdr-support-description = Включить вывод HDR изображения из gamescope. Требует поддержки со стороны монитора + +realtime-scheduler = Планировщик задач реального времени +realtime-scheduler-description = Использовать планировщик задач реального времени. Увеличивает производительность игры за счёт замедления фоновых процессов + +adaptive-sync = Адаптивная синхронизация +adaptive-sync-description = Включить динамическую частоту кадров. Требует поддержки со стороны монитора force-grab-cursor = Принудительный захват курсора force-grab-cursor-description = Использовать относительный режим мыши вместо переворачивания в зависимости от видимости курсора. Курсор мыши будет правильно центрирован в игре + +mangohud = MangoHUD +mangohud-description = Запускать игру вместе с монитором производительности mangoapp (mangohud) + +extra-args = Дополнительные аргументы +extra-args-description = Список дополнительных аргументов, применяемых в gamescope diff --git a/assets/locales/sv/enhancements.ftl b/assets/locales/sv/enhancements.ftl index 95b0f55..af0ed40 100644 --- a/assets/locales/sv/enhancements.ftl +++ b/assets/locales/sv/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Fönsterläge borderless = Kantlöst +headless = Headless popup = Popup fullscreen = Fullskärm diff --git a/assets/locales/sv/gamescope.ftl b/assets/locales/sv/gamescope.ftl index 8cd626b..aabda8a 100644 --- a/assets/locales/sv/gamescope.ftl +++ b/assets/locales/sv/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Spelupplösning gamescope-resolution = Gamescope-upplösning -upscaling = Uppskalning - -integer-scaling = Heltalsskalning -integer-scaling-description = Omvandlar varje pixel till en kvadratisk eller rektangulär grupp med ett heltals antal pixlar av samma färg. Förhindrar förlust av skärpa vid skalning av Full HD till 4K -gamescope-fsr-description = En uppskalningsteknik med öppen källkod som utvecklats av AMD för bättre uppskalningskvalitet -nis-description = En uppskalningsteknik med öppen källkod som utvecklats av Nvidia som ett alternativ till deras egenutvecklade DLSS-lösning, vilket innebär att den fungerar på AMD- och Intel-GPU:er, samt även Nvidia-GPU:er - -other-settings = Andra inställningar +framerate = Framerate framerate-limit = Gräns för bilduppdateringshastighet unfocused-framerate-limit = Gräns för bilduppdateringshastighet utan fokus +upscaling = Uppskalning +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms + +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling + +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support + force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/th/enhancements.ftl b/assets/locales/th/enhancements.ftl index b818234..9fac9df 100644 --- a/assets/locales/th/enhancements.ftl +++ b/assets/locales/th/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = การเขียนทับค่า window-mode = โหมดหน้าต่างเกม borderless = โหมดไร้ขอบเขต +headless = Headless popup = ป๊อปอัพ fullscreen = เต็มจอ diff --git a/assets/locales/th/gamescope.ftl b/assets/locales/th/gamescope.ftl index 6531a85..7749c59 100644 --- a/assets/locales/th/gamescope.ftl +++ b/assets/locales/th/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = ความละเอียดของเกม gamescope-resolution = ความละเอียดของ Gamescope -upscaling = การเพิ่มขนาดความละเอียด - -integer-scaling = มาตราส่วนจำนวนเต็ม -integer-scaling-description = เปลี่ยนแต่ละพิกเซลเป็นกลุ่มสี่เหลี่ยมจัตุรัสหรือสี่เหลี่ยมของจำนวนเต็มของพิกเซลสีเดียวกัน ป้องกันการสูญเสียความคมชัดเมื่อปรับขนาด Full HD เป็น 4K -gamescope-fsr-description = เทคนิคการขยายขนาดที่พัฒนาโดย AMD เพื่อคุณภาพการขยายขนาดที่ดีขึ้น -nis-description = เทคนิคการขยายขนาดโอเพ่นซอร์สที่พัฒนาโดย Nvidia เป็นทางเลือกข้ามผู้จำหน่ายและมีค่าใช้จ่ายต่ำแทนโซลูชัน DLSS ที่เป็นกรรมสิทธิ์ ซึ่งหมายความว่าใช้งานได้กับ AMD และ Intel GPU รวมถึง Nvidia GPU - -other-settings = การตั้งค่าอื่นๆ +framerate = Framerate framerate-limit = ขีดจำกัดเฟรมเรต unfocused-framerate-limit = เฟรมเรทจำกัดขณะไม่ได้โฟกัส +upscaling = การเพิ่มขนาดความละเอียด +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms + +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling + +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support + force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/tr/enhancements.ftl b/assets/locales/tr/enhancements.ftl index d7c49bf..b15dcf3 100644 --- a/assets/locales/tr/enhancements.ftl +++ b/assets/locales/tr/enhancements.ftl @@ -51,7 +51,8 @@ enabled = Etkin fps-unlocker-interval = Overwrite interval fps-unlocker-interval-description = Delay in milliseconds between overwriting the FPS limit value. Periodic overwrites are necessary to prevent it from resetting -window-mode = Pencereli +window-mode = Pencereli borderless = Köşesiz +headless = Headless popup = Popup fullscreen = Tam ekran diff --git a/assets/locales/tr/gamescope.ftl b/assets/locales/tr/gamescope.ftl index f19da2e..41b00e7 100644 --- a/assets/locales/tr/gamescope.ftl +++ b/assets/locales/tr/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Oyun çözünürlüğü gamescope-resolution = Gamescope çözünürlüğü -upscaling = Görüntü keskinleştirme - -integer-scaling = Tamsayı ölçekleme -integer-scaling-description = Her pikseli, aynı renkli piksellerden oluşan bir kare veya dikdörtgen tamsayı grubuna dönüştürür. Full HD'yi 4K'ya ölçeklendirirken keskinlik kaybını önler -gamescope-fsr-description = Daha iyi yükseltme kalitesi için AMD tarafından geliştirilen açık kaynaklı bir yükseltme tekniği -nis-description = DLSS teknolojisine düşük maliyetli bir alternatif olarak Nvidia tarafından geliştirilen, yani AMD ve Intel GPU'ların yanı sıra Nvidia GPU'larda da çalışan açık kaynaklı bir yükseltme tekniği - -other-settings = Diğer ayarlar +framerate = Framerate framerate-limit = Kare hızı limiti unfocused-framerate-limit = Odakta değilken kare hızı limiti +upscaling = Görüntü keskinleştirme +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms + +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling + +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support + force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/uk/enhancements.ftl b/assets/locales/uk/enhancements.ftl index 11bf78d..0580495 100644 --- a/assets/locales/uk/enhancements.ftl +++ b/assets/locales/uk/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Затримка між перезаписа window-mode = Режим вікна borderless = Безрамковий +headless = Headless popup = Спливаючий fullscreen = Повноекранний diff --git a/assets/locales/uk/gamescope.ftl b/assets/locales/uk/gamescope.ftl index 985b871..d1f0ced 100644 --- a/assets/locales/uk/gamescope.ftl +++ b/assets/locales/uk/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Роздільна здатність гри gamescope-resolution = Роздільна здатність Gamescope -upscaling = Масштабування - -integer-scaling = Цілочисельне масштабування -integer-scaling-description = Кожен піксель перетворюється на квадрат або прямокутник з цілого числа пікселів одного кольору. Запобігає втраті чіткості при масштабуванні Full HD до 4K -gamescope-fsr-description = Відкрита техніка масштабування зі збереженням хорошої якості зображення, розроблена AMD -nis-description = Відкрита техніка масштабування зі збереженням хорошої якості зображення, розроблена Nvidia для заміни DLSS і працює на відеокартах AMD, Intel і Nvidia - -other-settings = Інші налаштування +framerate = Framerate framerate-limit = Обмеження кількості кадрів unfocused-framerate-limit = Обмеження кількості кадрів поза фокусом +upscaling = Масштабування +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms + +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling + +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support + force-grab-cursor = Примусове захоплення курсору force-grab-cursor-description = Завжди використовувати відносний режим миші замість гортання залежно від видимості курсору. Курсор миші буде коректно відцентровано у грі + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/vi/enhancements.ftl b/assets/locales/vi/enhancements.ftl index d7b84e6..9ad5b1b 100644 --- a/assets/locales/vi/enhancements.ftl +++ b/assets/locales/vi/enhancements.ftl @@ -52,5 +52,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Chế độ cửa sổ borderless = Cửa sổ không viền +headless = Headless popup = Popup fullscreen = Toàn màn hình diff --git a/assets/locales/vi/gamescope.ftl b/assets/locales/vi/gamescope.ftl index 2edf20b..0271abe 100644 --- a/assets/locales/vi/gamescope.ftl +++ b/assets/locales/vi/gamescope.ftl @@ -1,16 +1,52 @@ game-resolution = Độ phân giải trò chơi gamescope-resolution = Độ phân giải của gamescope -upscaling = Nâng độ phận giải - -integer-scaling = Tỉ lệ nâng -integer-scaling-description = Biến mỗi pixel thành một nhóm hình vuông hoặc hình chữ nhật có pixel cùng màu. Ngăn mất độ sắc nét khi mở rộng Full HD thành 4K -gamescope-fsr-description = Một kỹ thuật nâng cấp mã nguồn mở do AMD phát triển -nis-description = Một kỹ thuật nâng cấp mã nguồn mở do Nvidia phát triển dưới dạng một giải pháp thay thế chi phí thấp của nhà cung cấp chéo cho giải pháp DLSS độc quyền của họ, nghĩa là nó hoạt động trên GPU AMD và Intel cũng như GPU Nvidia - -other-settings = Cài đặt khác +framerate = Framerate framerate-limit = Giới hạn tốc độ khung hình unfocused-framerate-limit = Giới hạn tốc độ khung hình khi không tập trung +upscaling = Nâng độ phận giải +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms + +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling + +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support + force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/assets/locales/zh-cn/enhancements.ftl b/assets/locales/zh-cn/enhancements.ftl index 24842ca..5fb5b7f 100644 --- a/assets/locales/zh-cn/enhancements.ftl +++ b/assets/locales/zh-cn/enhancements.ftl @@ -53,5 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = 窗口模式 borderless = 无边框 +headless = Headless popup = 弹出窗口 fullscreen = 全屏 diff --git a/assets/locales/zh-cn/gamescope.ftl b/assets/locales/zh-cn/gamescope.ftl index 282801b..9f35c92 100644 --- a/assets/locales/zh-cn/gamescope.ftl +++ b/assets/locales/zh-cn/gamescope.ftl @@ -1,11 +1,52 @@ -game-resolution = 游戏分辨率 -gamescope-resolution = Gamescope 分辨率 +game-resolution = Game resolution +gamescope-resolution = Gamescope resolution -integer-scaling = 整数倍数缩放 +framerate = Framerate +framerate-limit = Framerate limit +unfocused-framerate-limit = Unfocused framerate limit -other-settings = 其它设置 -framerate-limit = 帧率限制 -unfocused-framerate-limit = 切出游戏帧率限制 +upscaling = Upscaling +upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms + +upscaler = Upscaler +upscaler-description = Algorithm used to perform image upscaling + +auto = Auto +integer = Integer +fit = Fit +fill = Fill +stretch = Stretch + +upscale-filter = Filter +upscale-filter-description = Algorithm used to filter upscaled image + +linear = Linear +nearest = Nearest +nis = NIS +pixel = Pixel + +upscale-sharpness = Sharpness +upscale-sharpness-description = Upscaling sharpness + +smallest = Smallest +small = Small +high = High +highest = Highest + +hdr-support = HDR support +hdr-support-description = Enable gamescope HDR output. Requires display support + +realtime-scheduler = Realtime scheduler +realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes + +adaptive-sync = Adaptive sync +adaptive-sync-description = Enable variable refresh rate. Requires display support force-grab-cursor = Force grab cursor force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game + +mangohud = MangoHUD +mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled + +extra-args = Extra arguments +extra-args-description = Extra arguments appended to the gamescope diff --git a/flake.nix b/flake.nix index 9e7c0cc..fb580bd 100644 --- a/flake.nix +++ b/flake.nix @@ -20,6 +20,9 @@ cmake pkg-config + git + unzip + p7zip libwebp ]; diff --git a/src/ui/preferences/gamescope.rs b/src/ui/preferences/gamescope.rs index eeecb39..ad0939e 100644 --- a/src/ui/preferences/gamescope.rs +++ b/src/ui/preferences/gamescope.rs @@ -29,6 +29,32 @@ impl SimpleAsyncComponent for GamescopeApp { set_search_enabled: false, add = &adw::PreferencesPage { + add = &adw::PreferencesGroup { + adw::ComboRow { + set_title: &tr!("window-mode"), + + #[wrap(Some)] + set_model = >k::StringList::new(&[ + &tr!("default"), + &tr!("borderless"), + &tr!("headless"), + &tr!("fullscreen") + ]), + + set_selected: CONFIG.game.enhancements.gamescope.window_mode.ordinal() as u32, + + connect_selected_notify => |row| unsafe { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.window_mode = GamescopeWindowMode::from_ordinal_unsafe(row.selected() as i8); + + Config::update(config); + } + } + } + } + }, + add = &adw::PreferencesGroup { set_title: &tr!("game-resolution"), @@ -36,17 +62,24 @@ impl SimpleAsyncComponent for GamescopeApp { set_title: &tr!("width"), set_input_purpose: gtk::InputPurpose::Digits, - set_text: &if CONFIG.game.enhancements.gamescope.game.width > 0 { - CONFIG.game.enhancements.gamescope.game.width.to_string() - } else { - String::new() + set_text: &match CONFIG.game.enhancements.gamescope.game_window.width { + Some(value) if value > 0 => value.to_string(), + _ => String::new() }, connect_changed => |row| { if is_ready() { if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.game.width = row.text().parse().unwrap_or_default(); - + let value = row.text() + .parse::() + .unwrap_or_default(); + + config.game.enhancements.gamescope.game_window.width = if value > 0 { + Some(value) + } else { + None + }; + Config::update(config); } } @@ -57,17 +90,24 @@ impl SimpleAsyncComponent for GamescopeApp { set_title: &tr!("height"), set_input_purpose: gtk::InputPurpose::Digits, - set_text: &if CONFIG.game.enhancements.gamescope.game.height > 0 { - CONFIG.game.enhancements.gamescope.game.height.to_string() - } else { - String::new() + set_text: &match CONFIG.game.enhancements.gamescope.game_window.height { + Some(value) if value > 0 => value.to_string(), + _ => String::new() }, connect_changed => |row| { if is_ready() { if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.game.height = row.text().parse().unwrap_or_default(); - + let value = row.text() + .parse::() + .unwrap_or_default(); + + config.game.enhancements.gamescope.game_window.height = if value > 0 { + Some(value) + } else { + None + }; + Config::update(config); } } @@ -82,17 +122,24 @@ impl SimpleAsyncComponent for GamescopeApp { set_title: &tr!("width"), set_input_purpose: gtk::InputPurpose::Digits, - set_text: &if CONFIG.game.enhancements.gamescope.gamescope.width > 0 { - CONFIG.game.enhancements.gamescope.gamescope.width.to_string() - } else { - String::new() + set_text: &match CONFIG.game.enhancements.gamescope.gamescope_window.width { + Some(value) if value > 0 => value.to_string(), + _ => String::new() }, connect_changed => |row| { if is_ready() { if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.gamescope.width = row.text().parse().unwrap_or_default(); - + let value = row.text() + .parse::() + .unwrap_or_default(); + + config.game.enhancements.gamescope.gamescope_window.width = if value > 0 { + Some(value) + } else { + None + }; + Config::update(config); } } @@ -103,17 +150,24 @@ impl SimpleAsyncComponent for GamescopeApp { set_title: &tr!("height"), set_input_purpose: gtk::InputPurpose::Digits, - set_text: &if CONFIG.game.enhancements.gamescope.gamescope.height > 0 { - CONFIG.game.enhancements.gamescope.gamescope.height.to_string() - } else { - String::new() + set_text: &match CONFIG.game.enhancements.gamescope.gamescope_window.height { + Some(value) if value > 0 => value.to_string(), + _ => String::new() }, connect_changed => |row| { if is_ready() { if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.gamescope.height = row.text().parse().unwrap_or_default(); - + let value = row.text() + .parse::() + .unwrap_or_default(); + + config.game.enhancements.gamescope.gamescope_window.height = if value > 0 { + Some(value) + } else { + None + }; + Config::update(config); } } @@ -122,89 +176,30 @@ impl SimpleAsyncComponent for GamescopeApp { }, add = &adw::PreferencesGroup { - set_title: &tr!("upscaling"), - - adw::ActionRow { - set_title: &tr!("integer-scaling"), - set_subtitle: &tr!("integer-scaling-description"), - - add_suffix = >k::Switch { - set_valign: gtk::Align::Center, - set_active: CONFIG.game.enhancements.gamescope.integer_scaling, - - connect_state_notify => |switch| { - if is_ready() { - if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.integer_scaling = switch.is_active(); - - Config::update(config); - } - } - } - } - }, - - adw::ActionRow { - set_title: "FSR", - set_subtitle: &tr!("gamescope-fsr-description"), - - add_suffix = >k::Switch { - set_valign: gtk::Align::Center, - set_active: CONFIG.game.enhancements.gamescope.fsr, - - connect_state_notify => |switch| { - if is_ready() { - if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.fsr = switch.is_active(); - - Config::update(config); - } - } - } - } - }, - - adw::ActionRow { - set_title: "Nvidia Image Scaling", - set_subtitle: &tr!("nis-description"), - - add_suffix = >k::Switch { - set_valign: gtk::Align::Center, - set_active: CONFIG.game.enhancements.gamescope.nis, - - connect_state_notify => |switch| { - if is_ready() { - if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.nis = switch.is_active(); - - Config::update(config); - } - } - } - } - } - }, - - add = &adw::PreferencesGroup { - set_title: &tr!("other-settings"), - - // TODO: maybe use Fps enum like in fps unlocker settings + set_title: &tr!("framerate"), adw::EntryRow { set_title: &tr!("framerate-limit"), set_input_purpose: gtk::InputPurpose::Digits, - set_text: &if CONFIG.game.enhancements.gamescope.framerate.focused > 0 { - CONFIG.game.enhancements.gamescope.framerate.focused.to_string() - } else { - String::new() + set_text: &match CONFIG.game.enhancements.gamescope.framerate.focused { + Some(value) if value > 0 => value.to_string(), + _ => String::new() }, connect_changed => |row| { if is_ready() { if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.framerate.focused = row.text().parse().unwrap_or_default(); - + let value = row.text() + .parse::() + .unwrap_or_default(); + + config.game.enhancements.gamescope.framerate.focused = if value > 0 { + Some(value) + } else { + None + }; + Config::update(config); } } @@ -215,17 +210,56 @@ impl SimpleAsyncComponent for GamescopeApp { set_title: &tr!("unfocused-framerate-limit"), set_input_purpose: gtk::InputPurpose::Digits, - set_text: &if CONFIG.game.enhancements.gamescope.framerate.unfocused > 0 { - CONFIG.game.enhancements.gamescope.framerate.unfocused.to_string() - } else { - String::new() + set_text: &match CONFIG.game.enhancements.gamescope.framerate.unfocused { + Some(value) if value > 0 => value.to_string(), + _ => String::new() }, connect_changed => |row| { if is_ready() { if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.framerate.unfocused = row.text().parse().unwrap_or_default(); - + let value = row.text() + .parse::() + .unwrap_or_default(); + + config.game.enhancements.gamescope.framerate.unfocused = if value > 0 { + Some(value) + } else { + None + }; + + Config::update(config); + } + } + } + } + }, + + add = &adw::PreferencesGroup { + set_title: &tr!("upscaling"), + set_description: Some(&tr!("upscaling-description")), + + adw::ComboRow { + set_title: &tr!("upscaler"), + set_subtitle: &tr!("upscaler-description"), + + #[wrap(Some)] + set_model = >k::StringList::new(&[ + &tr!("none"), + &tr!("auto"), + &tr!("integer"), + &tr!("fit"), + &tr!("fill"), + &tr!("stretch") + ]), + + set_selected: CONFIG.game.enhancements.gamescope.upscaling.upscaler.ordinal() as u32, + + connect_selected_notify => |row| unsafe { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.upscaling.upscaler = GamescopeUpscaler::from_ordinal_unsafe(row.selected() as i8); + Config::update(config); } } @@ -233,42 +267,164 @@ impl SimpleAsyncComponent for GamescopeApp { }, adw::ComboRow { - set_title: &tr!("window-mode"), + set_title: &tr!("upscale-filter"), + set_subtitle: &tr!("upscale-filter-description"), #[wrap(Some)] set_model = >k::StringList::new(&[ - &tr!("borderless"), - &tr!("fullscreen") + &tr!("none"), + &tr!("linear"), + &tr!("nearest"), + &tr!("fsr"), + &tr!("nis"), + &tr!("pixel") ]), - set_selected: CONFIG.game.enhancements.gamescope.window_type.ordinal() as u32, + set_selected: CONFIG.game.enhancements.gamescope.upscaling.filter.ordinal() as u32, connect_selected_notify => |row| unsafe { if is_ready() { if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.window_type = WindowType::from_ordinal_unsafe(row.selected() as i8); - + config.game.enhancements.gamescope.upscaling.filter = GamescopeUpscaleFilter::from_ordinal_unsafe(row.selected() as i8); + Config::update(config); } } } }, - adw::ActionRow { + adw::ComboRow { + set_title: &tr!("upscale-sharpness"), + set_subtitle: &tr!("upscale-sharpness-description"), + + #[wrap(Some)] + set_model = >k::StringList::new(&[ + &tr!("none"), + &tr!("smallest"), + &tr!("small"), + &tr!("balanced"), + &tr!("high"), + &tr!("highest") + ]), + + set_selected: CONFIG.game.enhancements.gamescope.upscaling.sharpness.ordinal() as u32, + + connect_selected_notify => |row| unsafe { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.upscaling.sharpness = GamescopeUpscaleSharpness::from_ordinal_unsafe(row.selected() as i8); + + Config::update(config); + } + } + } + } + }, + + add = &adw::PreferencesGroup { + set_title: &tr!("options"), + + adw::SwitchRow { + set_title: &tr!("hdr-support"), + set_subtitle: &tr!("hdr-support-description"), + + set_active: CONFIG.game.enhancements.gamescope.options.hdr_support, + + connect_active_notify => |switch| { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.options.hdr_support = switch.is_active(); + + Config::update(config); + } + } + } + }, + + adw::SwitchRow { + set_title: &tr!("realtime-scheduler"), + set_subtitle: &tr!("realtime-scheduler-description"), + + set_active: CONFIG.game.enhancements.gamescope.options.realtime_scheduler, + + connect_active_notify => |switch| { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.options.realtime_scheduler = switch.is_active(); + + Config::update(config); + } + } + } + }, + + adw::SwitchRow { + set_title: &tr!("adaptive-sync"), + set_subtitle: &tr!("adaptive-sync-description"), + + set_active: CONFIG.game.enhancements.gamescope.options.adaptive_sync, + + connect_active_notify => |switch| { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.options.adaptive_sync = switch.is_active(); + + Config::update(config); + } + } + } + }, + + adw::SwitchRow { set_title: &tr!("force-grab-cursor"), set_subtitle: &tr!("force-grab-cursor-description"), - add_suffix = >k::Switch { - set_valign: gtk::Align::Center, - set_active: CONFIG.game.enhancements.gamescope.force_grab_cursor, + set_active: CONFIG.game.enhancements.gamescope.options.force_grab_cursor, - connect_state_notify => |switch| { - if is_ready() { - if let Ok(mut config) = Config::get() { - config.game.enhancements.gamescope.force_grab_cursor = switch.is_active(); + connect_active_notify => |switch| { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.options.force_grab_cursor = switch.is_active(); - Config::update(config); - } + Config::update(config); + } + } + } + }, + + adw::SwitchRow { + set_title: &tr!("mangohud"), + set_subtitle: &tr!("mangohud-description"), + + set_active: CONFIG.game.enhancements.gamescope.options.mangohud, + + connect_active_notify => |switch| { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.options.mangohud = switch.is_active(); + + Config::update(config); + } + } + } + } + }, + + add = &adw::PreferencesGroup { + set_title: &tr!("extra-args"), + set_description: Some(&tr!("extra-args-description")), + + adw::EntryRow { + set_title: &tr!("extra-args"), + + set_text: &CONFIG.game.enhancements.gamescope.extra_args, + + connect_changed => |row| { + if is_ready() { + if let Ok(mut config) = Config::get() { + config.game.enhancements.gamescope.extra_args = row.text().parse().unwrap_or_default(); + + Config::update(config); } } } From 05024235eb9d26027cfa491cf9deef64da97e701 Mon Sep 17 00:00:00 2001 From: Dylan Donnell Date: Thu, 29 Aug 2024 16:49:58 +0100 Subject: [PATCH 02/11] Update `de` locales --- assets/locales/de/enhancements.ftl | 2 +- assets/locales/de/gamescope.ftl | 54 +++++++++++++++--------------- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/assets/locales/de/enhancements.ftl b/assets/locales/de/enhancements.ftl index 67eee4f..a8422bd 100644 --- a/assets/locales/de/enhancements.ftl +++ b/assets/locales/de/enhancements.ftl @@ -53,6 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Fenster Modus borderless = Randlos -headless = Headless +headless = Kopflos popup = Popup fullscreen = Vollbild diff --git a/assets/locales/de/gamescope.ftl b/assets/locales/de/gamescope.ftl index 7037dd4..cd7bfca 100644 --- a/assets/locales/de/gamescope.ftl +++ b/assets/locales/de/gamescope.ftl @@ -2,51 +2,51 @@ game-resolution = Spiel-Auflösung gamescope-resolution = Gamescope-Auflösung framerate = Framerate -framerate-limit = Framerate limit -unfocused-framerate-limit = Unfocused framerate limit +framerate-limit = Framerate Begrenzung +unfocused-framerate-limit = Unfokussiertes Framerate Begrenzung -upscaling = Upscaling -upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms +upscaling = Upscaling +upscaling-description = Rendern des Spiels in niedrigeres Auflösung und das Spielqualität mit Spezial-Algorithmus verbessern upscaler = Upscaler -upscaler-description = Algorithm used to perform image upscaling +upscaler-description = Welches Algorithmus für das Upscaling verwendet wird -auto = Auto -integer = Integer -fit = Fit -fill = Fill -stretch = Stretch +auto = Automatisch +integer = Ganze Zahl +fit = Passen +fill = Füllen +stretch = Strecken upscale-filter = Filter -upscale-filter-description = Algorithm used to filter upscaled image +upscale-filter-description = Algorithmus um das Upscaliertes Bild zu filtern linear = Linear -nearest = Nearest +nearest = Nächste nis = NIS pixel = Pixel -upscale-sharpness = Sharpness -upscale-sharpness-description = Upscaling sharpness +upscale-sharpness = Shärfe +upscale-sharpness-description = Upscaling Shärfe -smallest = Smallest -small = Small -high = High -highest = Highest +smallest = Kleinste +small = Klein +high = Hoch +highest = Höchste -hdr-support = HDR support -hdr-support-description = Enable gamescope HDR output. Requires display support +hdr-support = HDR-Unterstützung +hdr-support-description = Gamescope HDR-Ausgabe aktivieren. Neustart des Displays ist erforderlich -realtime-scheduler = Realtime scheduler -realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes +realtime-scheduler = Echtzeit-Planer +realtime-scheduler-description = Benutzte Echtzeit-Planung. Verbessert die Spielleistung auf Kosten der Verlangsamung von Hintergrundprozessen -adaptive-sync = Adaptive sync -adaptive-sync-description = Enable variable refresh rate. Requires display support +adaptive-sync = Adaptive Synchronisierung +adaptive-sync-description = Aktiviere Variable Bildwiederholfrequenz. Neustart des Displays ist erforderlich force-grab-cursor = Cursor greifen erzwingen force-grab-cursor-description = Verwende immer den relativen Mausmodus, anstatt abhängig von der Sichtbarkeit des Cursors umzuschalten. Der Mauszeiger wird korrekt in der Mitte des Spiels zentriert. mangohud = MangoHUD -mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled +mangohud-description = Mit mangohud Overlay starten -extra-args = Extra arguments -extra-args-description = Extra arguments appended to the gamescope +extra-args = Zusätzliche Argumente +extra-args-description = Zusätzliche Argumente nach gamescope anhängen From 662a3477ea0f75865006b02a4c1e3bdff582ce2e Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Thu, 29 Aug 2024 17:53:05 +0200 Subject: [PATCH 03/11] build: updated launcher SDK --- Cargo.lock | 2 -- Cargo.toml | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f57c7e6..7d72ed8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -58,7 +58,6 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "anime-game-core" version = "1.22.2" -source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.22.2#e3f2c3361bd986e60c8b8e11b0921ac46d6473b8" dependencies = [ "anyhow", "bzip2", @@ -108,7 +107,6 @@ dependencies = [ [[package]] name = "anime-launcher-sdk" version = "1.18.0" -source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.18.0#62053890f6da849aba5253cac0e3ff769bb756bb" dependencies = [ "anime-game-core", "anyhow", diff --git a/Cargo.toml b/Cargo.toml index e612993..7c794b9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ glib-build-tools = "0.20" [dependencies.anime-launcher-sdk] git = "https://github.com/an-anime-team/anime-launcher-sdk" -tag = "1.18.0" +tag = "1.19.0" features = ["all", "genshin"] # path = "../anime-launcher-sdk" # ! for dev purposes only From dd85f1b6d3186e05a2ee8867277929d43d70e006 Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Thu, 29 Aug 2024 18:05:48 +0200 Subject: [PATCH 04/11] fix: (potentially) fixed a bug with pre-download button --- Cargo.lock | 6 ++++-- src/ui/main/mod.rs | 24 ++++++++++++------------ 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7d72ed8..23c89bf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -57,7 +57,8 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "anime-game-core" -version = "1.22.2" +version = "1.23.0" +source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.23.0#9db1b598418c8c973b4e3afbdc17dcacc8511f3f" dependencies = [ "anyhow", "bzip2", @@ -106,7 +107,8 @@ dependencies = [ [[package]] name = "anime-launcher-sdk" -version = "1.18.0" +version = "1.19.0" +source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.19.0#18bbd738c9e941b76c1883a969cf9de87e724646" dependencies = [ "anime-game-core", "anyhow", diff --git a/src/ui/main/mod.rs b/src/ui/main/mod.rs index ab2379f..b56a5b7 100644 --- a/src/ui/main/mod.rs +++ b/src/ui/main/mod.rs @@ -330,16 +330,16 @@ impl SimpleComponent for App { let temp = config.launcher.temp.unwrap_or_else(std::env::temp_dir); let mut downloaded = temp.join(game.file_name().unwrap()).metadata() - .map(|metadata| Some(metadata.len()) == game.downloaded_size()) + .map(|metadata| Some(metadata.len()) >= game.downloaded_size()) .unwrap_or(false); if downloaded { for voice in voices { - downloaded = !temp.join(voice.file_name().unwrap()).metadata() - .map(|metadata| Some(metadata.len()) == voice.downloaded_size()) + downloaded = temp.join(voice.file_name().unwrap()).metadata() + .map(|metadata| Some(metadata.len()) >= voice.downloaded_size()) .unwrap_or(false); - if downloaded { + if !downloaded { break; } } @@ -358,16 +358,16 @@ impl SimpleComponent for App { let temp = config.launcher.temp.unwrap_or_else(std::env::temp_dir); let mut downloaded = temp.join(game.file_name().unwrap()).metadata() - .map(|metadata| Some(metadata.len()) == game.downloaded_size()) + .map(|metadata| Some(metadata.len()) >= game.downloaded_size()) .unwrap_or(false); if downloaded { for voice in voices { - downloaded = !temp.join(voice.file_name().unwrap()).metadata() - .map(|metadata| Some(metadata.len()) == voice.downloaded_size()) + downloaded = temp.join(voice.file_name().unwrap()).metadata() + .map(|metadata| Some(metadata.len()) >= voice.downloaded_size()) .unwrap_or(false); - if downloaded { + if !downloaded { break; } } @@ -541,11 +541,11 @@ impl SimpleComponent for App { } // Old warning message which I don't really understand now: - // + // // Doesn't work on all the systems // e.g. won't work if you didn't install wine system-wide // there's some reasons for it - // + // // UPD: I've tried this, and the problem is that it's completely pointless // For whatever reason it just doesn't work @@ -1015,7 +1015,7 @@ impl SimpleComponent for App { tracing::error!("Failed to update launcher state: {err}"); self.toast(tr!("launcher-state-updating-error"), Some(err.to_string())); - + None } }; @@ -1027,7 +1027,7 @@ impl SimpleComponent for App { } else { self.disabled_buttons = false; } - + if let Some(state) = state { match state { LauncherState::GameUpdateAvailable(_) | From aaecdd43b4e1a026d711fc2a07a0deb7fd323d03 Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Thu, 29 Aug 2024 18:26:15 +0200 Subject: [PATCH 05/11] build: updated launcher SDK --- Cargo.lock | 8 ++++---- Cargo.toml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 23c89bf..778ae7c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -57,8 +57,8 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "anime-game-core" -version = "1.23.0" -source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.23.0#9db1b598418c8c973b4e3afbdc17dcacc8511f3f" +version = "1.24.0" +source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.24.0#95293dc5a947ccd599c050157d89a40cd5431eb0" dependencies = [ "anyhow", "bzip2", @@ -107,8 +107,8 @@ dependencies = [ [[package]] name = "anime-launcher-sdk" -version = "1.19.0" -source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.19.0#18bbd738c9e941b76c1883a969cf9de87e724646" +version = "1.20.0" +source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.20.0#873f1e20f61939c7d4428fc2a6664d22f5177b27" dependencies = [ "anime-game-core", "anyhow", diff --git a/Cargo.toml b/Cargo.toml index 7c794b9..9f4a518 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ glib-build-tools = "0.20" [dependencies.anime-launcher-sdk] git = "https://github.com/an-anime-team/anime-launcher-sdk" -tag = "1.19.0" +tag = "1.20.0" features = ["all", "genshin"] # path = "../anime-launcher-sdk" # ! for dev purposes only From be3ae3ab1b0f808d9ce7c87926d62c2dc19ee371 Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Thu, 29 Aug 2024 18:30:04 +0200 Subject: [PATCH 06/11] feat: updated changelog --- CHANGELOG.md | 14 +++++++++++++- src/ui/about.rs | 12 ++++++++---- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1452fe8..bb7c0e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,9 +7,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Added + +- Added 4.8.0 and 5.0.0 voiceovers sizes +- Apply chmod 755 to extracted files if 7z was used + +### Changed + +- Reworked gamescope settings + ### Fixed - Create cache folder if it doesn't exist +- (potentially) fixed a bug with pre-download button +- Fixed calculation of unpacked files size due to API changes +- Respect downloaded file size in free space check ## [3.11.0] - 02.08.2024 @@ -491,7 +503,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- Improved components downloading in initial setup +- Improved components downloading in initial setup ## [3.1.2] - 07.03.2023 diff --git a/src/ui/about.rs b/src/ui/about.rs index 810773a..6090ed3 100644 --- a/src/ui/about.rs +++ b/src/ui/about.rs @@ -98,19 +98,23 @@ impl SimpleComponent for AboutDialog { "

Added

", "
    ", - "
  • Respect root \".version\" file for game version parsing
  • ", + "
  • Added 4.8.0 and 5.0.0 voiceovers sizes
  • ", + "
  • Apply chmod 755 to extracted files if 7z was used
  • ", "
", "

Changed

", "
    ", - "
  • Prioritize parsed game version over the API response
  • ", + "
  • Reworked gamescope settings
  • ", "
", - "

Removed

", + "

Fixed

", "
    ", - "
  • Removed migrate installation feature
  • ", + "
  • Create cache folder if it doesn't exist
  • ", + "
  • (potentially) fixed a bug with pre-download button
  • ", + "
  • Fixed calculation of unpacked files size due to API changes
  • ", + "
  • Respect downloaded file size in free space check
  • ", "
" ].join("\n"), From f7c90c54850525be3bbf3fc06ef893f88f08329b Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Fri, 30 Aug 2024 22:17:42 +0200 Subject: [PATCH 07/11] build: updated launcher SDK --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 9f4a518..71ed5c7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ glib-build-tools = "0.20" [dependencies.anime-launcher-sdk] git = "https://github.com/an-anime-team/anime-launcher-sdk" -tag = "1.20.0" +tag = "1.20.1" features = ["all", "genshin"] # path = "../anime-launcher-sdk" # ! for dev purposes only From 3e74213baffbd7b2c755437396f8153c5cd8b180 Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Fri, 30 Aug 2024 22:18:11 +0200 Subject: [PATCH 08/11] build: updated `Cargo.lock` --- Cargo.lock | 393 ++++++++++++++++++++++++++--------------------------- 1 file changed, 194 insertions(+), 199 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 778ae7c..243293e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17,6 +17,12 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + [[package]] name = "aes" version = "0.8.4" @@ -37,7 +43,7 @@ dependencies = [ "cfg-if", "once_cell", "version_check", - "zerocopy 0.7.35", + "zerocopy", ] [[package]] @@ -57,8 +63,8 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "anime-game-core" -version = "1.24.0" -source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.24.0#95293dc5a947ccd599c050157d89a40cd5431eb0" +version = "1.24.1" +source = "git+https://github.com/an-anime-team/anime-game-core?tag=1.24.1#0161c8def421e47679c4f5c721e92adf840b82a1" dependencies = [ "anyhow", "bzip2", @@ -107,8 +113,8 @@ dependencies = [ [[package]] name = "anime-launcher-sdk" -version = "1.20.0" -source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.20.0#873f1e20f61939c7d4428fc2a6664d22f5177b27" +version = "1.20.1" +source = "git+https://github.com/an-anime-team/anime-launcher-sdk?tag=1.20.1#8f1a9e165fc3d4da2e7719e6813eb1938d463ee2" dependencies = [ "anime-game-core", "anyhow", @@ -204,9 +210,9 @@ checksum = "9d151e35f61089500b617991b791fc8bfd237ae50cd5950803758a179b41e67a" [[package]] name = "arrayvec" -version = "0.7.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" [[package]] name = "ashpd" @@ -251,9 +257,9 @@ dependencies = [ [[package]] name = "async-io" -version = "2.3.3" +version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6baa8f0178795da0e71bc42c9e5d13261aac7ee549853162e66a241ba17964" +checksum = "444b0228950ee6501b3568d3c93bf1176a1fdbc3b758dcd9475046d30f4dc7e8" dependencies = [ "async-lock", "cfg-if", @@ -265,7 +271,7 @@ dependencies = [ "rustix", "slab", "tracing", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -281,9 +287,9 @@ dependencies = [ [[package]] name = "async-process" -version = "2.2.3" +version = "2.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7eda79bbd84e29c2b308d1dc099d7de8dcc7035e48f4bf5dc4a531a44ff5e2a" +checksum = "a8a07789659a4d385b79b18b9127fc27e1a59e1e89117c78c5ea3b806f016374" dependencies = [ "async-channel", "async-io", @@ -296,7 +302,7 @@ dependencies = [ "futures-lite", "rustix", "tracing", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -312,9 +318,9 @@ dependencies = [ [[package]] name = "async-signal" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfb3634b73397aa844481f814fad23bbf07fdb0eabec10f2eb95e58944b1ec32" +checksum = "637e00349800c0bdf8bfc21ebbc0b6524abea702b0da4168ac00d070d0c0b9f3" dependencies = [ "async-io", "async-lock", @@ -325,7 +331,7 @@ dependencies = [ "rustix", "signal-hook-registry", "slab", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -367,7 +373,7 @@ dependencies = [ "cc", "cfg-if", "libc", - "miniz_oxide", + "miniz_oxide 0.7.4", "object", "rustc-demangle", ] @@ -384,12 +390,6 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - [[package]] name = "bitflags" version = "2.6.0" @@ -398,9 +398,9 @@ checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "blake3" -version = "1.5.3" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9ec96fe9a81b5e365f9db71fe00edc4fe4ca2cc7dcb7861f0603012a7caa210" +checksum = "d82033247fd8e890df8f740e407ad4d038debb9eb1f40533fffb32e7d17dc6f7" dependencies = [ "arrayref", "arrayvec", @@ -521,15 +521,14 @@ checksum = "ade8366b8bd5ba243f0a58f036cc0ca8a2f069cff1a2351ef1cac6b083e16fc0" [[package]] name = "cairo-rs" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "797fd5a634dcb0ad0d7d583df794deb0a236d88e759cd34b7da20198c6c9d145" +checksum = "e8a0ea147c94108c9613235388f540e4d14c327f7081c9e471fc8ee8a2533e69" dependencies = [ - "bitflags 2.6.0", + "bitflags", "cairo-sys-rs", "glib", "libc", - "thiserror", ] [[package]] @@ -545,19 +544,20 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.7" +version = "1.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc" +checksum = "57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6" dependencies = [ "jobserver", "libc", + "shlex", ] [[package]] name = "cfg-expr" -version = "0.15.8" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" +checksum = "345c78335be0624ed29012dc10c49102196c6882c12dde65d9f35b02da2aada8" dependencies = [ "smallvec", "target-lexicon", @@ -602,9 +602,9 @@ dependencies = [ [[package]] name = "constant_time_eq" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" +checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" [[package]] name = "core-foundation" @@ -618,15 +618,15 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.12" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "51e852e6dc9a5bed1fae92dd2375037bf2b768725bf3be87811edee3249d09ad" dependencies = [ "libc", ] @@ -895,9 +895,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "field-offset" @@ -911,24 +911,24 @@ dependencies = [ [[package]] name = "filetime" -version = "0.2.23" +version = "0.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" +checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" dependencies = [ "cfg-if", "libc", - "redox_syscall", - "windows-sys 0.52.0", + "libredox", + "windows-sys 0.59.0", ] [[package]] name = "flate2" -version = "1.0.30" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" +checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.8.0", ] [[package]] @@ -1156,9 +1156,9 @@ dependencies = [ [[package]] name = "gdk-pixbuf" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28bb53ecb56857c683c9ec859908e076dd3969c7d67598bd8b1ce095d211304a" +checksum = "8730751991b97419fc3f0c2dca2c9e45b48edf46e48e0f965964ecf33889812f" dependencies = [ "gdk-pixbuf-sys", "gio", @@ -1168,9 +1168,9 @@ dependencies = [ [[package]] name = "gdk-pixbuf-sys" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f6681a0c1330d1d3968bec1529f7172d62819ef0bdbb0d18022320654158b03" +checksum = "1ffbf649fd5b1c8c0f0feeb015b7533c3ef92da2887fb95ddd338bc2b1644a7c" dependencies = [ "gio-sys", "glib-sys", @@ -1242,9 +1242,9 @@ checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" [[package]] name = "gio" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "398e3da68749fdc32783cbf7521ec3f65c9cf946db8c7774f8460af49e52c6e2" +checksum = "dcacaa37401cad0a95aadd266bc39c72a131d454fc012f6dfd217f891d76cc52" dependencies = [ "futures-channel", "futures-core", @@ -1255,14 +1255,13 @@ dependencies = [ "libc", "pin-project-lite", "smallvec", - "thiserror", ] [[package]] name = "gio-sys" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4feb96b31c32730ea3e1e89aecd2e4e37ecb1c473ad8f685e3430a159419f63" +checksum = "5237611e97e9b86ab5768adc3eef853ae713ea797aa3835404acdfacffc9fb38" dependencies = [ "glib-sys", "gobject-sys", @@ -1273,11 +1272,11 @@ dependencies = [ [[package]] name = "glib" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fee90a615ce05be7a32932cfb8adf2c4bbb4700e80d37713c981fb24c0c56238" +checksum = "9c1ea829497810f8e87f5ee6d05c4879af641704add879e6b6080607cceeefe4" dependencies = [ - "bitflags 2.6.0", + "bitflags", "futures-channel", "futures-core", "futures-executor", @@ -1290,7 +1289,6 @@ dependencies = [ "libc", "memchr", "smallvec", - "thiserror", ] [[package]] @@ -1304,9 +1302,9 @@ dependencies = [ [[package]] name = "glib-macros" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4da558d8177c0c8c54368818b508a4244e1286fce2858cef4e547023f0cfa5ef" +checksum = "951aa19c5e89555c0ca5e94ee874b24b2594ece8412b387bd84ee3266b8a3ea0" dependencies = [ "heck", "proc-macro-crate", @@ -1317,9 +1315,9 @@ dependencies = [ [[package]] name = "glib-sys" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4958c26e5a01c9af00dea669a97369eccbec29a8e6d125c24ea2d85ee7467b60" +checksum = "92eee4531c1c9abba945d19378b205031b5890e1f99c319ba0503b6e0c06a163" dependencies = [ "libc", "system-deps", @@ -1340,9 +1338,9 @@ dependencies = [ [[package]] name = "gobject-sys" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6908864f5ffff15b56df7e90346863904f49b949337ed0456b9287af61903b8" +checksum = "fa3d1dcd8a1eb2e7c22be3d5e792b14b186f3524f79b25631730f9a8c169d49a" dependencies = [ "glib-sys", "libc", @@ -1351,9 +1349,9 @@ dependencies = [ [[package]] name = "graphene-rs" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "630e940ad5824f90221d6579043a9cd1f8bec86b4a17faaf7827d58eb16e8c1f" +checksum = "80aac87f74e81c0e13433e892a047237abdc37945c86887f5eed905038356e69" dependencies = [ "glib", "graphene-sys", @@ -1362,9 +1360,9 @@ dependencies = [ [[package]] name = "graphene-sys" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fb8fade7b754982f47ebbed241fd2680816fdd4598321784da10b9e1168836a" +checksum = "cc2f91ecd32989efad60326cc20a8fb252bd2852239a08e4e70cde8c100de9ca" dependencies = [ "glib-sys", "libc", @@ -1405,9 +1403,9 @@ dependencies = [ [[package]] name = "gtk4" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaffc6c743c9160514cc9b67eace364e5dc5798369fa809cdb04e035c21c5c5d" +checksum = "f4fe572bf318e5dbc6f5a2f8a25d853f1ae3f42768c0b08af6ca20a18f4057e1" dependencies = [ "cairo-rs", "field-offset", @@ -1426,9 +1424,9 @@ dependencies = [ [[package]] name = "gtk4-macros" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "188211f546ce5801f6d0245c37b6249143a2cb4fa040e54829ca1e76796e9f09" +checksum = "e9e7b362c8fccd2712297903717d65d30defdab2b509bc9d209cbe5ffb9fabaf" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -1548,9 +1546,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.3.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0" +checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" dependencies = [ "equivalent", "hashbrown", @@ -1626,9 +1624,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.69" +version = "0.3.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" dependencies = [ "wasm-bindgen", ] @@ -1678,9 +1676,20 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.155" +version = "0.2.158" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" +checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" + +[[package]] +name = "libredox" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +dependencies = [ + "bitflags", + "libc", + "redox_syscall", +] [[package]] name = "linux-raw-sys" @@ -1784,6 +1793,15 @@ dependencies = [ "adler", ] +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", +] + [[package]] name = "minreq" version = "2.12.0" @@ -1803,9 +1821,9 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4569e456d394deccd22ce1c1913e6ea0e54519f577285001215d33557431afe4" +checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" dependencies = [ "hermit-abi 0.3.9", "libc", @@ -1828,7 +1846,7 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" dependencies = [ - "bitflags 2.6.0", + "bitflags", "cfg-if", "cfg_aliases", "libc", @@ -1891,9 +1909,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.2" +version = "0.36.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f203fa8daa7bb185f760ae12bd8e097f63d17041dcdcaf675ac54cdf863170e" +checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a" dependencies = [ "memchr", ] @@ -1950,9 +1968,9 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "pango" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54768854025df6903061d0084fd9702a253ddfd60db7d9b751d43b76689a7f0a" +checksum = "5764e5a174a5a0ec054fe5962ce6d4fc7052e2d0dcc23bbc77202b40a4a403d3" dependencies = [ "gio", "glib", @@ -1962,9 +1980,9 @@ dependencies = [ [[package]] name = "pango-sys" -version = "0.20.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b07cc57d10cee4ec661f718a6902cee18c2f4cfae08e87e5a390525946913390" +checksum = "fd317e1de76b14b3d3efe05518c08b360327f1ab7fec150473a89ffcad4b072d" dependencies = [ "glib-sys", "gobject-sys", @@ -2014,9 +2032,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "piper" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1d5c74c9876f070d3e8fd503d748c7d974c3e48da8f41350fa5222ef9b4391" +checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" dependencies = [ "atomic-waker", "fastrand", @@ -2031,9 +2049,9 @@ checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] name = "polling" -version = "3.7.2" +version = "3.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3ed00ed3fbf728b5816498ecd316d1716eecaced9c0c8d2c5a6740ca214985b" +checksum = "cc2790cd301dec6cd3b7a025e4815cf825724a51c98dccfe6a3e55f05ffb6511" dependencies = [ "cfg-if", "concurrent-queue", @@ -2041,7 +2059,7 @@ dependencies = [ "pin-project-lite", "rustix", "tracing", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -2058,20 +2076,20 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.18" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dee4364d9f3b902ef14fab8a1ddffb783a1cb6b4bba3bfc1fa3922732c7de97f" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy 0.6.6", + "zerocopy", ] [[package]] name = "proc-macro-crate" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ - "toml_edit 0.21.1", + "toml_edit", ] [[package]] @@ -2091,9 +2109,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.36" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" dependencies = [ "proc-macro2", ] @@ -2156,11 +2174,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.4.1" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" dependencies = [ - "bitflags 1.3.2", + "bitflags", ] [[package]] @@ -2267,20 +2285,20 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustc_version" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ "semver", ] [[package]] name = "rustix" -version = "0.38.34" +version = "0.38.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" +checksum = "a85d50532239da68e9addb745ba38ff4612a242c1c7ceea689c4bc7c2f43c36f" dependencies = [ - "bitflags 2.6.0", + "bitflags", "errno", "libc", "linux-raw-sys", @@ -2376,7 +2394,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.6.0", + "bitflags", "core-foundation", "core-foundation-sys", "libc", @@ -2416,18 +2434,18 @@ checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" [[package]] name = "serde" -version = "1.0.204" +version = "1.0.209" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" +checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.204" +version = "1.0.209" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" +checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170" dependencies = [ "proc-macro2", "quote", @@ -2436,9 +2454,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.122" +version = "1.0.127" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da" +checksum = "8043c06d9f82bd7271361ed64f415fe5e12a77fdb52e573e7f06a516dea329ad" dependencies = [ "itoa", "memchr", @@ -2486,6 +2504,12 @@ dependencies = [ "lazy_static", ] +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + [[package]] name = "signal-hook-registry" version = "1.4.2" @@ -2555,9 +2579,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" -version = "2.0.72" +version = "2.0.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af" +checksum = "578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525" dependencies = [ "proc-macro2", "quote", @@ -2566,9 +2590,9 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.31.2" +version = "0.31.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4115055da5f572fff541dd0c4e61b0262977f453cc9fe04be83aba25a89bdab" +checksum = "355dbe4f8799b304b05e1b0f05fc59b2a18d36645cf169607da45bde2f69a1be" dependencies = [ "core-foundation-sys", "libc", @@ -2580,9 +2604,9 @@ dependencies = [ [[package]] name = "system-deps" -version = "7.0.1" +version = "7.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c81f13d9a334a6c242465140bd262fae382b752ff2011c4f7419919a9c97922" +checksum = "070a0a5e7da2d24be457809c4b3baa57a835fd2829ad8b86f9a049052fe71031" dependencies = [ "cfg-expr", "heck", @@ -2610,14 +2634,15 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tempfile" -version = "3.10.1" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" +checksum = "04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64" dependencies = [ "cfg-if", "fastrand", + "once_cell", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -2695,9 +2720,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.39.2" +version = "1.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daa4fb1bc778bd6f04cbfc4bb2d06a7396a8f299dc33ea1900cedaa316f467b1" +checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" dependencies = [ "backtrace", "bytes", @@ -2719,7 +2744,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.20", + "toml_edit", ] [[package]] @@ -2731,17 +2756,6 @@ dependencies = [ "serde", ] -[[package]] -name = "toml_edit" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" -dependencies = [ - "indexmap", - "toml_datetime", - "winnow 0.5.40", -] - [[package]] name = "toml_edit" version = "0.22.20" @@ -2752,7 +2766,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.18", + "winnow", ] [[package]] @@ -2986,19 +3000,20 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" dependencies = [ "cfg-if", + "once_cell", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" dependencies = [ "bumpalo", "log", @@ -3011,9 +3026,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.42" +version = "0.4.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" +checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" dependencies = [ "cfg-if", "js-sys", @@ -3023,9 +3038,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3033,9 +3048,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" dependencies = [ "proc-macro2", "quote", @@ -3046,15 +3061,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" +checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" [[package]] name = "web-sys" -version = "0.3.69" +version = "0.3.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" +checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" dependencies = [ "js-sys", "wasm-bindgen", @@ -3100,11 +3115,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -3195,6 +3210,15 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + [[package]] name = "windows-targets" version = "0.48.5" @@ -3316,15 +3340,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" -[[package]] -name = "winnow" -version = "0.5.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - [[package]] name = "winnow" version = "0.6.18" @@ -3347,12 +3362,12 @@ dependencies = [ [[package]] name = "xdg-home" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca91dcf8f93db085f3a0a29358cd0b9d670915468f4290e8b85d118a34211ab8" +checksum = "ec1cdab258fb55c0da61328dc52c8764709b249011b2cad0454c72f0bf10a1f6" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -3430,34 +3445,14 @@ dependencies = [ "zvariant", ] -[[package]] -name = "zerocopy" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "854e949ac82d619ee9a14c66a1b674ac730422372ccb759ce0c39cabcf2bf8e6" -dependencies = [ - "byteorder", - "zerocopy-derive 0.6.6", -] - [[package]] name = "zerocopy" version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ - "zerocopy-derive 0.7.35", -] - -[[package]] -name = "zerocopy-derive" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "125139de3f6b9d625c39e2efdd73d41bdac468ccd556556440e322be0e1bbd91" -dependencies = [ - "proc-macro2", - "quote", - "syn", + "byteorder", + "zerocopy-derive", ] [[package]] @@ -3493,9 +3488,9 @@ dependencies = [ [[package]] name = "zip" -version = "2.1.6" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40dd8c92efc296286ce1fbd16657c5dbefff44f1b4ca01cc5f517d8b7b3d3e2e" +checksum = "dc5e4288ea4057ae23afc69a4472434a87a2495cafce6632fd1c4ec9f5cf3494" dependencies = [ "aes", "arbitrary", @@ -3545,18 +3540,18 @@ dependencies = [ [[package]] name = "zstd-safe" -version = "7.2.0" +version = "7.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa556e971e7b568dc775c136fc9de8c779b1c2fc3a63defaafadffdbd3181afa" +checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.12+zstd.1.5.6" +version = "2.0.13+zstd.1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a4e40c320c3cb459d9a9ff6de98cff88f4751ee9275d140e2be94a2b74e4c13" +checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" dependencies = [ "cc", "pkg-config", From f52abc4afdbb05f8b4cbd6119de93eb3615671ee Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Sat, 31 Aug 2024 12:41:36 +0200 Subject: [PATCH 09/11] i18n: updated Indonesian --- assets/locales/id/gamescope.ftl | 51 ++++++++++++++++----------------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/assets/locales/id/gamescope.ftl b/assets/locales/id/gamescope.ftl index 2a55b30..4cf886e 100644 --- a/assets/locales/id/gamescope.ftl +++ b/assets/locales/id/gamescope.ftl @@ -2,51 +2,48 @@ game-resolution = Resolusi game gamescope-resolution = Resolusi Gamescope framerate = Framerate -framerate-limit = Framerate limit -unfocused-framerate-limit = Unfocused framerate limit +framerate-limit = Batas framerate +unfocused-framerate-limit = Batas framerate tidak fokus -upscaling = Peningkatan skala resolusi game -upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms +upscaling = Upscaling +upscaling-description = Render game dengan resolusi rendah dan meningkatkan kualitas gambar dengan algoritma upscaler = Upscaler -upscaler-description = Algorithm used to perform image upscaling +upscaler-description = Algoritma yang dipakai untuk melakukan proses upscaling -auto = Auto +auto = Otomatis integer = Integer fit = Fit -fill = Fill -stretch = Stretch +fill = Penuh +stretch = Perlebar upscale-filter = Filter -upscale-filter-description = Algorithm used to filter upscaled image +upscale-filter-description = Algoritma yang digunakan untuk memfilter gambar yang di-upscale -linear = Linear -nearest = Nearest +linear = Linier +nearest = Terdekat nis = NIS pixel = Pixel -upscale-sharpness = Sharpness -upscale-sharpness-description = Upscaling sharpness +upscale-sharpness = Ketajaman +upscale-sharpness-description = Ketajaman upscaling -smallest = Smallest -small = Small -high = High -highest = Highest +smallest = Terkecil +small = kecil +high = Tinggi +highest = Tertinggi -hdr-support = HDR support -hdr-support-description = Enable gamescope HDR output. Requires display support +hdr-support = Dukungan HDR +hdr-support-description = Aktifkan output HDR gamescope. Dibutuhkan monitor yang mendukung fitur HDR realtime-scheduler = Realtime scheduler -realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes +realtime-scheduler-description = Menjadwalkan proses game secara realtime. Meningkatkan performa game dengan penalti terhadap proses yang berjalan di background adaptive-sync = Adaptive sync -adaptive-sync-description = Enable variable refresh rate. Requires display support - -force-grab-cursor = Force grab cursor -force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game +adaptive-sync-description = Aktifkan variable refresh rate (VRR). Dibutuhkan monitor yang mendukung fitur VRR mangohud = MangoHUD -mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled +mangohud-description = Luncurkan dengan overlay performance monitor mangoapp (mangohud) -extra-args = Extra arguments -extra-args-description = Extra arguments appended to the gamescope +extra-args = Argumen tambahan +extra-args-description = Argumen tambahan untuk gamescope From f626b3aa66651f8a826bf3ee8d4961781a43e9e8 Mon Sep 17 00:00:00 2001 From: Dylan Donnell Date: Sat, 31 Aug 2024 15:34:18 +0100 Subject: [PATCH 10/11] Update `fr` locales --- assets/locales/fr/enhancements.ftl | 2 +- assets/locales/fr/gamescope.ftl | 64 +++++++++++++++--------------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/assets/locales/fr/enhancements.ftl b/assets/locales/fr/enhancements.ftl index 6f3c253..3c48fe3 100644 --- a/assets/locales/fr/enhancements.ftl +++ b/assets/locales/fr/enhancements.ftl @@ -53,6 +53,6 @@ fps-unlocker-interval-description = Delay in milliseconds between overwriting th window-mode = Type de fenêtre borderless = Sans bordure -headless = Headless +headless = Sans fenêtre popup = Popup fullscreen = Plein écran diff --git a/assets/locales/fr/gamescope.ftl b/assets/locales/fr/gamescope.ftl index f639452..8b036b5 100644 --- a/assets/locales/fr/gamescope.ftl +++ b/assets/locales/fr/gamescope.ftl @@ -1,52 +1,52 @@ game-resolution = Résolution du jeu gamescope-resolution = Résolution de Gamescope -framerate = Framerate -framerate-limit = Framerate limit -unfocused-framerate-limit = Unfocused framerate limit +framerate = Fréquence de trame +framerate-limit = Limite de fréquence de trame +unfocused-framerate-limit = Limite de fréquence de trame non concentré upscaling = Upscaling (mise à l'échelle intelligente) -upscaling-description = Render the game in lower resolution and improve the image quality using special algorithms +upscaling-description = Rendu du jeu en résolution inférieure et l'amélioré avec les algorithmes spéciales -upscaler = Upscaler -upscaler-description = Algorithm used to perform image upscaling +upscaler = Algorithme de mise à l'échelle +upscaler-description = Algorithme utilisé pour effectuer la mise à l'échelle de l'image -auto = Auto -integer = Integer -fit = Fit -fill = Fill -stretch = Stretch +auto = Automatique +integer = Entier +fit = Passer +fill = Remplir +stretch = Étirer -upscale-filter = Filter -upscale-filter-description = Algorithm used to filter upscaled image +upscale-filter = Filtre +upscale-filter-description = Algorithme utilisé pour filtrer l'image mise à l'échelle -linear = Linear -nearest = Nearest +linear = Linéaire +nearest = Plus proche nis = NIS pixel = Pixel -upscale-sharpness = Sharpness -upscale-sharpness-description = Upscaling sharpness +upscale-sharpness = Netteté +upscale-sharpness-description = Netteté de la mise à l'échelle -smallest = Smallest -small = Small -high = High -highest = Highest +smallest = Le plus petit +small = Petit +high = Haut +highest = Le plus haut -hdr-support = HDR support -hdr-support-description = Enable gamescope HDR output. Requires display support +hdr-support = Prise en charge HDR +hdr-support-description = Activer la sortie HDR du gamescope. Nécessite la prise en charge de l'écran -realtime-scheduler = Realtime scheduler -realtime-scheduler-description = Use realtime game process scheduling. Improves game performance in cost of slowing down background processes +realtime-scheduler = Programmateur en temps réel +realtime-scheduler-description = Utiliser la programmation des processus de jeu en temp réel. Améliore les performances du jeu au prix d'un ralentissement des processus d'arrière-plan -adaptive-sync = Adaptive sync -adaptive-sync-description = Enable variable refresh rate. Requires display support +adaptive-sync = Synchronisation adaptif +adaptive-sync-description = Activer la fréquence de trame variable. Nécessite la prise en charge de l'écran -force-grab-cursor = Force grab cursor -force-grab-cursor-description = Always use relative mouse mode instead of flipping dependent on cursor visibility. The mouse cursor will correctly be centered in the game +force-grab-cursor = Forcer la saisie du curseur +force-grab-cursor-description = Utilisez toujours le mode souris relatif au lieu d'inverser le mode en fonction de la visibilité du curseur. Le curseur de la souris sera correctement centré dans le jeu mangohud = MangoHUD -mangohud-description = Launch with the mangoapp (mangohud) performance overlay enabled +mangohud-description = Lacement avec la surcouche MangoHUD activée -extra-args = Extra arguments -extra-args-description = Extra arguments appended to the gamescope +extra-args = Arguments supplémentaires +extra-args-description = Arguments supplémentaires ajoutés au Gamescope From b24544954c38ab8f6b2c57bb5e12e526c717c14f Mon Sep 17 00:00:00 2001 From: Nikita Podvirnyi Date: Sun, 1 Sep 2024 18:07:04 +0200 Subject: [PATCH 11/11] 3.12.0 --- CHANGELOG.md | 5 ++++- Cargo.lock | 2 +- Cargo.toml | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bb7c0e8..a6f7029 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [3.12.0] - 01.09.2024 + ### Added - Added 4.8.0 and 5.0.0 voiceovers sizes @@ -566,7 +568,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
-[unreleased]: https://github.com/an-anime-team/an-anime-game-launcher/compare/3.11.0...next +[unreleased]: https://github.com/an-anime-team/an-anime-game-launcher/compare/3.12.0...next +[3.12.0]: https://github.com/an-anime-team/an-anime-game-launcher/compare/3.11.0...3.12.0 [3.11.0]: https://github.com/an-anime-team/an-anime-game-launcher/compare/3.10.3...3.11.0 [3.10.3]: https://github.com/an-anime-team/an-anime-game-launcher/compare/3.10.2...3.10.2 [3.10.2]: https://github.com/an-anime-team/an-anime-game-launcher/compare/3.10.1...3.10.2 diff --git a/Cargo.lock b/Cargo.lock index 243293e..d3ec4d4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -88,7 +88,7 @@ dependencies = [ [[package]] name = "anime-game-launcher" -version = "3.11.0" +version = "3.12.0" dependencies = [ "anime-launcher-sdk", "anyhow", diff --git a/Cargo.toml b/Cargo.toml index 71ed5c7..40940f0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anime-game-launcher" -version = "3.11.0" +version = "3.12.0" description = "Anime Game launcher" authors = ["Nikita Podvirnyi "] homepage = "https://github.com/an-anime-team/an-anime-game-launcher"