summaryrefslogtreecommitdiffstats
path: root/src/input.rs
blob: 011101155d4fb44f36c35c2f250dcdc663039dde (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//! Git Interactive Rebase Tool - Input Module
//!
//! # Description
//! This module is used to handle working with input events.
//!
//! ## Test Utilities
//! To facilitate testing the usages of this crate, a set of testing utilities are provided. Since
//! these utilities are not tested, and often are optimized for developer experience than
//! performance should only be used in test code.

mod event;
mod event_handler;
mod event_provider;
mod input_options;
mod key_bindings;
mod key_event;
mod standard_event;
mod thread;

pub(crate) use crossterm::event::{KeyCode, KeyEventKind, KeyModifiers, MouseEvent, MouseEventKind};

pub(crate) use self::{
	event::Event,
	event_handler::EventHandler,
	event_provider::{read_event, EventReaderFn},
	input_options::InputOptions,
	key_bindings::{map_keybindings, KeyBindings},
	key_event::KeyEvent,
	standard_event::StandardEvent,
	thread::{State, Thread, THREAD_NAME},
};