Commit Graph

8 Commits

Author SHA1 Message Date
Timon
1e332daaed
Refactor and API stabilization (#115)
- Major refactor and cleanup.
- Improved performance; 
    - No locking when writing to stdout. 
    - UNIX doesn't have any dynamic dispatch anymore. 
    - Windows has improved the way to check if ANSI modes are enabled.
    - Removed lot's of complex API calls: `from_screen`, `from_output`
    - Removed `Arc<TerminalOutput>` from all internal Api's. 
- Removed termios dependency for UNIX systems.
- Upgraded deps.
- Removed about 1000 lines of code
    - `TerminalOutput` 
    - `Screen`
    - unsafe code
    - Some duplicated code introduced by a previous refactor.
- Raw modes UNIX systems improved     
- Added `NoItalic` attribute
2019-04-10 23:46:30 +02:00
Timon Post
6cdce1bc25 Fixed broken tests, and corrected public export 2019-04-04 18:45:47 +02:00
Timon
ad74f6b524
Introduced: Crossterm Workspace and feature flags. (#84)
* Introduced: crossterm workspace, feature flags.
2019-01-27 21:16:14 +01:00
Timon Post
b717d306c3 Putted Screen behind an Option. Now when you call the functions: color, cursor, terminal, input you won't need to provide a Screen anymore.
When you want to work with the 'alternate screen' you can call the following functions: terminal::from_screen etc. Which will give you an instance to the back of the module you are calling it in.

So instead of:

let color = color(Screen::default());
let cursor = cursor(Screen::default());
let input = input(Screen::default());
let terminal = terminal(Screen::default());

You can do:

let color = color();
let cursor = cursor();
let input = input();
let terminal = terminal();
2018-11-21 07:54:16 -08:00
TimonPost
f7c6f36a46 Changed Crossterm type so that the user does not have to enter a reference to a Screen every function call and also updated the readme, docs,comments,examples 2018-08-14 21:40:07 +02:00
=
d23ef22a58 Updated all examples and comments tested unix logic 2018-08-13 21:04:07 +02:00
TimonPost
e1bbf1689f some examples fixed added multy threaded logging example and tested input and changed styling system 2018-08-11 17:58:15 +02:00
Jojolepro
518dcadd15 Moved files around. Added duplex example (broken). Broke alternate screen trying to add compat. 2018-07-31 22:50:51 +02:00