Commit Graph

270 Commits

Author SHA1 Message Date
David Flemström
d360cd3434 Support exact ratios for layout constraints 2019-02-28 07:15:24 +01:00
Florian Dehau
e037db076c fix(backend/curses): use chtype to achieve platform agnostic conversion of graphemes 2019-02-26 08:56:49 +01:00
Florian Dehau
3ef19f41e6 fix(backend/curses): avoid platform specific conversion of graphemes 2019-02-26 08:32:36 +01:00
Florian Dehau
da90ec15fa fix: add missing get_cursor and set_cursor on CursesBackend 2019-02-26 08:13:00 +01:00
Florian Dehau
7f5af46300 style: fmt 2019-02-26 08:12:43 +01:00
defiori
624e6ee047 fix: filter out wide unicode characters on windows 2019-02-26 07:49:59 +01:00
defiori
4a1f3cd61f feat: curses instance can be passed to backend 2019-02-26 07:49:59 +01:00
defiori
7c4a3d2b02 fix(examples): bring in line with demo organization 2019-02-26 07:49:59 +01:00
defiori
8db1bb56f2 fix: curses demo required features 2019-02-26 07:49:59 +01:00
defiori
d75198a8ee feat: add pancurses backend 2019-02-26 07:49:59 +01:00
defiori
cadb41c9e3 fix: unified crossterm backend 2019-02-26 07:45:19 +01:00
defiori
b30cae0473 feat: crossterm backend can use alternate screen 2019-02-26 07:45:19 +01:00
scauligi
7290086fe9 forgot to flush 2019-02-26 07:38:35 +01:00
scauligi
bca920bea0 get/set cursor position 2019-02-26 07:38:35 +01:00
Temirkhan Myrzamadi
32de7a3fdc Fix the example compilation error 2019-02-26 07:37:07 +01:00
Florian Dehau
f20512b599 feat: add rustbox and crossterm demo 2019-02-10 23:28:31 +01:00
Jonathan
cd41ca571f Modified with_crossterm naming scheme 2019-02-10 22:47:56 +01:00
Jonathan
dc654e9f6c Added ability to create crossterm with previously created crossterm::Screen 2019-02-10 22:47:56 +01:00
Florian Dehau
f5d7f70472 Release v0.4.0 2019-02-03 23:03:48 +01:00
Florian Dehau
0168442c22 chore: remove typos 2019-02-03 22:42:09 +01:00
Florian Dehau
22579b77cc chore(Makefile): make run-examples compile the examples in release mode 2019-02-03 22:42:09 +01:00
Florian Dehau
09c09d2fd1 fix(examples): remove logging in layout example 2019-02-03 22:42:09 +01:00
Florian Dehau
b669cf9ce7 style: fix clippy warnings 2019-02-03 22:42:09 +01:00
Florian Dehau
5bc617a9a6 chore(Makefile): build and test using all features 2019-02-03 22:42:09 +01:00
Florian Dehau
a75b811061 chore: bump itertools to 0.8 2019-02-03 22:42:09 +01:00
Florian Dehau
ec6b46324e feat(examples): add cmd line args to the demo 2019-02-03 22:42:09 +01:00
Florian Dehau
97f764b45d feat: handle crossterm errors 2019-02-03 20:02:36 +01:00
Florian Dehau
7f31a55506 chore: show appveyor build status 2019-02-03 19:00:49 +01:00
Florian Dehau
2286d097dc chore(ci): add appveyor config 2019-02-03 18:57:42 +01:00
Florian Dehau
52a40ec99a fix: remove undefined crossterm attributes in windows builds 2019-01-23 07:28:40 +01:00
Sven-Hendrik Haase
a78fa73b34 Add new shape: Rectangle 2019-01-15 15:47:05 +00:00
Sven-Hendrik Haase
d7e4a252fb Mention crossterm in README 2019-01-15 15:46:48 +00:00
Jens Krause
1c0b0abf61 Use UnicodeWidthStr::width()
to get width of `divider`.

Also use `set_string` instead of `set_symbol`. The latter cuts content of a multi-char divider.
2019-01-13 17:21:03 +00:00
Jens Krause
f7c6620e25 Fix documented example to fix doc-tests on CI 2019-01-13 17:21:03 +00:00
Jens Krause
16372f7847 Don't show divider after last tab 2019-01-13 17:21:03 +00:00
Jens Krause
72c2eb7182 Add divider to Tabs
to change appearance of tab dividers.
2019-01-13 17:21:03 +00:00
Sven-Hendrik Haase
144bfb71cf Upgrade to 2018 edition 2019-01-13 14:35:51 +00:00
Karoline Pauls
3fd9e23851 Buffer: correct diffing of buffers with multi-width characters
Resolves #104
2019-01-13 13:46:39 +00:00
Karoline Pauls
10642d0e04 Paragraph: word wrapping 2018-12-22 15:38:51 +01:00
Karoline Pauls
063ab2f87d Improve the Paragraph example 2018-12-22 15:38:51 +01:00
Karoline Pauls
1802cf8dbc Improve wrapping of double-width characters 2018-12-22 15:38:51 +01:00
Karoline Pauls
090975481b Update tests and docs to take size from the Frame 2018-12-07 21:32:00 +01:00
Karoline Pauls
228816f5f8 Frame: provide consistent size for rendering 2018-12-07 21:32:00 +01:00
Karoline Pauls
8522e028f1 Run cargo fmt with the new Rust stable toolchain (1.31.0) 2018-12-07 19:54:13 +01:00
Ash
a2776dfc86 Make sure we always emit a cursor goto for the first update.
Otherwise, if the first update is to (1, 0) then no goto occurs.
2018-12-07 19:52:22 +01:00
Karoline Pauls
cc95c8cfb0 Gauge: use f64 internally and allow to set any f64 between 0 and 1 2018-12-05 21:20:12 +01:00
Karoline Pauls
89dac9d2a6 buffer: add quotes to fmt::Debug for better testing experience 2018-12-05 21:20:12 +01:00
Karoline Pauls
8cdfc883b9 Feature: Autoresize
It basically never makes sense to render without syncing the size.

Without resizing, if shrinking, we get artefacts. If growing, we may get
panics (before this change the Rustbox sample (the only one which didn't
handle resizing on its own) panicked because the widget would get an
updated size, while the terminal would not).
2018-12-04 08:39:32 +01:00
Florian Dehau
b3689eceb7 feat: update outdated dependencies 2018-11-25 21:49:37 +01:00
Karoline Pauls
5cee2afc6d Limit Rect size to prevent u16 overflow 2018-11-25 19:59:12 +01:00