Commit Graph
1081 Commits
Author SHA1 Message Date
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
Kovid Goyal fa30a95b46 ... 2017-09-15 10:45:10 +05:30
Kovid Goyal f44d56b116 Ensure GIL is not released when rendering sprites 2017-09-15 10:45:10 +05:30
Kovid Goyal 6127d2d122 Make the sprite map globally accessible from C code as well as python code
The lock was removed as the Python GIL is sufficient to serialize access
to the SpriteMap structure.
2017-09-15 10:45:10 +05:30
Kovid Goyal 4feff2e2da Fix rendering of strikethrough not working 2017-09-15 10:45:10 +05:30
Kovid Goyal 8624dbac2c Sigh, stupid OpenGL
Apparently glGetUniformIndices has different declarations on different
systems.
2017-09-15 10:45:10 +05:30
Kovid Goyal 4c0cf93562 Fix tab bar not rendering because of selection handling changes 2017-09-15 10:45:10 +05:30
Kovid Goyal d12573a67d Dont send the color table to the GPU on every frame 2017-09-15 10:45:09 +05:30
Kovid Goyal d7b433f6b7 API for Uniform Block Objects 2017-09-15 10:45:09 +05:30
Kovid Goyal b1168f6c6c Handle zero timeout correctly 2017-09-15 10:45:09 +05:30
Kovid Goyal 91e263cabb Fix sub-millisecond and no event waits not working 2017-09-15 10:45:09 +05:30
Kovid Goyal ed15f2f97e Get the layout of the Cell structure 2017-09-15 10:45:09 +05:30
Kovid Goyal 6689595277 Dont use Py_UCS4 for char_type 2017-09-15 10:45:09 +05:30
Kovid Goyal 34f946fd98 Move rendering of selection to GPU 2017-09-15 10:45:09 +05:30
Kovid Goyal a5bec84554 ... 2017-09-15 10:45:09 +05:30
Kovid Goyal 0fae3e1b10 ... 2017-09-15 10:45:09 +05:30
Kovid Goyal a56e1296fd Refactor the tab bar into its own class
Also ensure that Screen APIs are only used in the child thread in the
tab bar
2017-09-15 10:45:09 +05:30
Kovid Goyal acdeaaeda5 Move the border shaders into their own files 2017-09-15 10:45:08 +05:30
Kovid Goyal a44e3a3a50 Ensure line numbers reported by the GLSL compiler are correct 2017-09-15 10:45:08 +05:30
Kovid Goyal db40445572 Do color mapping on the GPU 2017-09-15 10:45:08 +05:30
Kovid Goyal 1d888c9194 Centralise color management into ColorProfile 2017-09-15 10:45:08 +05:30
Kovid Goyal b50eaa9cbb ColorProfile should belong to Screen 2017-09-15 10:45:08 +05:30
Kovid Goyal fe764ab6b6 oops 2017-09-15 10:45:08 +05:30