When java disappoints try C++

Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
Trial97
2023-11-25 16:01:36 +02:00
parent 3c17f606ed
commit 1be29076ea
2 changed files with 28 additions and 43 deletions

View File

@@ -57,13 +57,6 @@ package org.prismlauncher.launcher.impl;
import org.prismlauncher.utils.Parameters;
import org.prismlauncher.utils.ReflectionUtils;
import java.awt.Dimension;
import java.awt.GraphicsConfiguration;
import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;
import java.awt.Insets;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.lang.invoke.MethodHandle;
import java.util.Collections;
import java.util.List;
@@ -83,25 +76,10 @@ public final class StandardLauncher extends AbstractLauncher {
@Override
public void launch() throws Throwable {
// window size, title and state
// FIXME doesn't support maximisation
if (!maximize) {
gameArgs.add("--width");
gameArgs.add(Integer.toString(width));
gameArgs.add("--height");
gameArgs.add(Integer.toString(height));
} else {
try {
// Dimension rct = Toolkit.getDefaultToolkit().getScreenSize();
Rectangle rct = getDefaultDeviceBounds();
gameArgs.add("--width");
gameArgs.add(Integer.toString(rct.width));
gameArgs.add("--height");
gameArgs.add(Integer.toString(rct.height));
} catch (Exception e) {
// If for some reason the get fails just continue without seting the dimensions
}
}
gameArgs.add("--width");
gameArgs.add(Integer.toString(width));
gameArgs.add("--height");
gameArgs.add(Integer.toString(height));
if (serverAddress != null) {
if (quickPlayMultiplayerSupported) {
@@ -123,18 +101,4 @@ public final class StandardLauncher extends AbstractLauncher {
MethodHandle method = ReflectionUtils.findMainMethod(mainClassName);
method.invokeExact(gameArgs.toArray(new String[0]));
}
private static Rectangle getDefaultDeviceBounds() {
GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
GraphicsConfiguration gc = gd.getDefaultConfiguration();
Rectangle bounds = gc.getBounds();
Insets insets = Toolkit.getDefaultToolkit().getScreenInsets(gc);
bounds.x += insets.left;
bounds.y += insets.top;
bounds.width -= (insets.left + insets.right);
bounds.height -= (insets.top + insets.bottom);
return bounds;
}
}