pub struct App {Show 44 fields
pub categories: Vec<CleanerCategory>,
pub category_index: usize,
pub item_list_state: ListState,
pub is_root: bool,
pub is_running: bool,
pub operation_start_time: Option<Instant>,
pub operation_end_time: Option<Instant>,
pub total_bytes_cleaned: u64,
pub show_help: bool,
pub result_messages: Vec<String>,
pub detailed_view: bool,
pub current_cleaner_index: usize,
pub animation_frame: usize,
pub last_frame_time: Instant,
pub terminal_width: u16,
pub terminal_height: u16,
pub compact_mode: bool,
pub show_performance_stats: bool,
pub operation_count: usize,
pub errors_count: usize,
pub paused: bool,
pub confirmation_mode: bool,
pub selected_cleaners_count: usize,
pub view_mode: ViewMode,
pub sort_mode: SortMode,
pub filter_mode: FilterMode,
pub detailed_cleaned_items: Vec<DetailedCleanedItem>,
pub detailed_list_scroll_state: ListState,
pub search_query: String,
pub search_active: bool,
pub detailed_view_filter: String,
pub demo_operation_timer: Option<Instant>,
pub demo_operations_completed: usize,
pub chart_type: ChartType,
pub operation_logs: Vec<String>,
pub show_progress_screen: bool,
pub password_prompt: PasswordPrompt,
pub needs_sudo: bool,
pub pending_operations: Vec<PendingOperation>,
pub awaiting_run_confirmation: bool,
pub preview_open: bool,
pub preview_results: Vec<(String, CleaningResult)>,
pub needs_admin_notice: bool,
pub pending_run_selection: Vec<PendingOperation>,
}Fields§
§categories: Vec<CleanerCategory>§category_index: usize§item_list_state: ListState§is_root: bool§is_running: bool§operation_start_time: Option<Instant>§operation_end_time: Option<Instant>§total_bytes_cleaned: u64§show_help: bool§result_messages: Vec<String>§detailed_view: bool§current_cleaner_index: usize§animation_frame: usize§last_frame_time: Instant§terminal_width: u16§terminal_height: u16§compact_mode: bool§show_performance_stats: bool§operation_count: usize§errors_count: usize§paused: bool§confirmation_mode: bool§selected_cleaners_count: usize§view_mode: ViewMode§sort_mode: SortMode§filter_mode: FilterMode§detailed_cleaned_items: Vec<DetailedCleanedItem>§detailed_list_scroll_state: ListState§search_query: String§search_active: bool§detailed_view_filter: String§demo_operation_timer: Option<Instant>§demo_operations_completed: usize§chart_type: ChartType§operation_logs: Vec<String>§show_progress_screen: bool§password_prompt: PasswordPrompt§needs_sudo: bool§pending_operations: Vec<PendingOperation>§awaiting_run_confirmation: boolWhether the “confirm this run” overlay is currently shown, awaiting
a yes/no answer before pending_operations actually executes.
preview_open: boolWhether the preview (dry-run) results overlay is currently shown.
preview_results: Vec<(String, CleaningResult)>Results of the most recent preview run: (cleaner_name, result).
needs_admin_notice: boolWhether the “needs Administrator” notice is shown (Windows only; there is no interactive sudo-password flow there).
pending_run_selection: Vec<PendingOperation>Selected cleaners staged while awaiting_run_confirmation is true.
Implementations§
Source§impl App
impl App
pub fn new() -> Self
pub fn toggle_search(&mut self)
pub fn clear_search(&mut self)
pub fn add_search_char(&mut self, c: char)
pub fn remove_search_char(&mut self)
pub fn get_category_distribution(&self) -> Vec<(String, usize, u64)>
pub fn next_item(&mut self)
pub fn previous_item(&mut self)
pub fn toggle_selected(&mut self)
pub fn next_category(&mut self)
pub fn previous_category(&mut self)
pub fn toggle_help(&mut self)
pub fn select_all(&mut self)
pub fn deselect_all(&mut self)
Sourcepub fn select_all_everywhere(&mut self)
pub fn select_all_everywhere(&mut self)
Select every item across every category (not just the active tab).
Sourcepub fn deselect_all_everywhere(&mut self)
pub fn deselect_all_everywhere(&mut self)
Deselect every item across every category (not just the active tab).
Sourcepub fn request_run(&mut self) -> Result<()>
pub fn request_run(&mut self) -> Result<()>
Gather selected cleaners and either show the confirmation overlay
(when confirmation_mode is on) or start execution immediately.
Sourcepub fn confirm_pending_run(&mut self) -> Result<()>
pub fn confirm_pending_run(&mut self) -> Result<()>
User confirmed the run in the confirmation overlay.
Sourcepub fn cancel_run_confirmation(&mut self)
pub fn cancel_run_confirmation(&mut self)
User cancelled the confirmation overlay.
Sourcepub fn run_preview(&mut self)
pub fn run_preview(&mut self)
Preview (dry-run) every selected cleaner synchronously: measures real sizes/paths without deleting anything or invoking any mutating external command, and shows the results in an overlay.
Sourcepub fn close_preview(&mut self)
pub fn close_preview(&mut self)
Close the preview results overlay.
Sourcepub fn start_operations_for_tests(
&mut self,
selected_cleaners: &[PendingOperation],
)
pub fn start_operations_for_tests( &mut self, selected_cleaners: &[PendingOperation], )
Test-only public wrapper around the private Self::start_operations,
so integration tests in tests/ (a separate crate, which can only
see pub items) can drive the exact same post-authentication code
path handle_key uses. Only compiled into debug builds.
pub fn update_animation(&mut self)
pub fn update_demo_operations(&mut self)
pub fn cancel_sudo_operations(&mut self)
pub fn handle_key(&mut self, key: KeyEvent) -> Result<bool>
pub fn handle_resize(&mut self, width: u16, height: u16)
pub fn toggle_compact_mode(&mut self)
pub fn toggle_auto_scroll(&mut self)
pub fn toggle_performance_stats(&mut self)
pub fn cycle_view_mode(&mut self)
pub fn cycle_sort_mode(&mut self)
pub fn cycle_filter_mode(&mut self)
pub fn toggle_pause(&mut self)
pub fn toggle_confirmation_mode(&mut self)
pub fn update_counters(&mut self)
pub fn clear_errors(&mut self)
pub fn get_elapsed_time(&self) -> String
pub fn add_detailed_cleaned_item( &mut self, path: String, size: u64, category: String, cleaner_name: String, item_type: CleanedItemType, )
pub fn scroll_detailed_list_up(&mut self)
pub fn scroll_detailed_list_down(&mut self)
pub fn get_filtered_detailed_items(&self) -> Vec<&DetailedCleanedItem>
pub fn toggle_chart_type(&mut self)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for App
impl RefUnwindSafe for App
impl Send for App
impl Sync for App
impl Unpin for App
impl UnsafeUnpin for App
impl UnwindSafe for App
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more