Refactor applyReferenceWindowGeometry to use GraphicsEnvironment for window positioning and sizing

This commit is contained in:
extio-de
2025-12-21 17:26:00 +01:00
parent c19307e4f3
commit 8fcce2368b

View File

@@ -36,7 +36,6 @@ import de.extio.game_engine.renderer.model.event.KeyStrokeEvent;
import de.extio.game_engine.renderer.model.event.MouseClickEvent; import de.extio.game_engine.renderer.model.event.MouseClickEvent;
import de.extio.game_engine.renderer.model.event.MouseEnterEvent; import de.extio.game_engine.renderer.model.event.MouseEnterEvent;
import de.extio.game_engine.renderer.model.event.MouseMoveEvent; import de.extio.game_engine.renderer.model.event.MouseMoveEvent;
import de.extio.game_engine.spatial2.model.CoordI2;
import de.extio.game_engine.spatial2.model.ImmutableCoordI2; import de.extio.game_engine.spatial2.model.ImmutableCoordI2;
public class G2DMainFrame extends Frame { public class G2DMainFrame extends Frame {
@@ -403,10 +402,13 @@ public class G2DMainFrame extends Frame {
} }
private void applyReferenceWindowGeometry() { private void applyReferenceWindowGeometry() {
final var mode = this.getGraphicsConfiguration().getDevice().getDisplayMode(); // final var mode = this.getGraphicsConfiguration().getDevice().getDisplayMode();
final CoordI2 size = ImmutableCoordI2.create(Math.min(mode.getWidth(), RendererControl.REFERENCE_RESOLUTION.getX()), Math.min(mode.getHeight(), RendererControl.REFERENCE_RESOLUTION.getY())); // final var size = ImmutableCoordI2.create(Math.min(mode.getWidth(), RendererControl.REFERENCE_RESOLUTION.getX()), Math.min(mode.getHeight(), RendererControl.REFERENCE_RESOLUTION.getY()));
this.setLocation(mode.getWidth() / 2 - size.getX() / 2, mode.getHeight() / 2 - size.getY() / 2); // this.setLocation(mode.getWidth() / 2 - size.getX() / 2, mode.getHeight() / 2 - size.getY() / 2);
this.setSize(size.getX(), size.getY()); final var ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
final var bounds = ge.getDefaultScreenDevice().getDefaultConfiguration().getBounds();
this.setLocation(bounds.x, bounds.y);
this.setSize((int)Math.min(bounds.getWidth(), RendererControl.REFERENCE_RESOLUTION.getX()), (int)Math.min(bounds.getHeight(), RendererControl.REFERENCE_RESOLUTION.getY()));
} }
private static int getModifiers(final InputEvent event) { private static int getModifiers(final InputEvent event) {