mirror of
https://github.com/MinecraftForge/MinecraftForge
synced 2026-08-22 04:26:10 -04:00
30 lines
1.8 KiB
Diff
30 lines
1.8 KiB
Diff
--- a/com/mojang/blaze3d/platform/Window.java
|
|
+++ b/com/mojang/blaze3d/platform/Window.java
|
|
@@ -88,7 +_,8 @@
|
|
GLFW.glfwWindowHint(139267, 2);
|
|
GLFW.glfwWindowHint(139272, 204801);
|
|
GLFW.glfwWindowHint(139270, 1);
|
|
- this.window = GLFW.glfwCreateWindow(this.width, this.height, p_85376_, this.fullscreen && monitor != null ? monitor.getMonitor() : 0L, 0L);
|
|
+ this.window = net.minecraftforge.fml.loading.ImmediateWindowHandler.setupMinecraftWindow(()->this.width, ()->this.height, ()->p_85376_, ()->this.fullscreen && monitor != null ? monitor.getMonitor() : 0L);
|
|
+ if (!net.minecraftforge.fml.loading.ImmediateWindowHandler.positionWindow(Optional.ofNullable(monitor), w->this.width = this.windowedWidth = w, h->this.height = this.windowedHeight = h, x->this.x = this.windowedX = x, y->this.y = this.windowedY = y)) {
|
|
if (monitor != null) {
|
|
VideoMode videomode = monitor.getPreferredVidMode(this.fullscreen ? this.preferredFullscreenVideoMode : Optional.empty());
|
|
this.windowedX = this.x = monitor.getX() + videomode.getWidth() / 2 - this.width / 2;
|
|
@@ -100,6 +_,7 @@
|
|
this.windowedX = this.x = aint1[0];
|
|
this.windowedY = this.y = aint[0];
|
|
}
|
|
+ }
|
|
|
|
GLFW.glfwMakeContextCurrent(this.window);
|
|
GL.createCapabilities();
|
|
@@ -267,6 +_,9 @@
|
|
GLFW.glfwGetFramebufferSize(this.window, aint, aint1);
|
|
this.framebufferWidth = aint[0] > 0 ? aint[0] : 1;
|
|
this.framebufferHeight = aint1[0] > 0 ? aint1[0] : 1;
|
|
+ if (this.framebufferHeight == 0 || this.framebufferWidth == 0) {
|
|
+ net.minecraftforge.fml.loading.ImmediateWindowHandler.updateFBSize(w -> this.framebufferWidth = w, h -> this.framebufferHeight = h);
|
|
+ }
|
|
}
|
|
|
|
private void onResize(long p_85428_, int p_85429_, int p_85430_) {
|