admin panel fixed completely
This commit is contained in:
@@ -13,6 +13,7 @@ use crate::state::pages::auth::AuthState;
|
||||
use crate::state::pages::auth::LoginState;
|
||||
use crate::state::pages::auth::RegisterState;
|
||||
use crate::state::pages::admin::AdminState;
|
||||
use crate::state::pages::admin::AdminFocus;
|
||||
use crate::state::pages::intro::IntroState;
|
||||
use crate::state::app::buffer::BufferState;
|
||||
use crate::state::app::buffer::AppView;
|
||||
@@ -108,11 +109,24 @@ pub async fn run_ui() -> Result<()> {
|
||||
event_handler.command_message = format!("Error refreshing admin data: {}", e);
|
||||
}
|
||||
}
|
||||
app_state.ui.show_admin = true;
|
||||
let profile_names = app_state.profile_tree.profiles.iter()
|
||||
.map(|p| p.name.clone())
|
||||
.collect();
|
||||
app_state.ui.show_admin = true; // <<< RESTORE THIS
|
||||
let profile_names = app_state.profile_tree.profiles.iter() // <<< RESTORE THIS
|
||||
.map(|p| p.name.clone()) // <<< RESTORE THIS
|
||||
.collect(); // <<< RESTORE THIS
|
||||
admin_state.set_profiles(profile_names);
|
||||
|
||||
// Only reset to ProfilesPane if not already in a specific admin sub-focus
|
||||
if admin_state.current_focus == AdminFocus::default() ||
|
||||
!matches!(admin_state.current_focus,
|
||||
AdminFocus::InsideProfilesList |
|
||||
AdminFocus::Tables | AdminFocus::InsideTablesList |
|
||||
AdminFocus::Button1 | AdminFocus::Button2 | AdminFocus::Button3) {
|
||||
admin_state.current_focus = AdminFocus::ProfilesPane;
|
||||
}
|
||||
// Pre-select first profile item for visual consistency, but '>' won't show until 'select'
|
||||
if admin_state.profile_list_state.selected().is_none() && !app_state.profile_tree.profiles.is_empty() {
|
||||
admin_state.profile_list_state.select(Some(0));
|
||||
}
|
||||
}
|
||||
AppView::AddTable => app_state.ui.show_add_table = true,
|
||||
AppView::AddLogic => app_state.ui.show_add_logic = true,
|
||||
|
||||
Reference in New Issue
Block a user