google-labs-jules[bot]
47a7674c14
🧹 Fix unsafe unwrap on file path conversion in CLI and GUI
...
Replaced `.to_str().unwrap()` with `.to_string_lossy()` when converting
`PathBuf` to `String` to prevent potential crashes if the path contains
invalid Unicode. This change improves the robustness of both the CLI
and GUI components when handling file paths.
- Modified `src/bin/cli.rs` to safely handle `file_path`.
- Modified `src/gui/mod.rs` to safely handle `path` in `play_file`.
Co-authored-by: arabianq <55220741+arabianq@users.noreply.github.com >
2026-03-06 19:52:30 +00:00
arabianq
92a576de37
fix(pwsp-daemon): added retries to link_player_to_virtual_mic()
...
https://github.com/arabianq/pipewire-soundpad/issues/15
2026-03-06 15:19:06 +03:00
arabianq
ce948ce678
feat: you can now get volume for all sound individually, not only via fullstate
2026-02-25 00:34:05 +03:00
arabianq
8126efe8d9
feat(pwsp-gui): slash now toggles search focus
2026-02-25 00:12:50 +03:00
arabianq
a7dd0b97d1
fix(pwsp-gui): some hotkeys now won't work when search entry is focused
2026-02-25 00:10:55 +03:00
arabianq
c08898e4f2
deps: bump rodio to 0.22.1
2026-02-23 13:58:08 +03:00
arabianq
58e5f039be
feat(cli, flatpak): implemented kill action for pwsp-cli.
...
use it instead of pkill in the flatpak wrapper
2026-02-23 13:40:41 +03:00
arabianq
8bfa5daf78
feat: show pwsp-gui version in settings
2026-02-14 15:46:56 +03:00
arabianq
b816d2aa88
feat: get daemon's version using pwsp-cli
...
pwsp-cli get daemon-version
2026-02-14 15:43:17 +03:00
arabianq
6a0ac61033
refactor: removed icons:: everywhere
2026-02-14 15:14:03 +03:00
arabianq
baae7a1ccf
feat: you can now open dirs/files in system's file manager using context menus
2026-02-14 15:09:05 +03:00
arabianq
654694cecf
feat: dirs and files now support context menu (right mouse button)
2026-02-14 14:58:47 +03:00
arabianq
ce5910b9a6
fix: improve device lookup in get_device function and update daemon device name
2026-01-28 22:30:33 +03:00
arabianq
b0c670235e
fix: impossible to remove directories
2026-01-28 22:07:05 +03:00
arabianq
f1d4ffd7fa
fix: handle errors when opening a directory in SoundpadGui
2026-01-28 21:44:00 +03:00
arabianq
49e01f0318
fix(gui): correct calculation of vertical separator's position
2026-01-28 03:31:54 +03:00
arabianq
5ea9b3b0ba
feat(daemon): implementet get full-state command
2026-01-28 02:41:33 +03:00
arabianq
ca85d4c369
refactor: remove redundant device linking in play method
2026-01-28 02:28:23 +03:00
arabianq
4499b1d3aa
feat(gui): now directories can be reordered using drag and drop
2026-01-28 02:10:36 +03:00
arabianq
d385e5356e
refactor: simplify device retrieval in link_player_to_virtual_mic function
2026-01-28 01:30:03 +03:00
arabianq
b4a0dc6a83
feat: now pwsp will automatically detect when input device is connected/disconnected and properly link/unlink it
2026-01-28 01:26:43 +03:00
arabianq
2e570b3bb0
fix: navigating through files using keyboard now works correctly with filtered files
2026-01-28 00:45:52 +03:00
arabianq
ee4554286e
refactor: improved filtering functionality
2026-01-28 00:45:20 +03:00
arabianq
2c6f0d932e
refactor: refactor input handling for Enter key and directory navigation
2026-01-28 00:34:44 +03:00
arabianq
4e7606fdc6
feat: remove escape key functionality from input handling
2026-01-28 00:28:34 +03:00
arabianq
03df631690
refactor: enhance search field focus functionality and input handling
2026-01-28 00:28:08 +03:00
arabianq
6df826f210
feat: you can now collapse every audio track
2026-01-28 00:03:56 +03:00
arabianq
cdf306cfe9
feat: make vertical separator in GUI adjustable
2026-01-27 23:51:14 +03:00
arabianq
74a436b171
fix: add serde default attribute to DaemonConfig and GuiConfig structs
2026-01-27 23:50:50 +03:00
arabianq
f59050ef04
feat: shift + enter is now equal to shift + left mouse
2026-01-25 00:20:55 +03:00
arabianq
bae10edc99
feat: replace synchronous requests with asynchronous counterparts for improved performance
2026-01-25 00:14:14 +03:00
arabianq
cfa2681ba3
feat: enhance file playback controls with shift and ctrl modifiers
2026-01-25 00:00:11 +03:00
arabianq
03e936ac34
feat: sort tracks by their id in AudioPlayer on get_tracks
2026-01-24 23:59:23 +03:00
arabianq
f7f96abcbb
feat: add functionality to stop all audio tracks with backspace key
2026-01-24 23:46:51 +03:00
arabianq
4d54443593
feat: add master volume slider
2026-01-24 23:45:33 +03:00
arabianq
5afe3dd45b
refactor: remove unused requests and variables from start_app_state_thread
2026-01-24 22:36:26 +03:00
arabianq
bd75ac6190
refactor: remove unused fields from AudioPlayerState
2026-01-24 22:34:25 +03:00
arabianq
3e6a8b6e79
feat: first attemp to support playing multiple tracks in parallel
2026-01-24 22:18:42 +03:00
arabianq
16e94e71d3
fix: update input device properties to output for capture_MONO
2026-01-16 16:16:27 +03:00
arabianq
6cf4a9744d
replace println! with eprintln! for errors
2026-01-08 02:46:44 +03:00
arabianq
d9ced4e650
fix: replace .except() with correct error handling
2026-01-08 02:45:07 +03:00
arabianq
c1f3f34169
feat: pwsp-gui now uses Request::toggle_loop instead of set Request::set_loop
2026-01-02 04:41:00 +03:00
arabianq
6c06da7b0d
feat: implemented toggle-loop
2026-01-02 04:39:48 +03:00
arabianq
fe8fec4ea7
fix: loop -> tokio::select! in pwsp-daemon main loop for less CPU usage
2026-01-02 04:12:49 +03:00
arabianq
7583e72687
fix: remove debug print statements from commands loop
2026-01-02 04:09:21 +03:00
arabianq
e4b4a3d198
fix: remove unnecessary mutability in audio player lock
2026-01-02 03:59:56 +03:00
arabianq
a7af1caace
fix: highly improved GUI performance
2026-01-02 03:59:05 +03:00
arabianq
c5086189d6
fix: changed position slider step from 1.0 to 0.01
...
now it looks fine when playing short files
2026-01-02 03:58:38 +03:00
arabianq
ac667f1273
feat: make_request_sync now uses tokio instead of futures
2026-01-02 03:33:20 +03:00
arabianq
fdb79e609f
fix: deadlock in play_toggle
2026-01-02 03:32:56 +03:00