From 515101b39a27c372ce0c79ac0390b9209695d70c Mon Sep 17 00:00:00 2001 From: Breadway Date: Thu, 16 Jul 2026 18:11:33 +0800 Subject: [PATCH] 0.6.3: image previews, Hyprland-scale fix, password reveal, Keybinds editor Wallpaper: file picker moved off the deprecated FileChooserDialog to gtk4::FileDialog, plus a "Browse ~/Pictures/Backgrounds" thumbnail grid (recursive scan, decoded previews) so picking a wallpaper isn't guessing blind from filenames. Fixed the app becoming unusable at Hyprland scale > 1.0: the sidebar's ~30-row nav list had no ScrolledWindow, so its unscrollable minimum height exceeded the logical screen size once scale shrank it below ~1000px, clipping the window (Save buttons included) with no way to reach the rest. Sidebar now scrolls independently; content column's minimum width also dropped 760->560 for the same reason at scale 2.0. Wi-Fi/saved-network password fields had no way to unhide what you typed. Swapped every masked Entry (network.rs, breadcrumbs.rs, and the shared password_row widget) to gtk4::PasswordEntry, which has a native reveal-icon toggle. Added a Keybinds editor for hypr/binds.json -- the one JSON Hyprland config (globals/common/per-layout binds) with no GUI anywhere in the app, despite Display/Appearance/Startup Apps all having one for their own JSON config. Action-specific fields (command/direction/workspace/ options/...) round-trip through a compact inline-JSON column rather than hardcoding a widget per action shape. --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 702d6b7..d0ecbab 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -28,7 +28,7 @@ checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8" [[package]] name = "bos-settings" -version = "0.6.2" +version = "0.6.3" dependencies = [ "async-channel", "bread-theme", diff --git a/Cargo.toml b/Cargo.toml index 529c51f..e89c231 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bos-settings" -version = "0.6.2" +version = "0.6.3" edition = "2021" [dependencies]