From 6a6243be95457c0dca94c3e69eb4bf0c5323b0ca Mon Sep 17 00:00:00 2001 From: rememberber Date: Mon, 20 Dec 2021 15:21:13 +0800 Subject: [PATCH] macOS screen menu optimization --- .../java/com/luoboduner/moo/info/App.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/main/java/com/luoboduner/moo/info/App.java b/src/main/java/com/luoboduner/moo/info/App.java index f78c47b..4c3c66e 100644 --- a/src/main/java/com/luoboduner/moo/info/App.java +++ b/src/main/java/com/luoboduner/moo/info/App.java @@ -1,12 +1,17 @@ package com.luoboduner.moo.info; +import com.formdev.flatlaf.extras.FlatDesktop; import com.formdev.flatlaf.util.SystemInfo; import com.luoboduner.moo.info.ui.Init; +import com.luoboduner.moo.info.ui.dialog.AboutDialog; +import com.luoboduner.moo.info.ui.dialog.SettingDialog; import com.luoboduner.moo.info.ui.form.LoadingForm; import com.luoboduner.moo.info.ui.form.MainWindow; import com.luoboduner.moo.info.ui.frame.MainFrame; import com.luoboduner.moo.info.util.ConfigUtil; import com.luoboduner.moo.info.util.UpgradeUtil; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.exception.ExceptionUtils; import javax.swing.*; import java.awt.*; @@ -17,6 +22,7 @@ import java.awt.*; * @author RememBerBer * @since 2021/11/07. */ +@Slf4j public class App { public static ConfigUtil config = ConfigUtil.getInstance(); @@ -34,6 +40,29 @@ public class App { System.setProperty("apple.awt.application.name", "MooInfo"); System.setProperty("com.apple.mrj.application.apple.menu.about.name", "MooInfo"); System.setProperty("apple.awt.application.appearance", "system"); + + FlatDesktop.setAboutHandler(() -> { + try { + AboutDialog dialog = new AboutDialog(); + + dialog.pack(); + dialog.setVisible(true); + } catch (Exception e2) { + log.error(ExceptionUtils.getStackTrace(e2)); + } + }); + FlatDesktop.setPreferencesHandler(() -> { + try { + SettingDialog dialog = new SettingDialog(); + + dialog.pack(); + dialog.setVisible(true); + } catch (Exception e2) { + log.error(ExceptionUtils.getStackTrace(e2)); + } + }); + FlatDesktop.setQuitHandler(FlatDesktop.QuitResponse::performQuit); + } Init.initTheme();