Do you have any idea why it is acting as described? I also noticed the screen tearing effect keeps sticking to almost the same height while it is more likely to jump around when v-sync is disabled. I don't know if I'm enlarging the window the wrong way but may I ask you if you see any mistake in the following code using to enter the decoration less window "pseudo fullscreen mode" (it's from a very simple window class using glfw I wrote to have a few nice features)?
public synchronized void enterFullscreen(){
if(isInFullscreenMode()) return;
this.normalSize.setSize(size.width, size.height);
setSize(monitorVideoMode.width(), monitorVideoMode.height());
glfwSetWindowPos(windowPointer, 0, 0);
isInFullscreen = true;
}
private void windowSizeChanged(long window, int width, int height){
if(window != this.windowPointer){
System.out.println("Not this window..");
return;
}
GL11.glViewport(0, 0, width, height);
fireViewportSizeChanged(width, height);
}
windowPointer is the result from glfwCreateWindow(width, height, "Test", NULL, NULL) and monitorVideoMode contains the GLFWVidMode of my main monitor
The second method is triggered by a lambda expression GLFWWindowSizeCallback.
The workaround mentioned early, which results in changing the setSize row to setSize(monitorVideoMode.width(), monitorVideoMode.height()+1);, works but that couldn't be a good solution, could it?