10875 Commits

Author SHA1 Message Date
Kovid Goyal
939ffe191f Implement dual compilation with custom defines 2016-11-12 11:41:40 +05:30
Kovid Goyal
c8a71ef5f8 Move the update_cell_data() inner loop to native code 2016-11-12 10:57:06 +05:30
Kovid Goyal
dbd4bab212 Adda build status badge 2016-11-12 09:10:41 +05:30
Kovid Goyal
3f93b5353e Only import glfw on demand 2016-11-12 09:08:14 +05:30
Kovid Goyal
e1017929c4 ... 2016-11-12 09:06:41 +05:30
Kovid Goyal
270273de50 Remove unused code 2016-11-12 09:05:35 +05:30
Kovid Goyal
da02e494f3 Suppress missing braces warning on gcc < 5.2 2016-11-12 09:04:17 +05:30
Kovid Goyal
405d6fdf5e ... 2016-11-12 08:59:29 +05:30
Kovid Goyal
11cf9b0736 Only use the strong stack protector if gcc is new enough 2016-11-12 08:53:27 +05:30
Kovid Goyal
8c283fc87f ... 2016-11-12 08:46:35 +05:30
Kovid Goyal
8f705a6290 Install glew on travis 2016-11-12 08:44:03 +05:30
Kovid Goyal
cf5341ad3c ... 2016-11-12 08:39:23 +05:30
Kovid Goyal
4404d2adbe Enable CI on Travis 2016-11-12 08:36:22 +05:30
Kovid Goyal
d2a27d9892 Use the native tracker implementation 2016-11-12 08:29:48 +05:30
Kovid Goyal
2b362108b8 ... 2016-11-12 08:27:12 +05:30
Kovid Goyal
d28c7fee68 ... 2016-11-11 22:11:40 +05:30
Kovid Goyal
1ad4d52659 Make the tracker state change function re-useable 2016-11-11 22:07:40 +05:30
Kovid Goyal
a8616f8598 Start work on migrating tracker to native code 2016-11-11 21:56:39 +05:30
Kovid Goyal
286a9f77bc Fix a memory leak in rewrap() 2016-11-11 21:54:52 +05:30
Kovid Goyal
9b544f83e0 Move change tracking into the screen class 2016-11-11 18:35:26 +05:30
Kovid Goyal
c7b87f9174 Simplify the change tracker implementation a little
Since the cursor is always redrawn there is no need to track its
attributes and position separately. Also no need to use a callback for
dirtied status.
2016-11-11 18:18:09 +05:30
Kovid Goyal
1b252be434 Only clear screen a limited number of times
glClear() is surprisingly slow
2016-11-10 23:43:01 +05:30
Kovid Goyal
ccce454183 ... 2016-11-10 23:29:32 +05:30
Kovid Goyal
470d88a950 Speed up the update_cell_data inner loop 2016-11-10 23:20:42 +05:30
Kovid Goyal
44e8a6c3c7 Start work on sprite map 2016-11-10 17:22:00 +05:30
Kovid Goyal
9069c08016 ... 2016-11-10 12:55:36 +05:30
Kovid Goyal
bbb13a3172 Tests for Screen.index() 2016-11-10 12:54:38 +05:30
Kovid Goyal
b20aea2e7d Fix index() not clearing lines 2016-11-10 12:52:40 +05:30
Kovid Goyal
b12af6f21d Test for LineBuf.clear()
Also raise IndexError instead of ValueError for line and char access
2016-11-10 12:05:50 +05:30
Kovid Goyal
d874155f1e ... 2016-11-10 11:53:10 +05:30
Kovid Goyal
71640aefb2 Cursor.reset_display_attrs() 2016-11-10 11:12:20 +05:30
Kovid Goyal
8f8e9baedc Remove the no longer needed data types module 2016-11-10 11:07:39 +05:30
Kovid Goyal
1884cc17c1 A ColorProfile to manage colors 2016-11-10 10:07:47 +05:30
Kovid Goyal
32e4de1c79 Faster color table 2016-11-10 08:00:06 +05:30
Kovid Goyal
6334b39935 More tests for rewrap 2016-11-09 19:21:08 +05:30
Kovid Goyal
c6780ca463 ... 2016-11-09 19:11:32 +05:30
Kovid Goyal
7108584e7a A more accurate, but slower rewrap algorithm 2016-11-09 17:47:03 +05:30
Kovid Goyal
81c522ae12 A better repr implementation for Line 2016-11-09 13:11:52 +05:30
Kovid Goyal
8623e7b6e7 More tests for rewrap 2016-11-09 11:19:17 +05:30
Kovid Goyal
0904939e4a Some test for rewrap 2016-11-08 21:25:26 +05:30
Kovid Goyal
9003dcd79b Start work on re-wrap 2016-11-08 15:56:13 +05:30
Kovid Goyal
d9daca8e36 Use stdbool 2016-11-08 11:03:47 +05:30
Kovid Goyal
0a69f00ab4 Re-enable all screen tests 2016-11-08 09:53:51 +05:30
Kovid Goyal
3dc74413a5 Line.clear_text() 2016-11-08 09:00:18 +05:30
Kovid Goyal
9869b30ce5 LineBuf.delete_lines 2016-11-07 20:55:40 +05:30
Kovid Goyal
17e59ccc22 LineBuf.insert_lines 2016-11-07 16:15:46 +05:30
Kovid Goyal
8c0b908222 Allow building with debug symbols
Also allow running individual tests
2016-11-07 13:23:03 +05:30
Kovid Goyal
f63a4e7015 Implement the index operations
Scrolling of line buffer one line at a time, optionally saving the
scrolled of line in a history buffer.
2016-11-07 13:03:28 +05:30
Kovid Goyal
30128043d2 Fix allocation of cursor objects 2016-11-07 12:40:49 +05:30
Kovid Goyal
0cf57e2afe Always use the C library wcwidth() so that the cursor does not go out of sync 2016-11-05 16:02:16 +05:30