This is doubly frustrating as I create a test context to pull OpenGL version and check for the systems compatibility before creating the 'real' context with my OpenGL version as part of the create() call.
Anything I can do?
The way I think Laurent intended it to work, is by creating the window with the version you want, SFML will then automatically choose the next best context (i.e. it will downgrade if the requested version isn't available) and then you check what version you actually got and react accordingly..
SFML doesn't have all the control over how a window gets created, thus I'd have to look at the source to see whether one could ensure that it stays black through the whole process. ;)To me it seems like during .create() it creates a window, displays it, clears it in white, then hides/destroys it. Possibly to pull the system variables? I would much rather leave it open! Or maybe have a flag to? Also would much much rather have it black, or be able to pass a color. I am not at my dev machine so I can't peek at the source right now.
Oh amazing! Definitely a big improvement thank you very much.
I still have a bunch of issues/questions, this is what I currently get. When I say OS event what happens is all monitors flash black then return to normal.
When creating a new window:
sf::Style::Fullscreen:
1) Fullscreen window appears with white background*
2) Background changes to black
3) OS event
4) Displays my draw call
sf::Style::Default:
1) Framed window appears with white background*
3) Displays my draw call
*White background stays long enough to see it even if next line is a display call.
sf::Style::None with size < Desktop:
1) Frameless window appears when I make my first draw call
sf::Style::None with size == Desktop:
1) OS event
1) Frameless window appears when I make my first draw call
When I close a sf::Style::None with size == Desktop or a Fullscreen window there are 2 OS events.
When exactly does the OS event occur?
Is it possible to use sf::Style::None with size == Desktop without the OS event, as it behaves when size < the desktop?
Is it possible to use sf::Style::Default without the white background appearing?