Commit Graph

19 Commits

Author SHA1 Message Date
Zrzka
91d07275ad Improved snake example (#231) 2019-09-18 19:31:49 +02:00
Zrzka
5494525d89 2018 edition (#222) 2019-09-16 13:34:08 +02:00
Timon
1a60924abd
Command API experiment (#175)
- Command API to introduce easier usability, better performance, and more control over to which buffer to write, and when to flush the buffer to the terminal.
2019-07-24 20:10:27 +02:00
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
f70baa5987 fixed wrong version nummber and crucial bug 2019-01-03 11:54:03 -08:00
Timon
ff9b5d9a39
Refactored winapi and moved code to (crossterm_winapi) (#67)
* Refactored winapi and moved some code to its own crate (crossterm_winapi).
2018-12-31 10:55:48 -08: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
5777eaab1d chagnes 2018-08-25 11:04:42 +02:00
TimonPost
9102108b3a changes 2018-08-24 18:49:25 +02:00
TimonPost
308cc743d1 fix 2018-08-24 18:48:25 +02:00
=
91b7cb775b mut chagne 2018-08-24 18:32:48 +02:00
=
f1959589c8 some fixes 2018-08-23 22:16:31 +02:00
=
7f05f6e8a7 some fixes 2018-08-23 22:15:58 +02:00
=
99fffee6b3 fixed raw mode 2018-08-23 18:15:18 +02:00
TimonPost
cc55c190d8 Removed downcast for HANDLE WinAPi. Also we do not need to keep track of current HANDLE since this will now be gotton from CreateFileW 2018-08-22 19:58:30 +02:00
TimonPost
685bc5e961 Refactor 2018-08-19 23:13:21 +02:00
TimonPost
25bf065c09 Snake game example 2018-08-17 21:06:06 +02:00