on master help sign in
Create popup rect instead of using raw values
commit1562b5ce67fbe4239de3b45d21f5853a4c123b99 authorGokul Soumya <gokulps15@gmail.com> dateMon 6 Feb 2023, 04:53 (4 years ago) parent0f844ef
1 file changed+10−9
helix-term/src/ui/completion.rs+10−9
helix-term/src/ui/completion.rs+10−9
@@ -432,17 +432,18 @@ impl Component for Completion {
432432 None => return,
433433 };
434434
435− let (popup_x, popup_y) = self.popup.get_rel_position(area, cx);
436− let (popup_width, _popup_height) = self.popup.get_size();
437− let doc_width_available = area
438− .width
439− .saturating_sub(popup_x)
440− .saturating_sub(popup_width);
435+ let popup_area = {
436+ let (popup_x, popup_y) = self.popup.get_rel_position(area, cx);
437+ let (popup_width, popup_height) = self.popup.get_size();
438+ Rect::new(popup_x, popup_y, popup_width, popup_height)
439+ };
440+
441+ let doc_width_available = area.width.saturating_sub(popup_area.right());
441442 let doc_area = if doc_width_available > 30 {
442443 let mut doc_width = doc_width_available;
443− let mut doc_height = area.height.saturating_sub(popup_y);
444− let x = popup_x + popup_width;
445− let y = popup_y;
444+ let mut doc_height = area.height.saturating_sub(popup_area.top());
445+ let x = popup_area.right();
446+ let y = popup_area.top();
446447
447448 if let Some((rel_width, rel_height)) =
448449 markdown_doc.required_size((doc_width, doc_height))