SFML 2.1 released

After waiting about 19 years for SFML 2 to be released, 2.1 has followed only a month or two later.


This is mostly a bug fix release:

SFML 2.1


– Fixed MouseMove event sometimes not generated when holding left button on Windows (#225)

– Fixed ContextSettings ignored when creating a 3.x/4.x OpenGL context on Linux (#258)

– Fixed ContextSettings ignored on Linux when creating a window (#35)

– Fixed windows bigger than the desktop not appearing on Windows (#215)

– Fixed KeyRelease events sometimes not reported on Linux (#404)

– Now using inotify on Linux to avoid constantly polling joystick connections (#96)

– Add keypad return, equal and period keys support for OS X

– Improved mouse events on OS X regarding fullscreen mode

– Improved mouse events on OS X (#213, #277)

– Improved reactivity of setMousePosition on OS X (#290)

– Fixed mouse moved event on OS X when dragging the cursor (#277)

– Added support for right control key on OS X

– Fixed KeyRelease event with CMD key pressed (#381)

– Improved TextEntered for OS X (#377)

– Fixed taskbar bugs on Windows (#328, #69)

– Improved the performances of Window::getSize() (the size is now cached)

– Added the WM_CLASS property to SFML windows on Linux

– Fixed Window::getPosition() on Linux (#346)

– Fake resize events are no longer sent when the window is moved, on Linux

– Unicode characters outside the BMP (> 0xFFFF) are now correctly handled on Windows (#366)

– Pressing ALT or F10 on Windows no longer steals the focus


– Fixed bounding rect of sf::Text ignoring whitespaces (#216)

– Checking errors in RenderTarget::pushGLStates() to avoid generating false error messages when user leaves unchecked OpenGL errors (#340)

– Solved graphics resources not updated or corrupted when loaded in a thread (#411)

– Fixed white pixel showing on first character of sf::Text (#414)

– Optimized Shader::setParameter functions, by using a cache internally (#316, #358)

– sf::Rect::contains and sf::Rect::intersects now handle rectangles with negative dimensions correctly (#219)

– Fixed Shape::setTextureRect not working when called before setTexture


– Added a workaround for a bug in the OS X implementation of OpenAL (unsupported channel count no properly detected) (#201)

– loadFromStream functions now explicitly reset the stream (seek(0)) before starting to read (#349)

– Fixed SoundBuffer::loadFromStream reading past the end of the stream (#214)


– Replaced the deprecated gethostbyname with getaddrinfo (#47)

– Fixed non-blocking connection with a sf::TcpSocket on Windows

– Minor improvements to sf::Packet operators (now using strlen and wcslen instead of explicit loops) (#118)

– Fixed TCP packet data corruption in non-blocking mode (#402, #119)

– On Unix systems, a socket disconnection no longer stops the program with signal SIGPIPE (#72)


– Updated the Window and OpenGL examples (got rid of GLU and immediate mode)

Nice to see a quicker turn around with the releases. You can download it here. It’s nice to see they are offering many more binaries, that was a point of great confusion for people starting out with SFML in the past.


Scroll to Top