wjakob / nanogui

Minimalistic GUI library for OpenGL
Other
4.66k stars 608 forks source link

screen without window decoration #253

Closed ambitslix closed 7 years ago

ambitslix commented 7 years ago

Hello,

Is there a way make the Screen have no decorations? Obviously this works with fullscreen=true, however I'd like to remove decorations on a windowed mode, that's smaller then the actual screen res.

Thanks, Mark

svenevs commented 7 years ago

Not directly, but you should be able to do yourself (?) It works for fullscreen because that's the GLFW default action. All you need to do is set the window hint before creating the nanogui::Screen:

glfwWindowHint(GLFW_DECORATED, 0);

When the explicit nanogui::Screen constructor is called, these lines control the behavior. Most are direct consequences of the nanogui::Screen constructor arguments, except for visibility and using a core GL profile.

So basically, anything that is not explicitly being set in the above linked code you can set yourself from all of these options. If I remember correctly, if you set something that the nanogui::Screen constructor also sets, the latest one wins (AKA whatever NanoGUI set).

Hope that works!

P.S. If you #include <nanogui/opengl.h> that'll bring GLFW in for you. You want to let NanoGUI do the first #include of GLFW because of these lines

ambitslix commented 7 years ago

Thank you,

After reading the glfw docs I was doing:

glfwWindowHint(GLFW_DECORATED, GL_FALSE);

but inside nanogui::Screen constructor, so it's wasn't working, but now it does, I just put it right after nanogui::init. I'm wondering why is this not part of your API?