Avoid unnecessary string cloning and allocation in `pwsp-gui/src/gui/mod.rs` when checking if a file matches the search query.
Specifically, we replaced `.to_string_lossy().to_string()` with `.to_string_lossy()` because `.to_lowercase()` directly works on `Cow<str>`, avoiding an intermediate String allocation.
Measured improvement was verified using an isolated benchmark demonstrating roughly 10-15% reduction in execution time.
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
* Refactor project into a Cargo workspace with distinct packages
- Created a root `Cargo.toml` defining a workspace.
- Moved `src/types` and `src/utils` into a new `pwsp-lib` crate for shared logic.
- Split binaries into their own crates: `pwsp-daemon`, `pwsp-cli`, and `pwsp-gui`.
- Shifted all dependencies into `[workspace.dependencies]` for centralized version management.
- Updated import paths across all crates (e.g. from `pwsp::` to `pwsp_lib::`).
- Updated build scripts, GitHub actions, Flatpak manifest, and AUR PKGBUILD to support the new workspace structure.
- Ensured no core application logic was altered.
Co-authored-by: arabianq <55220741+arabianq@users.noreply.github.com>
* Fix cargo-deb build process in GitHub actions for workspace architecture
Co-authored-by: arabianq <55220741+arabianq@users.noreply.github.com>
* Fix cargo-deb asset discovery by using exact target/release paths
Co-authored-by: arabianq <55220741+arabianq@users.noreply.github.com>
* refactor deps in Cargo.toml files
* fix incorrect assets path
---------
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>