diff --git a/MTMR/AppleScriptTouchBarItem.swift b/MTMR/AppleScriptTouchBarItem.swift index 183a3e2..a379a45 100644 --- a/MTMR/AppleScriptTouchBarItem.swift +++ b/MTMR/AppleScriptTouchBarItem.swift @@ -35,7 +35,7 @@ class AppleScriptTouchBarItem: CustomButtonTouchBarItem { func refreshAndSchedule() { #if DEBUG - print("refresh happened") + print("refresh happened (interval \(self.interval)), self \(self.identifier.rawValue))") #endif let scriptResult = self.execute() DispatchQueue.main.async { diff --git a/MTMR/TouchBarController.swift b/MTMR/TouchBarController.swift index 945d464..a3b28ca 100644 --- a/MTMR/TouchBarController.swift +++ b/MTMR/TouchBarController.swift @@ -50,7 +50,7 @@ class TouchBarController: NSObject, NSTouchBarDelegate { static let shared = TouchBarController() - let touchBar = NSTouchBar() + var touchBar: NSTouchBar! var itemDefinitions: [NSTouchBarItem.Identifier: BarItemDefinition] = [:] var items: [NSTouchBarItem.Identifier: NSTouchBarItem] = [:] @@ -69,6 +69,10 @@ class TouchBarController: NSObject, NSTouchBarDelegate { } func createAndUpdatePreset(jsonItems: [BarItemDefinition]? = nil) { + if let oldBar = self.touchBar { + NSTouchBar.minimizeSystemModalFunctionBar(oldBar) + } + self.touchBar = NSTouchBar() var jsonItems = jsonItems self.itemDefinitions = [:] self.items = [:] @@ -110,8 +114,11 @@ class TouchBarController: NSObject, NSTouchBarDelegate { } func loadItemDefinitions(jsonItems: [BarItemDefinition]) { + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = "HH-mm-ss" + let time = dateFormatter.string(from: Date()) for item in jsonItems { - let identifierString = item.type.identifierBase.appending(UUID().uuidString) + let identifierString = item.type.identifierBase.appending(time + "--" + UUID().uuidString) let identifier = NSTouchBarItem.Identifier(identifierString) itemDefinitions[identifier] = item if item.align == .left { diff --git a/MTMR/defaultPreset.json b/MTMR/defaultPreset.json index f041f37..0eb431b 100644 --- a/MTMR/defaultPreset.json +++ b/MTMR/defaultPreset.json @@ -73,6 +73,7 @@ { "type": "volumeDown", "width": 34, "align": "right" }, { "type": "volume", "width": 60, "align": "right" }, { "type": "volumeUp", "width": 34, "align": "right" }, + { "type": "inputsource", "align": "right" }, { "type": "battery", "align": "right" }, { "type": "timeButton", "align": "right" } ] diff --git a/README.md b/README.md index 8e0bdec..9add8db 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ # My TouchBar. My rules [](https://github.com/Toxblh/MTMR/releases) +[](https://github.com/Toxblh/MTMR/blob/master/LICENSE) [](https://github.com/Toxblh/MTMR/releases/latest) 
@@ -67,6 +68,7 @@ File for customize your preset for MTMR: `open ~/Library/Application\ Support/MT
- battery
- currency
- weather
+- inputsource
> Media Keys
- previous
diff --git a/build.sh b/build.sh
index c4c76a1..8871423 100755
--- a/build.sh
+++ b/build.sh
@@ -18,6 +18,7 @@ rm -r App.xcarchive
# Prerequisite: npm i -g create-dmg
create-dmg "${NAME}.app"
-VERSION=`mdls -raw -name kMDItemVersion MTMR.app`
+VERSION=`mdls -raw -name kMDItemVersion ${NAME}.app`
+
echo $VERSION
zip -r "${NAME}v${VERSION}.zip" "${NAME}.app"