Commit Graph

37 Commits

Author SHA1 Message Date
Jakub Sobon bda6223690
Don't split keyboard shortcuts.
It makes it hard to recognize when a shortcut is pressed and when a
single character is pressed. Do what termbox does and identify these
separately.

Obsoletes #20.
2019-04-20 17:10:59 -04:00
Jakub Sobon ffbf88caed
Finishing unfinished comment. 2019-02-24 02:39:00 -05:00
Jakub Sobon b25d20c8ae
Mouse and keyboard are also public. 2019-02-24 02:08:48 -05:00
Jakub Sobon b74f46509b
Moving runewidth, segdisp and testdraw to internal. 2019-02-24 01:27:17 -05:00
Jakub Sobon 97ec73069f
Moving align, cell and terminalapi back from internal. 2019-02-24 01:13:26 -05:00
Jakub Sobon 8df9e3307c
Moving faketerm to internal. 2019-02-24 01:09:23 -05:00
Jakub Sobon bf38f10d25
Moving terminal back to public. 2019-02-24 01:04:57 -05:00
Jakub Sobon 5ac468c10a
Moving terminal, terminalapi and widgetapi to internal subdirectory.
And adding a README under internal.
2019-02-23 21:19:16 -05:00
Jakub Sobon 2ff1818c0e
Moving keyboard and mouse to internal. 2019-02-23 21:11:50 -05:00
Jakub Sobon 6c03991fb9
Moving draw and event to internal. 2019-02-23 21:10:51 -05:00
Jakub Sobon 7ee222ac58
Moving private libraries into internal subdirectory. 2019-02-23 21:09:38 -05:00
Jakub Sobon b79c3fef2d
Switching termdash to EDS. 2019-02-20 01:18:44 -05:00
Jakub Sobon 286e5abd2f
Errors are no longer a special case in the EDS.
And changing event queue so that Pullers don't have to process an error.
2019-02-20 00:20:58 -05:00
Jakub Sobon 772fdae7cc
Moving eventqueue into new event directory. 2019-02-18 22:56:20 -05:00
Jakub Sobon 69b7799847
Adding licences. 2019-02-11 00:18:46 -05:00
Jakub Sobon 550afdd613
Licences and fixing data race. 2019-02-11 00:14:24 -05:00
Jakub Sobon 18a99caf16
Termbox now starts in 256 color mode by default. 2019-02-10 23:55:35 -05:00
Jakub Sobon 20c31cb800
Include newline when printing cell differences. 2019-01-20 16:21:16 -05:00
Jakub Sobon 486172e4f9
faketerm.Diff also prints out the rune differences.
Useful when they aren't obvious in their character forms.
2019-01-20 16:19:50 -05:00
Jakub Sobon 2071fd15bb
Support for 256 colors.
- Documenting color modes.
- Providing helper functions to set colors in different formats.
- Allowing users to set other than the 8 system colors.

Fixes #66
2019-01-13 21:53:26 -05:00
Jakub Sobon 9786171a7a
Faketerm and diff on it supports partial cells.
Don't print out partial cells (cells that don't really exist since the
previous cell contains a full-width rune).
2018-05-27 19:27:11 +01:00
Jakub Sobon bb0e4b9a58
Move SetCell logic from faketerm to cell buffer. 2018-05-20 22:49:03 +01:00
Jakub Sobon 79218c9233
Fixing lint errors.
- Missing comments.
- Invalid comments.
- Stuttering public name.
2018-05-11 16:32:37 +01:00
Jakub Sobon 2473cd46d6
A function that draws a rectangle.
Also:
- implementing text trimming and wrapping.
- Switching log.Fatalf to panic() for more understandable test errors.
2018-05-06 19:28:52 +01:00
Jakub Sobon 6fe129c940 Implementing the infrastructure layer. 2018-04-23 01:05:54 +01:00
Jakub Sobon 0199ffbb9a Supporting resize and events on the fake terminal. 2018-04-23 00:49:38 +01:00
Jakub Sobon e18b9ba79b Improving comment about thread un-safety. 2018-04-23 00:47:12 +01:00
Jakub Sobon 2cd3343c81 Adding licences and a script to automate the same. 2018-04-14 23:06:57 +01:00
Jakub Sobon 0bbb28d13d
Adding a fake widget. 2018-04-07 14:24:55 +02:00
Jakub Sobon 28f6bfdb3e
Adding option to draw container borders in color.
And updating the faketerm diff function to also display differences in
options.
2018-04-05 19:57:46 +02:00
Jakub Sobon cec3153dc6
Hooking up events from termbox. 2018-04-05 19:35:02 +02:00
Jakub Sobon fe222a489e
Converting keyboard and mouse events from termbox to termdash. 2018-04-05 05:02:43 +02:00
Jakub Sobon 3a3531d7e1
Implementation of container and its tests.
Including a diff utility for unit tests.
2018-04-01 00:57:33 +02:00
Jakub Sobon 6b592b7d34
Adding the draw library.
And a function that draws boxes.
2018-03-30 01:41:22 +03:00
Jakub Sobon dc1f2c5a29
Implementing canvas functionality.
Done here:
- adding helper library which determines area from size and vice versa.
- fixing an off-by-one bug related to area sizes.
- allowing overwrite of cell options by passing an existing cell.Options
instance.
- implementing canvas and its tests.
2018-03-29 03:28:36 +03:00
Jakub Sobon 59e1bd6472
Implementing cell, buffer, container options and fake terminal.
Push after a partial commit to prevent data loss.
This isn't complete and doesn't have complete test coverage.
2018-03-28 21:34:20 +03:00
Jakub Sobon 53fe40fcec
Naive implementation of the terminalapi using the termbox library.
This just wraps termbox, getting Events isn't supported yet.

Also adding an experimental.
2018-03-27 20:20:05 +01:00