MCPcopy Create free account
hub / github.com/GCWing/BitFun / complete_mouse_selection_or_click

Method complete_mouse_selection_or_click

src/apps/cli/src/ui/chat/mouse.rs:211–238  ·  view source on GitHub ↗
(
        &mut self,
        column: u16,
        row: u16,
    )

Source from the content-addressed store, hash-verified

209 }
210
211 pub fn complete_mouse_selection_or_click(
212 &mut self,
213 column: u16,
214 row: u16,
215 ) -> MouseGestureOutcome {
216 let Some((origin_x, origin_y)) = self.selection_mouse_down else {
217 return MouseGestureOutcome::None;
218 };
219
220 let _ = self.update_mouse_selection(column, row);
221 let dragged = self.selection_dragged;
222 self.selection_mouse_down = None;
223 self.selection_dragged = false;
224
225 if dragged {
226 let text = self.selection_text();
227 self.selection_anchor = None;
228 self.selection_focus = None;
229 if let Some(text) = text {
230 return MouseGestureOutcome::CopyText(text);
231 }
232 return MouseGestureOutcome::None;
233 }
234
235 self.selection_anchor = None;
236 self.selection_focus = None;
237 MouseGestureOutcome::Click(origin_x, origin_y)
238 }
239
240 pub fn render_mouse_selection_overlay(&mut self, frame: &mut Frame, area: Rect) {
241 let Some((start, end)) = self.selection_bounds() else {

Callers 1

handle_non_key_eventMethod · 0.80

Calls 2

selection_textMethod · 0.80

Tested by

no test coverage detected