1#![allow(clippy::new_without_default)]
2
3pub mod editor;
4pub mod render;
5pub mod textarea;
6pub mod wrapping;
7
8pub use editor::{
9 ApplyEditPlanError, EditBuffer, EditCommand, EditDelta, EditOutcome, EditPlan,
10 PostEditCursorAffinity, SingleLineViewport, WordStyle, classify_key_event,
11};
12pub use textarea::{
13 ClipboardProvider, ElementId, ElementKind, InternalClipboard, MouseAction, TextArea,
14 TextAreaState, TextElement, TextElementEvent, TextElementEventKind, is_undo_input,
15};
16
17use crossterm::event::KeyModifiers;
18
19#[cfg(target_os = "windows")]
21#[inline]
22pub fn is_altgr(modifiers: KeyModifiers) -> bool {
23 let without_shift = modifiers & !KeyModifiers::SHIFT;
24 without_shift == (KeyModifiers::CONTROL | KeyModifiers::ALT)
25}
26
27#[cfg(not(target_os = "windows"))]
28#[inline]
29pub fn is_altgr(_modifiers: KeyModifiers) -> bool {
30 false
31}