diff options
Diffstat (limited to 'wgpu/src/renderer')
-rw-r--r-- | wgpu/src/renderer/widget/text_input.rs | 50 |
1 files changed, 7 insertions, 43 deletions
diff --git a/wgpu/src/renderer/widget/text_input.rs b/wgpu/src/renderer/widget/text_input.rs index 4e0274b8..fa108d68 100644 --- a/wgpu/src/renderer/widget/text_input.rs +++ b/wgpu/src/renderer/widget/text_input.rs @@ -46,7 +46,7 @@ impl text_input::Renderer for Renderer { text_bounds, value, size, - state.cursor.draw_position(value), + state.cursor().cursor_position(value), font, ); @@ -116,20 +116,20 @@ impl text_input::Renderer for Renderer { text_bounds, value, size, - state.cursor.draw_position(value), + state.cursor().cursor_position(value), font, ); - /*let selection = match cursor { - text_input::Cursor::Index(_) => Primitive::None, - text_input::Cursor::Selection { .. } => { + let selection = match state.cursor().selection_position() { + None => Primitive::None, + Some(_) => { let (cursor_left_offset, _) = measure_cursor_and_scroll_offset( self, text_bounds, value, size, - state.cursor.left(), + state.cursor().left(), font, ); let (cursor_right_offset, _) = @@ -138,7 +138,7 @@ impl text_input::Renderer for Renderer { text_bounds, value, size, - state.cursor.right(), + state.cursor().right(), font, ); let width = cursor_right_offset - cursor_left_offset; @@ -157,42 +157,6 @@ impl text_input::Renderer for Renderer { border_color: Color::TRANSPARENT, } } - };*/ - - let selection = if !state.cursor.is_selection() { - Primitive::None - } else { - let (cursor_left_offset, _) = measure_cursor_and_scroll_offset( - self, - text_bounds, - value, - size, - state.cursor.left(), - font, - ); - let (cursor_right_offset, _) = measure_cursor_and_scroll_offset( - self, - text_bounds, - value, - size, - state.cursor.right(), - font, - ); - let width = cursor_right_offset - cursor_left_offset; - Primitive::Quad { - bounds: Rectangle { - x: text_bounds.x + cursor_left_offset, - y: text_bounds.y, - width, - height: text_bounds.height, - }, - background: Background::Color( - style_sheet.selection_color(), - ), - border_radius: 0, - border_width: 0, - border_color: Color::TRANSPARENT, - } }; let cursor = Primitive::Quad { |