From: David Herrmann Date: Sun, 29 Jan 2012 16:10:51 +0000 (+0100) Subject: Remove TODO X-Git-Tag: kmscon-7~1186 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f8b17b1ffc8f440217953c9e349d2fa6ab36139e;p=platform%2Fupstream%2Fkmscon.git Remove TODO The TODO is now located in the wiki at github. Signed-off-by: David Herrmann --- diff --git a/TODO b/TODO deleted file mode 100644 index e87d717..0000000 --- a/TODO +++ /dev/null @@ -1,74 +0,0 @@ -= This is a rough TODO list, feel free to contribute patches = - -Output Subsystem: - - Test whether eglMakeCurrent() is thread-aware and can set different context - per thread. Comment this behaviour in kmscon_compositor_use(). - Multiple active context would actually make sense if you have multiple - graphic cards as you could render on both cards simultaneously. However, if - you have only one card, multiple active contexts are not really needed. - - - Avoid EGL_EGLEXT_PROTOTYPES and GL_GLEXT_PROTOTYPES and instead retrieve - function pointers dynamically. This may also fix invalid function pointers if - no GL context is available and we deinitialize the console subsystem. Or we - may need to use proper dependencies here. The GL context shouldn't be - destroyed as long as a console uses it. - - - How to get bpp and colordepth? - - - Retrieve DRI card from udev or at least make kmscon_compositor_new() accept a - path to the DRI card so the user can have udev provide the path. - - - Whats the difference between connector and encoder? Or why are encoders - needed at all? The output selection logic simply tries to find the first - encoder that provides an available crtc. Should we replace this logic with an - additional list of available crtcs so users can choose them, too? - - - Is glFinish() needed before setCrtc or is glFlush sufficient? - - - Check whether ARB_texture_non_power_of_two is supported. We used it - everywhere. - -Console Subsystem: - - Do we need to offer a way to create mipmaps of the cairo image? This would - allow faster mappings of the console onto the framebuffers. - - - We need to correctly handle Unicode characters. Every console cell contains - one single character, however, Unicode supports combining marks. Our - implementation supports them but we need to correctly map our keyboard input - to the correct cells. Pango depends on glib so we can probably use the glib - functions for UTF-8/Unicode handling. - - - Add glyph caching support with cairo_scaled_font_t. The libvte does this - inside vtedraw.c but it is licensed by GPL so we need to rewrite it if we - want it. - This would speed up our font-draw functions considerably as we would bypass - pango if a glyph is already in the hash-table. - - - Consider switching to freetype2 and fontconfig. This would drop *lots* of - dependencies including pango, glib, cairo... - Freetype2 also provides a fast glyph cache and is much more lightweight than - pango. - - - We use "monospace" font by default but we should instead provide some way to - allow the user to choose a font. - -VT Subsystem: - - Set KDSKBMODE to K_OFF to avoid getting input from the VT subsystem. This - also discards the VT-switch events so we should first implement our own - VT-switching mechanisms and then use this K_OFF switch. - -Input Subsystem: - - Add simple blacklist based on device names to input subsystem to avoid adding - all devices. - - - Make the selection of layouts, variants and options configurable. A simple - "us" layout should be the default. - - - Figure out how to best support dead keys. Xlib handles dead keys through the - somewhat elaborate "Compose" mechanism; it covers all bases but requires - parsing system and user text files and is locale dependent. Alternatively, - we could hardcode a transformation table to cover basic use cases. - - - See if there's a way to properly release the xkb description. Maybe patch - libxkbcommon. As a bonus remove the annoying stderr messages it spits out - every time.