Commit Graph
1103 Commits
Author SHA1 Message Date
Kovid Goyal 2089d2bfdf Fix main_loop() not returning NULL when an error has occurred 2017-09-15 10:45:15 +05:30
Kovid Goyal 281cb50780 API to map OpenGL buffers 2017-09-15 10:45:15 +05:30
Kovid Goyal 012b209a56 Update CELL data structure 2017-09-15 10:45:15 +05:30
Kovid Goyal c0593d9f1f Get rid of update_screen
No longer needed.
2017-09-15 10:45:15 +05:30
Kovid Goyal f655112bda Directly copy the sprite positions into the GPU buffer 2017-09-15 10:45:15 +05:30
Kovid Goyal c4680aae2c Track sprite positions in the Cell structure 2017-09-15 10:45:15 +05:30
Kovid Goyal a8d5ad2c1a ... 2017-09-15 10:45:15 +05:30
Kovid Goyal 333eb3534a ... 2017-09-15 10:45:14 +05:30
Kovid Goyal 1a42356f68 Forgot to close stdin_read_fd in the master process 2017-09-15 10:45:14 +05:30
Kovid Goyal 1197549e5b Remove the last use of the python threading module 2017-09-15 10:45:14 +05:30
Kovid Goyal d2749f5ccc Sigh 2017-09-15 10:45:14 +05:30
Kovid Goyal 6379b3f898 Forgot to modify the fds array in remove children 2017-09-15 10:45:14 +05:30
Kovid Goyal c97afd7b44 Handle unexpected closing of child fds gracefully 2017-09-15 10:45:14 +05:30
Kovid Goyal 9b9003ded0 Simplify code to set thread names 2017-09-15 10:45:14 +05:30
Kovid Goyal 5550c7a95f _GNU_SOURCE needed on apple as well? 2017-09-15 10:45:14 +05:30
Kovid Goyal fe7f3233ba Fix initial tab bar visibility when starting a session with multiple tabs 2017-09-15 10:45:14 +05:30
Kovid Goyal a52f0939df Make using the timer for wakeups more efficient 2017-09-15 10:45:14 +05:30
Kovid Goyal ff3ddfd369 Simply use of repaint_delay in parse_input()
Dont maintain per child parse times. Instead just gate it globally.
This could result in slowdowns with lots of very active children, but
that seems unlikely.
2017-09-15 10:45:13 +05:30
Kovid Goyal 161161f840 Dont include stropts.h on macs 2017-09-15 10:45:13 +05:30
Kovid Goyal b0e1c74fdd Note about interaction of cursor_blink_time and repaint_delay 2017-09-15 10:45:13 +05:30
Kovid Goyal 1bd46b0636 Avoid extra wakeup when rendering blinking cursor 2017-09-15 10:45:13 +05:30
Kovid Goyal 5e676090fa Report failures to write to child 2017-09-15 10:45:13 +05:30
Kovid Goyal 4d31624a69 Better handling of failure to execute child
exec() a shell instead so that we are not left with a forked but not
execed process
2017-09-15 10:45:13 +05:30
Kovid Goyal c9695efd18 ... 2017-09-15 10:45:13 +05:30
Kovid Goyal 7dc51d7d9e Handle ioctl failures when resizing the tty more gracefully 2017-09-15 10:45:13 +05:30
Kovid Goyal d5d812ccfe Fix for session with empty enabled_layouts 2017-09-15 10:45:13 +05:30
Kovid Goyal af02b735e7 Move child process management into child-monitor.c 2017-09-15 10:45:13 +05:30
Kovid Goyal 52ab534e22 Move setting of IUTF8 into child-monitor.c 2017-09-15 10:45:12 +05:30
Kovid Goyal 895eedeb9b Apparently pthread_mutex_t is a scalar on macs 2017-09-15 10:45:12 +05:30
Kovid Goyal 5972a37550 Work on centralising lifecycle management in the child monitor 2017-09-15 10:45:12 +05:30
Kovid Goyal 079054f798 Fix tab bar rendering 2017-09-15 10:45:12 +05:30
Kovid Goyal 914f7ddbd5 Fix zero division 2017-09-15 10:45:12 +05:30
Kovid Goyal 5357876128 Ensure screen objects are de-allocated immediately on close instead of waiting for garbage collection 2017-09-15 10:45:12 +05:30
Kovid Goyal b20367b888 Avoid dict lookups when calling python callbacks 2017-09-15 10:45:12 +05:30
Kovid Goyal 6698712b44 Respect repaint_delay when calling render() as well 2017-09-15 10:45:12 +05:30
Kovid Goyal 21b799905d Move the main loop into the C module 2017-09-15 10:45:12 +05:30
Kovid Goyal 02870d7221 Move the signal received handler into the C module 2017-09-15 10:45:12 +05:30
Kovid Goyal d4991424f9 Set the python thread switch interval to forever 2017-09-15 10:45:11 +05:30
Kovid Goyal 1684bda1e9 Better thread name 2017-09-15 10:45:11 +05:30
Kovid Goyal e8b5a72c96 Remove GIL management code since it is no longer needed 2017-09-15 10:45:11 +05:30
Kovid Goyal 7f180ad3d9 Do not use the python threading module
Threading in python imposes significant overhead.
Instead create the thread using pthreads directly
2017-09-15 10:45:11 +05:30
Kovid Goyal 94c4c00859 Move signal handling code into the C module 2017-09-15 10:45:11 +05:30
Kovid Goyal 1308bbac2d Move creation of wakeup fds to c module 2017-09-15 10:45:11 +05:30
Kovid Goyal 76890a2b71 Do not perform any python API calls in the I/O thread 2017-09-15 10:45:11 +05:30
Kovid Goyal 2c8f3b6d98 Remove unnecessary extra lock/unlock of children_mutex 2017-09-15 10:45:11 +05:30
Kovid Goyal 0e46994d0a Restore repaint_delay 2017-09-15 10:45:11 +05:30
Kovid Goyal 44650c5723 Make reading into the screen read buffer more efficient 2017-09-15 10:45:11 +05:30
Kovid Goyal 234bb07b67 Initial attempt at moving all threading code into a single file 2017-09-15 10:45:10 +05:30
Kovid Goyal fea79878fa Make the monotonic() function available everywhere 2017-09-15 10:45:10 +05:30
Kovid Goyal 0365828a5b Remove all python threading related code 2017-09-15 10:45:10 +05:30