#![allow(dead_code)] use crate::adapter::_private::NonExhaustive; use rat_event::{HandleEvent, MouseOnly, Outcome, Regular}; use rat_focus::{FocusFlag, HasFocus}; use ratatui::buffer::Buffer; use ratatui::layout::Rect; use ratatui::prelude::{StatefulWidget, Style}; use ratatui::text::Line; use ratatui::widgets::Widget; use std::marker::PhantomData; #[derive(Debug, Default)] pub struct TextInputF<'a> { style: Style, focus_style: Style, phantom_data: PhantomData<&'a ()>, } #[derive(Debug, Clone)] pub struct TextInputFState { pub focus: FocusFlag, pub area: Rect, pub non_exhaustive: NonExhaustive, } impl<'a> TextInputF<'a> { /// Base text style. pub fn style(mut self, style: impl Into