From a337c20fe6ad54ae4779f58b4cff05ded1604d2a Mon Sep 17 00:00:00 2001 From: Markus Fritze Date: Mon, 5 Oct 2020 11:08:42 +0200 Subject: [PATCH] Additional Java detection, like JD-GUI https://github.com/ZeeZide/5GUIs/issues/11 --- Sources/5GUIs/Model/FileDetectionState.swift | 4 ++++ Sources/5GUIs/Model/InfoDict.swift | 2 ++ 2 files changed, 6 insertions(+) diff --git a/Sources/5GUIs/Model/FileDetectionState.swift b/Sources/5GUIs/Model/FileDetectionState.swift index 4139d2b..5839425 100644 --- a/Sources/5GUIs/Model/FileDetectionState.swift +++ b/Sources/5GUIs/Model/FileDetectionState.swift @@ -180,6 +180,10 @@ final class FileDetectionState: ObservableObject { break } } + // JD-GUI + if self.info.infoDictionary?.JavaX != nil { + detectedFeatures.insert(.java) + } do { // Electron apps seem to have this ... let suburl = contents.appendingPathComponent("Resources/app.asar") diff --git a/Sources/5GUIs/Model/InfoDict.swift b/Sources/5GUIs/Model/InfoDict.swift index 568a9e0..743593f 100644 --- a/Sources/5GUIs/Model/InfoDict.swift +++ b/Sources/5GUIs/Model/InfoDict.swift @@ -17,6 +17,7 @@ struct InfoDict: Equatable { let supportedPlatforms : [ String ] // MacOSX let minimumSystemVersion : String? let appleScriptEnabled : Bool + let JavaX : Bool // e.g. JD-GUI let iconName : String? // AppIcon let iconFile : String? // AppIcon @@ -61,5 +62,6 @@ struct InfoDict: Equatable { supportedPlatforms = dictionary["CFBundleSupportedPlatforms"] as? [ String ] ?? [] + JavaX = dictionary["JavaX"] != nil } }