pub struct App {Show 59 fields
pub language: Language,
pub should_quit: bool,
pub repo_info: Option<RepoInfo>,
pub selected_index: usize,
pub show_detail: bool,
pub input_mode: InputMode,
pub filter_text: String,
pub filter_query: FilterQuery,
pub branches: Vec<BranchInfo>,
pub branch_selected_index: usize,
pub branch_create_input: String,
pub file_statuses: Vec<FileStatus>,
pub status_selected_index: usize,
pub commit_message: String,
pub commit_type: Option<CommitType>,
pub status_message: Option<String>,
pub status_message_level: StatusMessageLevel,
pub status_message_at: Option<Instant>,
pub is_loading: bool,
pub show_help: bool,
pub topology_cache: Option<BranchTopology>,
pub topology_nav: ListNavigation,
pub branch_recommendations_cache: Option<BranchRecommendations>,
pub commit_suggestions: Vec<CommitSuggestion>,
pub suggestion_selected_index: usize,
pub detail_nav: ListNavigation,
pub detail_diff_cache: Option<CommitDiff>,
pub stats_view: StatsViewState,
pub heatmap_view: HeatmapViewState,
pub file_history_view: FileHistoryViewState,
pub timeline_cache: Option<ActivityTimeline>,
pub blame_view: BlameViewState,
pub ownership_view: OwnershipViewState,
pub stash_view: StashViewState,
pub patch_view: PatchViewState,
pub branch_compare_view: BranchCompareViewState,
pub related_files_view: RelatedFilesViewState,
pub impact_score_view: ImpactScoreViewState,
pub change_coupling_view: ChangeCouplingViewState,
pub quality_score_view: QualityScoreViewState,
pub health_view: HealthViewState,
pub file_diff: FileDiffState,
pub commit_detail: CommitDetailState,
pub filter_presets: FilterPresets,
pub preset_save_slot: usize,
pub preset_save_name: String,
pub relevance_mode: bool,
pub working_files: Vec<String>,
pub quick_action_selected_index: usize,
pub active_sidebar_panel: SidebarPanel,
pub sidebar_focused: bool,
pub sidebar_width_ratio: u16,
pub watch_mode: bool,
pub session_cache: Option<Vec<AiSession>>,
pub staged_risk_score: Option<f64>,
pub staged_risk_level: Option<RiskLevel>,
pub staging_groups: Vec<StagingGroup>,
pub review_queue_view: ReviewQueueViewState,
pub pr_create_state: PrCreateState,
/* private fields */
}Expand description
Application state
Fields§
§language: LanguageDisplay language
should_quit: boolWhether the application should quit
repo_info: Option<RepoInfo>Repository information
selected_index: usizeCurrently selected event index (within filtered_indices)
show_detail: boolDetail display mode
input_mode: InputModeInput mode
filter_text: StringFilter string
filter_query: FilterQueryParsed filter query
branches: Vec<BranchInfo>Branch list
branch_selected_index: usizeBranch selection index
branch_create_input: StringInput string for branch creation
file_statuses: Vec<FileStatus>File status list
status_selected_index: usizeStatus selection index
commit_message: StringCommit message
commit_type: Option<CommitType>Selected commit type
status_message: Option<String>Status message (for displaying operation results)
status_message_level: StatusMessageLevelStatus message level
status_message_at: Option<Instant>Timestamp when status message was set (for auto-clearing)
is_loading: boolBackground loading flag
show_help: boolHelp display flag
topology_cache: Option<BranchTopology>Topology cache
Topology view navigation state
branch_recommendations_cache: Option<BranchRecommendations>Branch recommendation cache
commit_suggestions: Vec<CommitSuggestion>Commit suggestion list
suggestion_selected_index: usizeSuggestion selection index
Detail view navigation state
detail_diff_cache: Option<CommitDiff>Detail view diff cache
stats_view: StatsViewStateStats view state
heatmap_view: HeatmapViewStateHeatmap view state
file_history_view: FileHistoryViewStateFile history view state
timeline_cache: Option<ActivityTimeline>Activity timeline cache
blame_view: BlameViewStateBlame view state
ownership_view: OwnershipViewStateCode ownership view state
stash_view: StashViewStateStash view state
patch_view: PatchViewStatePatch view state
branch_compare_view: BranchCompareViewStateBranch compare view state
Related files view state
impact_score_view: ImpactScoreViewStateImpact Score view state
change_coupling_view: ChangeCouplingViewStateChange Coupling view state
quality_score_view: QualityScoreViewStateQuality Score view state
health_view: HealthViewStateHealth dashboard view state
file_diff: FileDiffStateFile diff cache state
commit_detail: CommitDetailStateCommit detail panel state
filter_presets: FilterPresetsFilter presets
preset_save_slot: usizePreset save dialog: selected slot (1-5)
preset_save_name: StringPreset save dialog: preset name input
relevance_mode: boolWhether relevance mode is enabled
working_files: Vec<String>Changed files in the working tree
quick_action_selected_index: usizeCurrently selected index in quick actions
Dashboard-style: active sidebar panel
Dashboard-style: whether sidebar has focus (false means main panel)
Dashboard-style: sidebar width ratio (percent, default 33)
watch_mode: boolWatch mode (auto-refresh on file changes)
session_cache: Option<Vec<AiSession>>AI session cache
staged_risk_score: Option<f64>Staged risk score (0.0-1.0)
staged_risk_level: Option<RiskLevel>Staged risk level
staging_groups: Vec<StagingGroup>Smart staging groups
review_queue_view: ReviewQueueViewStateReview queue view state
pr_create_state: PrCreateStatePR create state
Implementations§
Source§impl App
impl App
Sourcepub fn start_topology_view(&mut self, topology: BranchTopology)
pub fn start_topology_view(&mut self, topology: BranchTopology)
Start topology view
Sourcepub fn end_topology_view(&mut self)
pub fn end_topology_view(&mut self)
End topology view
Sourcepub fn selected_branch_recommendation(&self) -> Option<&BranchRecommendation>
pub fn selected_branch_recommendation(&self) -> Option<&BranchRecommendation>
Get recommended action for the selected branch
Sourcepub fn topology_move_up(&mut self)
pub fn topology_move_up(&mut self)
Move topology selection up
Sourcepub fn topology_move_down(&mut self)
pub fn topology_move_down(&mut self)
Move topology selection down
Sourcepub fn topology_adjust_scroll(&mut self, visible_lines: usize)
pub fn topology_adjust_scroll(&mut self, visible_lines: usize)
Set visible line count for topology view and adjust scroll
Sourcepub fn selected_topology_branch(&self) -> Option<&str>
pub fn selected_topology_branch(&self) -> Option<&str>
Get selected topology branch name
Sourcepub fn generate_commit_suggestions(&mut self)
pub fn generate_commit_suggestions(&mut self)
Generate commit suggestions
Sourcepub fn apply_suggestion(&mut self, index: usize)
pub fn apply_suggestion(&mut self, index: usize)
Apply suggestion
Sourcepub fn suggestion_move_up(&mut self)
pub fn suggestion_move_up(&mut self)
Move suggestion selection up
Sourcepub fn suggestion_move_down(&mut self)
pub fn suggestion_move_down(&mut self)
Move suggestion selection down
Sourcepub fn start_stats_view(&mut self, stats: RepoStats)
pub fn start_stats_view(&mut self, stats: RepoStats)
Start stats view
Sourcepub fn end_stats_view(&mut self)
pub fn end_stats_view(&mut self)
End stats view
Sourcepub fn export_stats(&mut self) -> Option<String>
pub fn export_stats(&mut self) -> Option<String>
Export statistics
Sourcepub fn stats_move_up(&mut self)
pub fn stats_move_up(&mut self)
Move selection up in stats view
Sourcepub fn stats_move_down(&mut self)
pub fn stats_move_down(&mut self)
Move selection down in stats view
Sourcepub fn stats_adjust_scroll(&mut self, visible_lines: usize)
pub fn stats_adjust_scroll(&mut self, visible_lines: usize)
Adjust stats view scroll
Get selected author name
Apply filter by author
Sourcepub fn start_heatmap_view(&mut self, heatmap: FileHeatmap)
pub fn start_heatmap_view(&mut self, heatmap: FileHeatmap)
Start heatmap view
Sourcepub fn end_heatmap_view(&mut self)
pub fn end_heatmap_view(&mut self)
End heatmap view
Sourcepub fn export_heatmap(&mut self) -> Option<String>
pub fn export_heatmap(&mut self) -> Option<String>
Export heatmap
Sourcepub fn heatmap_increase_aggregation(&mut self)
pub fn heatmap_increase_aggregation(&mut self)
Switch heatmap aggregation level to next (+ key)
Sourcepub fn heatmap_decrease_aggregation(&mut self)
pub fn heatmap_decrease_aggregation(&mut self)
Switch heatmap aggregation level to previous (- key)
Sourcepub fn heatmap_move_up(&mut self)
pub fn heatmap_move_up(&mut self)
Move selection up in heatmap view
Sourcepub fn heatmap_move_down(&mut self)
pub fn heatmap_move_down(&mut self)
Move selection down in heatmap view
Sourcepub fn heatmap_adjust_scroll(&mut self, visible_lines: usize)
pub fn heatmap_adjust_scroll(&mut self, visible_lines: usize)
Adjust heatmap view scroll
Sourcepub fn selected_heatmap_file(&self) -> Option<&str>
pub fn selected_heatmap_file(&self) -> Option<&str>
Get selected file path
Sourcepub fn filter_by_file(&mut self, file_path: &str)
pub fn filter_by_file(&mut self, file_path: &str)
Apply filter by file
Sourcepub fn start_file_history_view(
&mut self,
path: String,
history: Vec<FileHistoryEntry>,
)
pub fn start_file_history_view( &mut self, path: String, history: Vec<FileHistoryEntry>, )
Start file history view
Sourcepub fn end_file_history_view(&mut self)
pub fn end_file_history_view(&mut self)
End file history view
Sourcepub fn file_history_move_up(&mut self)
pub fn file_history_move_up(&mut self)
Move selection up in file history view
Sourcepub fn file_history_move_down(&mut self)
pub fn file_history_move_down(&mut self)
Move selection down in file history view
Sourcepub fn file_history_adjust_scroll(&mut self, visible_lines: usize)
pub fn file_history_adjust_scroll(&mut self, visible_lines: usize)
Adjust file history view scroll
Sourcepub fn selected_file_history(&self) -> Option<&FileHistoryEntry>
pub fn selected_file_history(&self) -> Option<&FileHistoryEntry>
Get selected file history entry
Sourcepub fn start_timeline_view(&mut self, timeline: ActivityTimeline)
pub fn start_timeline_view(&mut self, timeline: ActivityTimeline)
Start timeline view
Sourcepub fn end_timeline_view(&mut self)
pub fn end_timeline_view(&mut self)
End timeline view
Sourcepub fn export_timeline(&mut self) -> Option<String>
pub fn export_timeline(&mut self) -> Option<String>
Export timeline
Sourcepub fn start_blame_view(&mut self, path: String, blame: Vec<BlameLine>)
pub fn start_blame_view(&mut self, path: String, blame: Vec<BlameLine>)
Start blame view
Sourcepub fn end_blame_view(&mut self)
pub fn end_blame_view(&mut self)
End blame view
Sourcepub fn blame_move_up(&mut self)
pub fn blame_move_up(&mut self)
Move selection up in blame view
Sourcepub fn blame_move_down(&mut self)
pub fn blame_move_down(&mut self)
Move selection down in blame view
Sourcepub fn blame_adjust_scroll(&mut self, visible_lines: usize)
pub fn blame_adjust_scroll(&mut self, visible_lines: usize)
Adjust blame view scroll
Sourcepub fn selected_blame_line(&self) -> Option<&BlameLine>
pub fn selected_blame_line(&self) -> Option<&BlameLine>
Get selected blame line
Sourcepub fn start_ownership_view(&mut self, ownership: CodeOwnership)
pub fn start_ownership_view(&mut self, ownership: CodeOwnership)
Start code ownership view
Sourcepub fn end_ownership_view(&mut self)
pub fn end_ownership_view(&mut self)
End code ownership view
Sourcepub fn export_ownership(&mut self) -> Option<String>
pub fn export_ownership(&mut self) -> Option<String>
Export code ownership
Sourcepub fn ownership_move_up(&mut self)
pub fn ownership_move_up(&mut self)
Move selection up in code ownership view
Sourcepub fn ownership_move_down(&mut self)
pub fn ownership_move_down(&mut self)
Move selection down in code ownership view
Sourcepub fn ownership_adjust_scroll(&mut self, visible_lines: usize)
pub fn ownership_adjust_scroll(&mut self, visible_lines: usize)
Adjust code ownership view scroll
Sourcepub fn selected_ownership_entry(&self) -> Option<&CodeOwnershipEntry>
pub fn selected_ownership_entry(&self) -> Option<&CodeOwnershipEntry>
Get selected ownership entry
Sourcepub fn start_stash_view(&mut self, stashes: Vec<StashEntry>)
pub fn start_stash_view(&mut self, stashes: Vec<StashEntry>)
Start stash view
Sourcepub fn end_stash_view(&mut self)
pub fn end_stash_view(&mut self)
End stash view
Sourcepub fn stash_move_up(&mut self)
pub fn stash_move_up(&mut self)
Move selection up in stash view
Sourcepub fn stash_move_down(&mut self)
pub fn stash_move_down(&mut self)
Move selection down in stash view
Sourcepub fn stash_adjust_scroll(&mut self, visible_lines: usize)
pub fn stash_adjust_scroll(&mut self, visible_lines: usize)
Adjust stash view scroll
Sourcepub fn selected_stash_entry(&self) -> Option<&StashEntry>
pub fn selected_stash_entry(&self) -> Option<&StashEntry>
Get selected stash entry
Sourcepub fn update_stash_cache(&mut self, stashes: Vec<StashEntry>)
pub fn update_stash_cache(&mut self, stashes: Vec<StashEntry>)
Update stash list
Sourcepub fn start_patch_view(&mut self, patch: FilePatch)
pub fn start_patch_view(&mut self, patch: FilePatch)
Start patch view
Sourcepub fn end_patch_view(&mut self)
pub fn end_patch_view(&mut self)
End patch view
Sourcepub fn patch_scroll_up(&mut self)
pub fn patch_scroll_up(&mut self)
Scroll up in patch view
Sourcepub fn patch_scroll_down(&mut self, visible_lines: usize)
pub fn patch_scroll_down(&mut self, visible_lines: usize)
Scroll down in patch view
Sourcepub fn apply_preset(&mut self, slot: usize)
pub fn apply_preset(&mut self, slot: usize)
Apply filter preset (1-5 keys)
Sourcepub fn start_preset_save(&mut self)
pub fn start_preset_save(&mut self)
Start preset save dialog (Ctrl+S)
Sourcepub fn end_preset_save(&mut self)
pub fn end_preset_save(&mut self)
End preset save dialog
Sourcepub fn preset_slot_up(&mut self)
pub fn preset_slot_up(&mut self)
Preset save: move slot selection up
Sourcepub fn preset_slot_down(&mut self)
pub fn preset_slot_down(&mut self)
Preset save: move slot selection down
Sourcepub fn preset_name_push(&mut self, c: char)
pub fn preset_name_push(&mut self, c: char)
Preset save: add character to name input
Sourcepub fn preset_name_pop(&mut self)
pub fn preset_name_pop(&mut self)
Preset save: remove character from name input
Sourcepub fn save_preset(&mut self) -> bool
pub fn save_preset(&mut self) -> bool
Save preset
Sourcepub fn delete_preset(&mut self, slot: usize)
pub fn delete_preset(&mut self, slot: usize)
Delete preset
Sourcepub fn start_branch_compare_view(&mut self, compare: BranchCompare)
pub fn start_branch_compare_view(&mut self, compare: BranchCompare)
Start branch compare view
Sourcepub fn end_branch_compare_view(&mut self)
pub fn end_branch_compare_view(&mut self)
End branch compare view
Sourcepub fn branch_compare_toggle_tab(&mut self)
pub fn branch_compare_toggle_tab(&mut self)
Toggle tab
Sourcepub fn branch_compare_move_up(&mut self)
pub fn branch_compare_move_up(&mut self)
Move selection up
Sourcepub fn branch_compare_move_down(&mut self)
pub fn branch_compare_move_down(&mut self)
Move selection down
Sourcepub fn branch_compare_adjust_scroll(&mut self, visible_lines: usize)
pub fn branch_compare_adjust_scroll(&mut self, visible_lines: usize)
Adjust scroll
Sourcepub fn selected_branch_compare_commit(&self) -> Option<&CompareCommit>
pub fn selected_branch_compare_commit(&self) -> Option<&CompareCommit>
Get currently selected commit
Sourcepub fn toggle_relevance_mode(&mut self)
pub fn toggle_relevance_mode(&mut self)
Toggle relevance mode
Sourcepub fn set_working_files(&mut self, files: Vec<String>)
pub fn set_working_files(&mut self, files: Vec<String>)
Set working files
Sourcepub fn apply_relevance_sort(&mut self)
pub fn apply_relevance_sort(&mut self)
Calculate relevance scores and apply sorting
Sourcepub fn get_relevance_score(&self, hash: &str) -> Option<f32>
pub fn get_relevance_score(&self, hash: &str) -> Option<f32>
Get relevance score for the specified hash
Sourcepub fn is_relevance_mode(&self) -> bool
pub fn is_relevance_mode(&self) -> bool
Whether relevance mode is active
Start related files view
End related files view
Move down in related files view
Move up in related files view
Adjust related files view scroll
Sourcepub fn start_impact_score_view(&mut self, analysis: CommitImpactAnalysis)
pub fn start_impact_score_view(&mut self, analysis: CommitImpactAnalysis)
Start Impact Score view
Sourcepub fn end_impact_score_view(&mut self)
pub fn end_impact_score_view(&mut self)
End Impact Score view
Sourcepub fn impact_score_move_up(&mut self)
pub fn impact_score_move_up(&mut self)
Move selection up in Impact Score view
Sourcepub fn impact_score_move_down(&mut self)
pub fn impact_score_move_down(&mut self)
Move selection down in Impact Score view
Sourcepub fn impact_score_adjust_scroll(&mut self, visible_lines: usize)
pub fn impact_score_adjust_scroll(&mut self, visible_lines: usize)
Adjust Impact Score view scroll
Sourcepub fn selected_impact_score(&self) -> Option<&CommitImpactScore>
pub fn selected_impact_score(&self) -> Option<&CommitImpactScore>
Get selected Impact Score entry
Sourcepub fn export_impact_scores(&mut self) -> Option<String>
pub fn export_impact_scores(&mut self) -> Option<String>
Export Impact Score
Sourcepub fn start_change_coupling_view(&mut self, analysis: ChangeCouplingAnalysis)
pub fn start_change_coupling_view(&mut self, analysis: ChangeCouplingAnalysis)
Start Change Coupling view
Sourcepub fn end_change_coupling_view(&mut self)
pub fn end_change_coupling_view(&mut self)
End Change Coupling view
Sourcepub fn change_coupling_move_up(&mut self)
pub fn change_coupling_move_up(&mut self)
Move selection up in Change Coupling view
Sourcepub fn change_coupling_move_down(&mut self)
pub fn change_coupling_move_down(&mut self)
Move selection down in Change Coupling view
Sourcepub fn change_coupling_adjust_scroll(&mut self, visible_lines: usize)
pub fn change_coupling_adjust_scroll(&mut self, visible_lines: usize)
Adjust Change Coupling view scroll
Sourcepub fn selected_change_coupling(&self) -> Option<&FileCoupling>
pub fn selected_change_coupling(&self) -> Option<&FileCoupling>
Get selected Change Coupling entry
Sourcepub fn export_change_coupling(&mut self) -> Option<String>
pub fn export_change_coupling(&mut self) -> Option<String>
Export Change Coupling
Sourcepub fn start_quality_score_view(&mut self, analysis: CommitQualityAnalysis)
pub fn start_quality_score_view(&mut self, analysis: CommitQualityAnalysis)
Start Quality Score view
Sourcepub fn end_quality_score_view(&mut self)
pub fn end_quality_score_view(&mut self)
End Quality Score view
Sourcepub fn quality_score_move_up(&mut self)
pub fn quality_score_move_up(&mut self)
Move selection up in Quality Score view
Sourcepub fn quality_score_move_down(&mut self)
pub fn quality_score_move_down(&mut self)
Move selection down in Quality Score view
Sourcepub fn quality_score_adjust_scroll(&mut self, visible_lines: usize)
pub fn quality_score_adjust_scroll(&mut self, visible_lines: usize)
Adjust Quality Score view scroll
Sourcepub fn selected_quality_score(&self) -> Option<&CommitQualityScore>
pub fn selected_quality_score(&self) -> Option<&CommitQualityScore>
Get selected Quality Score entry
Sourcepub fn export_quality_scores(&mut self) -> Option<String>
pub fn export_quality_scores(&mut self) -> Option<String>
Export Quality Score
Sourcepub fn commit_detail_file_move_up(&mut self)
pub fn commit_detail_file_move_up(&mut self)
Move file selection up in commit detail panel
Sourcepub fn commit_detail_file_move_down(&mut self)
pub fn commit_detail_file_move_down(&mut self)
Move file selection down in commit detail panel
Sourcepub fn commit_detail_toggle_file_diff(&mut self)
pub fn commit_detail_toggle_file_diff(&mut self)
Toggle diff expand/collapse for the selected file in commit detail panel
Sourcepub fn commit_detail_expand_all(&mut self)
pub fn commit_detail_expand_all(&mut self)
Expand diff for all files in commit detail panel
Sourcepub fn commit_detail_collapse_all(&mut self)
pub fn commit_detail_collapse_all(&mut self)
Collapse diff for all files in commit detail panel
Sourcepub fn reset_commit_detail_file_state(&mut self)
pub fn reset_commit_detail_file_state(&mut self)
Commit detail: reset file selection, expand state, and scroll
Sourcepub fn commit_detail_auto_scroll(&mut self, visible_height: usize)
pub fn commit_detail_auto_scroll(&mut self, visible_height: usize)
Commit detail: auto-adjust scroll to keep selected file visible
Sourcepub fn start_review_queue_view(&mut self)
pub fn start_review_queue_view(&mut self)
Start review queue view
Sourcepub fn end_review_queue_view(&mut self)
pub fn end_review_queue_view(&mut self)
End review queue view
Sourcepub fn review_queue_move_up(&mut self)
pub fn review_queue_move_up(&mut self)
Move review queue selection up
Sourcepub fn review_queue_move_down(&mut self)
pub fn review_queue_move_down(&mut self)
Move review queue selection down
Sourcepub fn start_pr_create(&mut self)
pub fn start_pr_create(&mut self)
Start PR create view
Sourcepub fn end_pr_create(&mut self)
pub fn end_pr_create(&mut self)
End PR create view
Source§impl App
impl App
pub fn new() -> Self
Sourcepub fn load(&mut self, repo_info: RepoInfo, events: Vec<GitEvent>)
pub fn load(&mut self, repo_info: RepoInfo, events: Vec<GitEvent>)
Set repository information and events
Sourcepub fn set_repo(&mut self, repo: Repository)
pub fn set_repo(&mut self, repo: Repository)
Set repository for caching
Sourcepub fn get_repo(&self) -> Option<&Repository>
pub fn get_repo(&self) -> Option<&Repository>
Get reference to cached repository
Sourcepub fn set_head_hash(&mut self, hash: String)
pub fn set_head_hash(&mut self, hash: String)
Set HEAD hash (for @ key jump)
Sourcepub fn all_events(&self) -> &[GitEvent]
pub fn all_events(&self) -> &[GitEvent]
Get reference to all events
Sourcepub fn event_count(&self) -> usize
pub fn event_count(&self) -> usize
Get count of filtered events
Sourcepub fn move_to_top(&mut self)
pub fn move_to_top(&mut self)
Move to top (gg)
Sourcepub fn jump_to_head(&mut self)
pub fn jump_to_head(&mut self)
Jump to HEAD (@ key) Moves to HEAD position even during filtering
Sourcepub fn move_to_bottom(&mut self)
pub fn move_to_bottom(&mut self)
Move to bottom (G)
Sourcepub fn toggle_help(&mut self)
pub fn toggle_help(&mut self)
Toggle help display
Sourcepub fn close_help(&mut self)
pub fn close_help(&mut self)
Close help
pub fn start_quick_action_view(&mut self)
pub fn end_quick_action_view(&mut self)
pub fn quick_action_move_down(&mut self)
pub fn quick_action_move_up(&mut self)
pub fn selected_quick_action(&self) -> Option<QuickAction>
Sourcepub fn jump_to_next_label(&mut self)
pub fn jump_to_next_label(&mut self)
Jump to next labeled commit (] key)
Sourcepub fn jump_to_prev_label(&mut self)
pub fn jump_to_prev_label(&mut self)
Jump to previous labeled commit ([ key)
Sourcepub fn selected_event(&self) -> Option<&GitEvent>
pub fn selected_event(&self) -> Option<&GitEvent>
Get currently selected event
Sourcepub fn open_detail(&mut self)
pub fn open_detail(&mut self)
Open detail view
Sourcepub fn close_detail(&mut self)
pub fn close_detail(&mut self)
Close detail view
Sourcepub fn set_detail_diff(&mut self, diff: CommitDiff)
pub fn set_detail_diff(&mut self, diff: CommitDiff)
Cache diff in detail view
Sourcepub fn set_file_diff(&mut self, patch: FilePatch, path: String)
pub fn set_file_diff(&mut self, patch: FilePatch, path: String)
Set file diff cache
Sourcepub fn clear_file_diff(&mut self)
pub fn clear_file_diff(&mut self)
Clear file diff cache
Sourcepub fn file_diff_cache_path(&self) -> Option<&str>
pub fn file_diff_cache_path(&self) -> Option<&str>
Get file diff cache path
Sourcepub fn detail_move_up(&mut self)
pub fn detail_move_up(&mut self)
Move file selection up in detail view
Sourcepub fn detail_move_down(&mut self)
pub fn detail_move_down(&mut self)
Move file selection down in detail view
Sourcepub fn detail_adjust_scroll(&mut self, visible_lines: usize)
pub fn detail_adjust_scroll(&mut self, visible_lines: usize)
Adjust detail view scroll (considering visible line count)
Sourcepub fn start_filter(&mut self)
pub fn start_filter(&mut self)
Start filter mode
Sourcepub fn end_filter(&mut self)
pub fn end_filter(&mut self)
End filter mode
Sourcepub fn filter_push(&mut self, c: char)
pub fn filter_push(&mut self, c: char)
Add filter character
Sourcepub fn filter_pop(&mut self)
pub fn filter_pop(&mut self)
Remove filter character
Sourcepub fn filter_clear(&mut self)
pub fn filter_clear(&mut self)
Clear filter
Sourcepub fn preload_file_cache(
&mut self,
get_files: impl Fn(&str) -> Option<Vec<String>>,
)
pub fn preload_file_cache( &mut self, get_files: impl Fn(&str) -> Option<Vec<String>>, )
Preload file cache (when file filter is active) Note: Only caches the latest N entries to prevent UI blocking
Sourcepub fn clear_file_cache(&mut self)
pub fn clear_file_cache(&mut self)
Clear file cache
Sourcepub fn file_cache_is_empty(&self) -> bool
pub fn file_cache_is_empty(&self) -> bool
Whether file cache is empty
Sourcepub fn reapply_filter(&mut self)
pub fn reapply_filter(&mut self)
Reapply filter (used after cache update)
Sourcepub fn branch_name(&self) -> &str
pub fn branch_name(&self) -> &str
Get branch name
Sourcepub fn start_branch_select(&mut self, branches: Vec<BranchInfo>)
pub fn start_branch_select(&mut self, branches: Vec<BranchInfo>)
Start branch selection mode
Sourcepub fn end_branch_select(&mut self)
pub fn end_branch_select(&mut self)
End branch selection mode
Sourcepub fn branch_move_up(&mut self)
pub fn branch_move_up(&mut self)
Move branch selection up
Sourcepub fn branch_move_down(&mut self)
pub fn branch_move_down(&mut self)
Move branch selection down
Sourcepub fn selected_branch(&self) -> Option<&str>
pub fn selected_branch(&self) -> Option<&str>
Get selected branch name
Sourcepub fn update_branch(&mut self, branch: String)
pub fn update_branch(&mut self, branch: String)
Update repository info after branch switch
Sourcepub fn start_branch_create(&mut self)
pub fn start_branch_create(&mut self)
Start branch creation mode
Sourcepub fn end_branch_create(&mut self)
pub fn end_branch_create(&mut self)
End branch creation mode
Sourcepub fn branch_create_push(&mut self, c: char)
pub fn branch_create_push(&mut self, c: char)
Add character to branch name input
Sourcepub fn branch_create_pop(&mut self)
pub fn branch_create_pop(&mut self)
Remove character from branch name input
Sourcepub fn branch_create_name(&self) -> &str
pub fn branch_create_name(&self) -> &str
Get branch name being entered
Sourcepub fn all_events_replace(&mut self, events: Vec<GitEvent>)
pub fn all_events_replace(&mut self, events: Vec<GitEvent>)
Replace event list
Sourcepub fn annotate_events<F: FnMut(&mut GitEvent)>(&mut self, f: F)
pub fn annotate_events<F: FnMut(&mut GitEvent)>(&mut self, f: F)
Annotate all events with a mutation closure
Sourcepub fn filtered_indices_reset(&mut self, count: usize)
pub fn filtered_indices_reset(&mut self, count: usize)
Reset filter indices
Sourcepub fn start_status_view(&mut self, statuses: Vec<FileStatus>)
pub fn start_status_view(&mut self, statuses: Vec<FileStatus>)
Start status view mode
Sourcepub fn end_status_view(&mut self)
pub fn end_status_view(&mut self)
End status view mode
Sourcepub fn status_move_up(&mut self)
pub fn status_move_up(&mut self)
Move status selection up
Sourcepub fn status_move_down(&mut self)
pub fn status_move_down(&mut self)
Move status selection down
Sourcepub fn selected_file_status(&self) -> Option<&FileStatus>
pub fn selected_file_status(&self) -> Option<&FileStatus>
Get selected file status
Sourcepub fn update_branches(&mut self, branches: Vec<BranchInfo>)
pub fn update_branches(&mut self, branches: Vec<BranchInfo>)
Update branch list
Sourcepub fn update_file_statuses(&mut self, statuses: Vec<FileStatus>)
pub fn update_file_statuses(&mut self, statuses: Vec<FileStatus>)
Update file status list
Sourcepub fn set_status_message(&mut self, msg: String)
pub fn set_status_message(&mut self, msg: String)
Set status message
Sourcepub fn clear_expired_status_message(&mut self)
pub fn clear_expired_status_message(&mut self)
Clear expired status messages (auto-clear after 5 seconds)
Sourcepub fn start_commit_input(&mut self)
pub fn start_commit_input(&mut self)
Start commit input mode
Sourcepub fn end_commit_input(&mut self)
pub fn end_commit_input(&mut self)
End commit input mode
Sourcepub fn select_commit_type(&mut self, commit_type: CommitType)
pub fn select_commit_type(&mut self, commit_type: CommitType)
Select commit type
Sourcepub fn commit_message_push(&mut self, c: char)
pub fn commit_message_push(&mut self, c: char)
Add character to commit message
Sourcepub fn commit_message_pop(&mut self)
pub fn commit_message_pop(&mut self)
Remove character from commit message
Sourcepub fn commit_message_clear(&mut self)
pub fn commit_message_clear(&mut self)
Clear commit message
Sourcepub fn start_loading(&mut self)
pub fn start_loading(&mut self)
Start loading state
Sourcepub fn finish_loading(&mut self)
pub fn finish_loading(&mut self)
End loading state
Sourcepub fn append_events(&mut self, events: Vec<GitEvent>)
pub fn append_events(&mut self, events: Vec<GitEvent>)
Append events (for background loading)
Sourcepub fn filter_description(&self) -> String
pub fn filter_description(&self) -> String
Get filter query description
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> 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