ArthurSonzogni
508b2ef048
Improve thread usages.
2020-03-25 01:15:46 +01:00
ArthurSonzogni
0a7b556a12
Switch name Producer/Consumer -> Sender/Receiver
...
The producer/consumer was created for:
https://github.com/ArthurSonzogni/FTXUI/pull/11
This patch makes rename everything from Producer/Consumer toward
Sender/Receiver.
2020-03-25 00:07:41 +01:00
ArthurSonzogni
09a1b16613
Add a Producer/Consumer system.
...
It allow you to create the two end of a pipe: A producer and consumer.
The producer can be moved into another thread.
Several producer can be created if necessary.
This will ease merging:
https://github.com/ArthurSonzogni/FTXUI/pull/11
2020-03-24 23:42:17 +01:00
ArthurSonzogni
6de8c63907
Readd 'resize' handling. It was mistakenly removed.
2020-03-24 01:26:06 +01:00
Mikael Olenfalk
f927d3d712
Win32: Switch codepage to UTF8 in Screen constructor
...
Co-authored-by: Mikael Olenfalk <mikael@olenfalk.se>
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com>
2020-03-24 00:37:06 +01:00
Mikael Olenfalk
b2b42a8a04
Disable C++17 deprecation warnings
2020-03-23 22:44:13 +01:00
Mikael Olenfalk
71598cb18d
Fix warning: Namespace uses itself
2020-03-23 21:46:44 +01:00
Mikael Olenfalk
40800ac019
Use Console API to set and restore terminal mode on Windows
2020-03-23 21:42:33 +01:00
ArthurSonzogni
493e734680
Set clang-format macro indent.
...
1) Set clang-format macro indent.
2) Run clang-format on every files.
2020-03-23 21:26:00 +01:00
Mikael Olenfalk
9e71c467f6
Use Console API to get terminal size on Windows
...
Co-authored-by: Mikael Olenfalk <mikael@olenfalk.se>
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com>
2020-03-23 21:11:34 +01:00
Mikael Olenfalk
539ec45036
Add missing <algorithm> include
2020-03-23 21:03:25 +01:00
ArthurSonzogni
9ca8d41afc
Improve ScreenInteractive.
2020-03-23 09:23:57 +01:00
ArthurSonzogni
a402cb4fbb
Fix format. Try compile on Windows.
2020-03-22 22:32:44 +01:00
ArthurSonzogni
65705d5bc7
Fix werror=type-limit on systems with char=unsigned char.
2020-02-11 23:43:26 +01:00
ArthurSonzogni
1f1229564a
Fix (maybe uninitialized) on weak compilers.
2020-02-11 22:34:01 +01:00
ArthurSonzogni
a8fdfafe6a
Support the -pedantic flag.
2020-02-11 21:44:55 +01:00
Ilia Sharin
469d2cd736
Fix compilation issue on macOS(CLang compiler) where stdlib doesn't define quick_exit()
2020-02-02 15:27:46 -05:00
ArthurSonzogni
22f8f0d3b7
Using TAB key event.
...
A key event that makes use of TAB key to cycle the elements.
Co-authored-by: Trim Bresilla <trim.bresilla@gmail.com>"
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com>
2019-11-01 19:54:16 +01:00
ArthurSonzogni
7f0381e30a
Emit a new line when a component is interrupted.
...
While running a component, make sure to reset the cursor at the end of
the component and insert a new line.
This fixes:
https://github.com/ArthurSonzogni/FTXUI/issues/6
2019-09-18 22:02:51 +02:00
ArthurSonzogni
e1efcf2d97
Make DEL to be a special character.
2019-07-02 23:09:20 +02:00
ArthurSonzogni
65e7fae7df
Fix parsing of CSI escape sequence.
...
There was a bug, preventing the user from typing the DEL key.
This is related to bug:
https://github.com/ArthurSonzogni/FTXUI/issues/4
2019-07-01 00:44:50 +02:00
ArthurSonzogni
01ab335919
Implement key Delete in component > Input.
...
The BS key is used to delete the character on the left of the cursor.
The DEL key is used to delete the character on the right of the cursor.
BackSpace was already implemented. This CL implements DEL.
This is related to bug:
https://github.com/ArthurSonzogni/FTXUI/issues/4
2019-07-01 00:40:55 +02:00
ArthurSonzogni
32871fcc6b
Add -Wextra
2019-06-30 23:59:27 +02:00
ArthurSonzogni
a87e70c96e
Handle terminal resize.
...
This is related to bug:
https://github.com/ArthurSonzogni/FTXUI/issues/3
2019-06-30 23:53:56 +02:00
ArthurSonzogni
b8a81bae9e
Add focus element in input component while the placeholder is displayed.
...
This should fix:
https://github.com/ArthurSonzogni/FTXUI/issues/2
2019-06-30 10:11:48 +02:00
ArthurSonzogni
8b79b3af99
Fix compilation errors in clang.
2019-06-30 10:11:37 +02:00
ArthurSonzogni
86c3b60a6f
Move the cursor to the input location.
...
Most CJK users use IME (input method) to type CJK characters. They need
the cursor to be at the correct location, not in the bottom right
corner.
This CL does:
* Move the cursor the focus() element.
* Hide the cursor (and show it at exit)
* Intercept SIGINT to guarantee proper cleanup all the time.
This should fix the second issue mentionned on:
https://github.com/ArthurSonzogni/FTXUI/issues/2
2019-06-29 18:52:58 +02:00
ArthurSonzogni
eb6baaceea
Support full-width characters (CJK)
...
+ 3 tests.
The goal is to fix:
https://github.com/ArthurSonzogni/FTXUI/issues/2#issuecomment-504871456
2019-06-24 23:39:37 +02:00
ArthurSonzogni
9c1913de51
Fix xterm parsing. unsigned vs signed char problem.
2019-06-23 17:59:34 +02:00
ArthurSonzogni
001a0ae925
Add UTF8 support and a better xterm parsing.
...
This fixes: https://github.com/ArthurSonzogni/FTXUI/issues/2
2019-06-23 17:52:31 +02:00
ArthurSonzogni
a366c9b9e2
Handle empty container.
2019-02-02 18:41:07 +01:00
ArthurSonzogni
15da9cdc18
Improve ScreenInteractive wait function.
2019-02-02 16:59:08 +01:00
ArthurSonzogni
ed416b5e1e
Remove comments when terminal size is determined.
2019-02-02 11:48:17 +01:00
ArthurSonzogni
ef0de8d873
Add support for nxxm.
...
[nxxm](https://nxxm.github.io )
2019-02-02 02:25:06 +01:00