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
55efbe07fe
Moving numbers to internal subdirectory.
2019-02-23 21:16:13 -05:00
Jakub Sobon
923d57f442
Moving trig into numbers subdirectory.
2019-02-23 21:14:51 -05:00
Jakub Sobon
6093c7fd11
Moving images to doc subdirectory.
2019-02-23 21:13:40 -05:00
Jakub Sobon
d177ad792e
Moving scripts to internal subdirectory.
2019-02-23 21:12:41 -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
31580ba0ea
Changing size of the button demo.
2019-02-23 21:03:06 -05:00
Jakub Sobon
279cb8b816
Fixing link to the wiki.
2019-02-23 21:01:17 -05:00
Jakub Sobon
e7f1d496d8
Documenting the API status.
2019-02-23 20:59:51 -05:00
Jakub Sobon
e7e8b29396
Fixing LineChart tests.
2019-02-23 20:50:29 -05:00
Jakub Sobon
a2642ea039
The LineChart now continuous to accept mouse events after terminal resize.
...
And allowing it to receive global mouse events to be able to cancel
highlight on clicks outside of the widget.
2019-02-23 20:48:41 -05:00
Jakub Sobon
1d3071e969
Merge pull request #149 from mum4k/button
...
Implementing the Button widget.
2019-02-23 20:22:28 -05:00
Jakub Sobon
9f5fa3788b
Adding recordings of buttondemo and termdashdemo.
2019-02-23 19:39:10 -05:00
Jakub Sobon
b2a1f30fe1
Complete test coverage for button and tweaks to the demo.
2019-02-23 19:38:47 -05:00
Jakub Sobon
e9cf1e1af7
Partially completed tests for button.
2019-02-23 02:18:06 -05:00
Jakub Sobon
417eee0799
Adding canvas function that sets area of cells.
2019-02-23 01:46:03 -05:00
Jakub Sobon
0490734d1e
Running gofmt.
2019-02-23 00:42:47 -05:00
Jakub Sobon
22946f2f65
Allowing widgets to select the scope for mouse events too.
2019-02-23 00:41:58 -05:00
Jakub Sobon
4b4e245d60
The button in an intermediate dev state.
2019-02-23 00:07:54 -05:00
Jakub Sobon
07d22cc28c
The mouse FSM now allows callers to specify an updated area size.
...
Useful when the size of terminal changes.
2019-02-23 00:06:53 -05:00
Jakub Sobon
2a817f9dbe
Adding canvas methods that can set cell options.
2019-02-22 22:51:45 -05:00
Jakub Sobon
952242fb51
Fixing two typos in test descriptions.
2019-02-22 22:51:28 -05:00
Jakub Sobon
dd2d740abb
Defining API for canvas methods that set cell options.
2019-02-22 01:11:36 -05:00
Jakub Sobon
a16d908b5e
Adding options for global keyboard.
2019-02-22 01:07:53 -05:00
Jakub Sobon
8b3f1a146f
Merge branch 'devel' into button
2019-02-22 00:49:26 -05:00
Jakub Sobon
495eaa4ee5
Merge pull request #146 from mum4k/widgets-global-keys
...
Allow widgets to subscribe to global keyboard events
2019-02-22 00:48:42 -05:00
Jakub Sobon
79a16f91a8
Updating comments for subscribers, since we now have the EDS.
2019-02-22 00:41:51 -05:00
Jakub Sobon
2fba1378a9
Updating CHANGELOG.
2019-02-22 00:37:56 -05:00
Jakub Sobon
0df7387862
Widgets can now register for global keyboard events.
2019-02-22 00:33:55 -05:00
Jakub Sobon
4f4c990e78
Merge pull request #145 from mum4k/runewidth
...
Fixing the width of characters whose context is known.
2019-02-22 00:20:24 -05:00
Jakub Sobon
f1a83ecd22
Adding licences.
2019-02-22 00:10:48 -05:00
Jakub Sobon
102e098dac
Updating CHANGELOG.
...
And fixing a lint error.
2019-02-22 00:04:08 -05:00
Jakub Sobon
3b2abce00b
Defining exceptions to the East Asian ambiguous cell width.
2019-02-21 23:59:31 -05:00
Jakub Sobon
793925feb8
Migrating all calls to the runewidth wrapper.
2019-02-21 23:24:42 -05:00
Jakub Sobon
43e15c302e
A wrapper over the external runewidth package.
2019-02-21 23:24:30 -05:00
Jakub Sobon
c9e65178e6
Merge pull request #143 from mum4k/eds
...
An event distribution system.
2019-02-21 02:00:30 -05:00
Jakub Sobon
006c021f63
Also throttling repetitive events to focus and widgets.
2019-02-21 01:44:31 -05:00
Jakub Sobon
60aaa7d8bb
Updating CHANGELOG.
2019-02-21 01:21:47 -05:00
Jakub Sobon
5a51763b2d
Throttling repetitive events towards screen redraw.
...
Redrawing the screen is the most expansive operation, we don't want to
do it every time an event happens (imagine fast scrolling mouse wheel).
Also adding missing licences.
2019-02-21 01:20:07 -05:00
Jakub Sobon
2ff14a4477
EDS now has the ability to throttle repetitive events.
...
And fixing capture of loop variable in parallel tests.
2019-02-21 01:14:25 -05:00
Jakub Sobon
bb648be6d5
Adding a throttled event queue.
2019-02-21 00:40:35 -05:00
Jakub Sobon
8e27431486
Parallelism for event_test too.
2019-02-21 00:32:57 -05:00
Jakub Sobon
94f3c69f7e
Running termdash_test in parallel.
2019-02-21 00:05:56 -05:00
Jakub Sobon
8780433b62
Moving container to EDS.
2019-02-20 23:36:58 -05:00
Jakub Sobon
0026a67307
The EDS now reports the number of processed events.
...
Useful for synchronization in tests.
2019-02-20 23:36:17 -05:00
Jakub Sobon
d100f6fc24
Switching termdash test to common spinlock utility.
...
And delaying redraws to allow fast widgets to process the input event.
2019-02-20 23:35:26 -05:00
Jakub Sobon
37d557d30f
Switching container to EDS.
...
TODO: rewrite tests to use Subscribe().
2019-02-20 02:20:11 -05:00
Jakub Sobon
f09e1be361
Fixing data races in tests.
...
The EDS is concurrent by design.
2019-02-20 01:32:23 -05:00