Fix the app window changing may lead to that the app can't open in macOS (#4042)

This commit is contained in:
lishaoxia1985 2021-06-03 07:02:46 -05:00 committed by GitHub
parent aa9dda2eea
commit e77eaf5fa5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 10 deletions

View File

@ -62,7 +62,6 @@ class UncivGame(parameters: UncivGameParameters) : Game() {
var music: Music? = null var music: Music? = null
val musicLocation = "music/thatched-villagers.mp3" val musicLocation = "music/thatched-villagers.mp3"
private var isSizeRestored = false
var isInitialized = false var isInitialized = false
@ -118,7 +117,6 @@ class UncivGame(parameters: UncivGameParameters) : Game() {
thread(name="Music") { startMusic() } thread(name="Music") { startMusic() }
restoreSize()
if (settings.isFreshlyCreated) { if (settings.isFreshlyCreated) {
setScreen(LanguagePickerScreen()) setScreen(LanguagePickerScreen())
@ -129,14 +127,6 @@ class UncivGame(parameters: UncivGameParameters) : Game() {
crashController = CrashController.Impl(crashReportSender) crashController = CrashController.Impl(crashReportSender)
} }
fun restoreSize() {
if (!isSizeRestored && Gdx.app.type == Application.ApplicationType.Desktop && settings.windowState.height>39 && settings.windowState.width>39) {
isSizeRestored = true
Gdx.graphics.setWindowedMode(settings.windowState.width, settings.windowState.height)
}
}
fun loadGame(gameInfo: GameInfo) { fun loadGame(gameInfo: GameInfo) {
this.gameInfo = gameInfo this.gameInfo = gameInfo
ImageGetter.setNewRuleset(gameInfo.ruleSet) ImageGetter.setNewRuleset(gameInfo.ruleSet)

View File

@ -6,10 +6,14 @@ import club.minnced.discord.rpc.DiscordRichPresence
import com.badlogic.gdx.Files import com.badlogic.gdx.Files
import com.badlogic.gdx.backends.lwjgl.LwjglApplication import com.badlogic.gdx.backends.lwjgl.LwjglApplication
import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration
import com.badlogic.gdx.files.FileHandle
import com.badlogic.gdx.graphics.Texture import com.badlogic.gdx.graphics.Texture
import com.badlogic.gdx.tools.texturepacker.TexturePacker import com.badlogic.gdx.tools.texturepacker.TexturePacker
import com.unciv.JsonParser
import com.unciv.UncivGame import com.unciv.UncivGame
import com.unciv.UncivGameParameters import com.unciv.UncivGameParameters
import com.unciv.logic.GameSaver
import com.unciv.models.metadata.GameSettings
import com.unciv.models.translations.tr import com.unciv.models.translations.tr
import com.unciv.ui.utils.Fonts import com.unciv.ui.utils.Fonts
import io.ktor.application.* import io.ktor.application.*
@ -39,6 +43,11 @@ internal object DesktopLauncher {
config.addIcon("ExtraImages/Icon.png", Files.FileType.Internal) config.addIcon("ExtraImages/Icon.png", Files.FileType.Internal)
config.title = "Unciv" config.title = "Unciv"
config.useHDPI = true config.useHDPI = true
if (FileHandle(GameSaver.settingsFileName).exists()) {
val settings = JsonParser().getFromJson(GameSettings::class.java, FileHandle(GameSaver.settingsFileName))
config.width = settings.windowState.width
config.height = settings.windowState.height
}
val versionFromJar = DesktopLauncher.javaClass.`package`.specificationVersion ?: "Desktop" val versionFromJar = DesktopLauncher.javaClass.`package`.specificationVersion ?: "Desktop"