diff --git a/objdiff-gui/src/app.rs b/objdiff-gui/src/app.rs index 88c42e9a..a500a320 100644 --- a/objdiff-gui/src/app.rs +++ b/objdiff-gui/src/app.rs @@ -775,9 +775,7 @@ impl eframe::App for App { if side_panel_available { egui::SidePanel::left("side_panel").show_animated(ctx, *show_side_panel, |ui| { - egui::ScrollArea::both().show(ui, |ui| { - config_ui(ui, state, show_project_config, config_state, appearance); - }); + config_ui(ui, state, show_project_config, config_state, appearance); }); } diff --git a/objdiff-gui/src/views/config.rs b/objdiff-gui/src/views/config.rs index d2620623..ceeee583 100644 --- a/objdiff-gui/src/views/config.rs +++ b/objdiff-gui/src/views/config.rs @@ -297,27 +297,36 @@ pub fn config_ui( node_open = NodeOpen::Open; } - CollapsingHeader::new(RichText::new("🗀 Objects").font(FontId { - size: appearance.ui_font.size, - family: appearance.code_font.family.clone(), - })) - .open(root_open) - .default_open(true) - .show(ui, |ui| { - let search = config_state.object_search.to_ascii_lowercase(); - ui.style_mut().wrap_mode = Some(egui::TextWrapMode::Extend); - for node in object_nodes.iter().filter_map(|node| { - filter_node( - objects, - node, - &search, - config_state.filter_diffable, - config_state.filter_incomplete, - config_state.show_hidden, - ) - }) { - display_node(ui, &mut new_selected_index, objects, &node, appearance, node_open); - } + egui::ScrollArea::both().auto_shrink(false).show(ui, |ui| { + CollapsingHeader::new(RichText::new("🗀 Objects").font(FontId { + size: appearance.ui_font.size, + family: appearance.code_font.family.clone(), + })) + .open(root_open) + .default_open(true) + .show(ui, |ui| { + let search = config_state.object_search.to_ascii_lowercase(); + ui.style_mut().wrap_mode = Some(egui::TextWrapMode::Extend); + for node in object_nodes.iter().filter_map(|node| { + filter_node( + objects, + node, + &search, + config_state.filter_diffable, + config_state.filter_incomplete, + config_state.show_hidden, + ) + }) { + display_node( + ui, + &mut new_selected_index, + objects, + &node, + appearance, + node_open, + ); + } + }); }); } if new_selected_index != selected_index { @@ -327,11 +336,6 @@ pub fn config_ui( state_guard.set_selected_obj(config); } } - if state_guard.config.selected_obj.is_some() - && ui.add_enabled(!config_state.build_running, egui::Button::new("Build")).clicked() - { - config_state.queue_build = true; - } } fn display_unit(