From e1dc84698f65fe33b4beead3d7f936fb42b224e5 Mon Sep 17 00:00:00 2001 From: Luke Street Date: Sat, 7 Oct 2023 13:04:08 -0400 Subject: [PATCH] Restore context menu on highlightable fields Fixes #30 --- src/views/function_diff.rs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/views/function_diff.rs b/src/views/function_diff.rs index c7239c8..ee9dee2 100644 --- a/src/views/function_diff.rs +++ b/src/views/function_diff.rs @@ -163,7 +163,11 @@ fn write_ins( } else { Color32::TRANSPARENT }); - if ui.add(Label::new(op_label).sense(Sense::click())).clicked() { + if ui + .add(Label::new(op_label).sense(Sense::click())) + .context_menu(|ui| ins_context_menu(ui, ins)) + .clicked() + { if highlighted_op { ins_view_state.highlight = HighlightKind::None; } else { @@ -262,7 +266,11 @@ fn write_ins( write_text(")", base_color, &mut job, appearance.code_font.clone()); } writing_offset = new_writing_offset; - if ui.add(Label::new(job).sense(Sense::click())).clicked() { + if ui + .add(Label::new(job).sense(Sense::click())) + .context_menu(|ui| ins_context_menu(ui, ins)) + .clicked() + { if highlighted_arg { ins_view_state.highlight = HighlightKind::None; } else if matches!(arg, ObjInsArg::Reloc | ObjInsArg::RelocWithBase) { @@ -444,7 +452,11 @@ fn asm_row_ui( }, ..Default::default() }); - if ui.add(Label::new(job).sense(Sense::click())).clicked() { + if ui + .add(Label::new(job).sense(Sense::click())) + .context_menu(|ui| ins_context_menu(ui, ins)) + .clicked() + { if addr_highlight { ins_view_state.highlight = HighlightKind::None; } else {