Commit graph

452 commits

Author SHA1 Message Date
iamanaws
07ac838964 chore: fix and apply copilot suggestions 2025-11-20 21:46:19 -08:00
iamanaws
7c641bf258 chore(lint): fix clippy warnings 2025-11-20 20:52:31 -08:00
iamanaws
e184121f5f fix: detect and handle cross-user app restoration behavior
- Add cross-user behavior detection for unexpected restoration patterns
- Fix user isolation to prevent operations on unintended users
- Handle uninstall→restore, uninstall→uninstall, and restore→restore cases
- Prevent ping-pong restoration loops from OEM multi-user implementations

Related to #507
2025-11-20 20:52:31 -08:00
iamanaws
88997bdccc fix(adb): prevent crashes from non-UTF8 output
Use lossy UTF-8 conversion in ADB operations and add user-friendly error messages for common OEM failures (Samsung Knox, work profiles, permission errors).

Closes #1005
Merged from #1024

Co-authored-by: simplehima <simplehima@users.noreply.github.com>
2025-11-20 20:52:31 -08:00
iamanaws
7a15e18844 feat(pkg-state): add fallback verification and disable on reinstall
- Verify package state after operations via ADB commands
- Fallback to disable when uninstall fails due to reinstallation
- Fallback to uninstall when disable fails due to re-enabling
- Add UI notifications to inform users of fallback actions
- Remove unused ChangePackageState message variant

Fixes #632
2025-11-20 20:52:31 -08:00
iamanaws
ebcaf5e31f fix(backup): continue restoration when packages are missing from device
Skip missing packages with warning instead of failing entire restore process.
Fixes #538
2025-11-18 18:17:18 -08:00
iamanaws
7580105910 chore(lint): solve clippy warnings 2025-11-17 07:24:07 -08:00
iamanaws
4ab886490e chore: replace deprecated adb_shell_command with run_adb_action 2025-11-17 07:15:18 -08:00
iamanaws
369cfaa946 chore(deps): bump iced from 0.12.0 to 0.13.1 2025-11-17 07:13:03 -08:00
Rudxain
f956c5d452
docs(main): rm redundant doc-comment
this fixes `unused-doc-comments` lint warn
2025-10-31 19:21:45 -04:00
Rudxain
ab3081b11d
style(gui/views/list): pkg->p rename, to not shadow pkg 2025-10-31 17:41:09 -04:00
Rudxain
fb131df206
ci(adb): use debug_assert to not trigger panic_in_result_fn 2025-10-31 17:41:09 -04:00
Rudxain
0dc61c825f
refactor(adb): comment-out all running (user) stuff 2025-10-31 17:41:08 -04:00
Rudxain
956d64aa64
refactor(gui/views/list): inline delay_hide_copy_confirmation
fn added in 2ca3e05a8e
2025-10-31 17:41:08 -04:00
Rudxain
6a8ac88b67
ci: disable test_save_changes 2025-10-31 17:41:07 -04:00
Rudxain
7477f02f83
refactor: rm PickList (unused) 2025-10-31 17:41:07 -04:00
Rudxain
3fabd4a8d0
refactor(gui/views/list): mark unused var
lint regression at 26afc32b69
2025-10-31 17:41:07 -04:00
Rudxain
d383da804d
ci: cargo clippy --fix; cargo fmt 2025-10-31 17:41:06 -04:00
Rudxain
54308e1c58
ci(adb-sync): un-deprecate adb_shell_command; add warn to docs 2025-10-31 17:41:05 -04:00
Rudxain
2729c72c76
ci: rm config.devices.len() assertion 2025-10-31 17:41:05 -04:00
Henrique Lustosa
3b7c13dafd Fix lint issue 2025-08-03 19:57:56 -03:00
Henrique Lustosa
26afc32b69 Add null action on scroll to avoid crash 2025-08-03 11:10:09 -03:00
Adel Aloui
23ac7ae6ee style: fix formatting issues in list.rs to pass cargo fmt 2025-08-01 15:40:53 +01:00
Adel Aloui
2ca3e05a8e feat(list): add copy confirmation for error messages and improve clipboard handling 2025-08-01 14:17:32 +01:00
Adel Aloui
a20c53a1bc feat(list): add CopyError message and clipboard functionality for error handling 2025-08-01 13:51:38 +01:00
Rudxain
207e312741
feat(adb-pm): handle "running" user state 2025-07-22 10:43:55 -04:00
Rudxain
c5799702e2
refactor: rm all regex, and properly parse pm list users 2025-07-22 10:43:55 -04:00
Rudxain
ca0cfd400d
refactor(adb): rm all regex refs in module 2025-07-22 10:43:54 -04:00
Rudxain
5633b077c2
refactor(adb): rm regex dependency from PackageId::new by adding some utils.
and:
- refactor `adb` `version` assertions to call `next` explicitly,
rather than matching on iteration count.
- re-add debug-assertions for `pm list packages`
2025-07-22 10:43:50 -04:00
Rudxain
be13905042 chore(deps): upgrade ureq to v3 2025-07-10 10:34:56 +02:00
Rudxain
8707cf296e style: cargo fmt 2025-07-10 10:34:56 +02:00
Rudxain
712d61a63c refactor: cargo clippy --fix 2025-07-10 10:34:56 +02:00
samuele.ruffino
d471b798c9
feat: make package descriptions selectable and copyable (#1010)
* feat: make package descriptions selectable and copyable

- Replace text widget with text_editor for package descriptions
- Add read-only text_editor that allows text selection and copying
- Implement Clone manually for List struct to handle text_editor::Content
- Add text_editor StyleSheet implementation to match app theme

This improves UX by allowing users to copy package descriptions for
research or sharing purposes while maintaining the same visual appearance.

---------

Co-authored-by: Samuele Domenico Ruffino <sdruffino@it.iliad.com>
2025-07-10 04:04:32 -04:00
Rudxain
f34e603213
docs: new log-file name
forgot to change this in 2d8d06f
2025-07-10 02:31:13 -04:00
trustytrojan
6f9e70b647
feat(gui/list): allow searching in descriptions (#977)
Search by description as well as by name

---------

Co-authored-by: Rudxain <76864299+Rudxain@users.noreply.github.com>
2025-06-08 16:12:02 -04:00
Sharun
d857bef9b6
fix(crash): index out of bounds exception (#972)
* fix: index out of bounds exception

* cargo fmt

* refactor using get()

* fmt

* potential fix for checkboxes
2025-06-06 10:33:30 +08:00
Rudxain
59854c4c7c
perf: minor opt (runtime and compile-time) 2025-05-14 23:05:31 -04:00
Rudxain
c0a876da83
refactor: replace CommandType by PackageInfo
https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation/issues/760
2025-05-14 23:05:30 -04:00
Rudxain
17a48aae02
style: cargo clippy --fix 2025-05-14 23:05:30 -04:00
Rudxain
a7fd492f5a
refactor(save): more idiomatic list_available_backup_user 2025-05-14 23:05:30 -04:00
Jarmo Tenhunen
c177fdaac6
fix(sync): remove unnecessary semicolon 2025-05-13 20:47:41 +03:00
Jarmo Tenhunen
cd068e2e47
fix(sync): correct logging typo 2025-05-13 20:46:55 +03:00
Rudxain
2d8d06fc3d
feat(log): single log-file (const name) 2025-04-29 18:20:19 -04:00
Rudxain
e20b9aef72
fix(views:about): default text for adb version failure
regression introduced here:
3cc2f1d004
2025-03-27 18:46:08 -04:00
Rudxain
6cb12ea91b
perf(ADB): defer version parsing to caller
Change the method signature to
allow the consumer to decide when/if and how to parse the `stdout`
2025-03-27 18:41:40 -04:00
Rudxain
7506112daf
fix: refactor and sync self-update cfgs
regressed by: 3cc2f1d004
2025-03-10 16:22:51 -04:00
Rudxain
f6bf0048b5
hotfix(adb): use actual cfg instead of debug_assert
fixes regression introduced by this commit:
db719e0cb4
2025-03-10 15:56:30 -04:00
Ricardo Fernández Serrata
f9f8212562
Merge pull request #894 from Universal-Debloater-Alliance/feat/gui/adb-v__893
feat(GUI:view:about): show `adb version`
2025-03-10 15:16:56 -04:00
Rudxain
adeed4c1a5
docs(adb): mv alloc comment 2025-03-10 14:44:51 -04:00
Rudxain
db719e0cb4
test(ADB): verify adb version format with debug_assertions 2025-03-10 14:37:27 -04:00