SDL 1.3 Roadmap
Contents
Introduction
This is a list of features which are in progress for the SDL 1.3 release. The features are organized by subsystem and assigned to developers.
Video
Complete
green
green
Required
- ???: Implement landscape mode for iPhone port
- Sam: Support for multiple displays
green
green
- Linux
- Sam: Support for selecting video mode refresh rate
green
green
- Linux
- ???: Add OpenGL 3.0 context support
Sam: Create API for clipboard support (check out PyGame)
- Sam: Create flags for specifying foreign window event behavior
Wishlist
- Create desktop video mode change notification
- Add concept of viewport to fullscreen windows
- Add support for synchronizing 2D updates with vblank (bug #406)
- Support video modes with alpha channels
- Support shaped windows
- Support always-on-top window styles
Implement NET_WM_PING and NET_WM_PID/WM_CLIENT_MACHINE (http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html#KILLINGWINDOWS)
- Support desktop windows
setAttribute(Qt::WA_X11NetWmWindowTypeDesktop); setWindowFlags(Qt::SplashScreen); Qt::WindowFlags flags = 0; flags |= Qt::FramelessWindowHint; flags |= Qt::Tool; flags |= Qt::WindowStaysOnBottomHint;
- Support multiple icon sizes (e.g. for Windows Vista)
Audio
Complete
green
Wishlist
- PCM volume control
Event
Required
- Sam: Add a timestamp to events
- Sam: Add modifier state to key and button events
Wishlist
- Add a way to dynamically register for custom event types
Add a timeout parameter for SDL_WaitEvent() (http://lists.libsdl.org/pipermail/sdl-libsdl.org/2008-May/thread.html#65067)
Mouse Input
Required
- Ryan: Support for multiple mice
- Q: What is the mapping of individual mice to pointers? Is there a "master pointer" that multiple mice share and then events for the individual mice? Is there a dual mode, where you have a single pointer that all mice affect, and you can switch to multiple pointers, each affected by a single mouse?
- Sam: Support showing / hiding the cursor
- Sam: Reimplement mouse grab support
- Verify cursor location is correct when ungrabbed
- Verify proper behavior with Vista DPI scaling
Wishlist
- Sam: Support color cursors
- Sam: Support animated cursors
Keyboard Input
Required
- Add support for multiple keyboards (wishlist?)
green
- Q: When you're enabling or disabling text events via keystroke, how do you ignore the text generated by the key that is toggling text input?
- A: Key events are guaranteed to happen first
- Q: How do you handle key repeat?
- Q: When you're enabling or disabling text events via keystroke, how do you ignore the text generated by the key that is toggling text input?
- Sam/Jiang: Create IME API and support system IME interfaces
- Windows
green
- Linux
- Sam: Add name to keysym and name to scancode lookup functions
Joystick Input
Required
green
green - need to fix building on cygwin32
green
green
Multi-touch Input
Required
- ???: Create multi-touch input API
Multi-threading / CPU info
Complete
green
green
green
green
Required
- Sam: Create API for thread priority
- Sam: Create API for thread processor affinity
Timers
Required
- Add higher precision timers for profiling
General
Required
- Sam: Public license for SDL_compat.c, tests, and SDL_main*
- Sam: Create extended set of (negative) error codes and have the API functions document and return them.
