diff --git a/BuildSupport/iOS/Settings.bundle/Root.plist b/BuildSupport/iOS/Settings.bundle/Root.plist
new file mode 100644
index 0000000..f0df036
--- /dev/null
+++ b/BuildSupport/iOS/Settings.bundle/Root.plist
@@ -0,0 +1,21 @@
+
+
+
+
+ StringsTable
+ Root
+ PreferenceSpecifiers
+
+
+ Type
+ PSToggleSwitchSpecifier
+ Title
+ Hide Transposition Menu
+ Key
+ HidesTranspositionMenu
+ DefaultValue
+
+
+
+
+
diff --git a/BuildSupport/iOS/Settings.bundle/en.lproj/Root.strings b/BuildSupport/iOS/Settings.bundle/en.lproj/Root.strings
new file mode 100644
index 0000000..690e32a
Binary files /dev/null and b/BuildSupport/iOS/Settings.bundle/en.lproj/Root.strings differ
diff --git a/ZenTuner.xcodeproj/project.pbxproj b/ZenTuner.xcodeproj/project.pbxproj
index 563b058..59b81d3 100644
--- a/ZenTuner.xcodeproj/project.pbxproj
+++ b/ZenTuner.xcodeproj/project.pbxproj
@@ -7,6 +7,7 @@
objects = {
/* Begin PBXBuildFile section */
+ 21E9A5582AFDC0CE00673532 /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 21E9A5572AFDC0CE00673532 /* Settings.bundle */; };
8F13E1C225ED533800C3F23D /* ClosestNoteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F13E1C125ED533800C3F23D /* ClosestNoteTests.swift */; };
8F2D975126938AF900B512D0 /* TunerScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F2D975026938AF900B512D0 /* TunerScreen.swift */; };
8F2D975326938B0500B512D0 /* TunerScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F2D975026938AF900B512D0 /* TunerScreen.swift */; };
@@ -84,6 +85,7 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
+ 21E9A5572AFDC0CE00673532 /* Settings.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = Settings.bundle; sourceTree = ""; };
8F13E1C125ED533800C3F23D /* ClosestNoteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ClosestNoteTests.swift; sourceTree = ""; };
8F2D975026938AF900B512D0 /* TunerScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunerScreen.swift; sourceTree = ""; };
8F2D9754269390D800B512D0 /* MicrophoneAccessAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MicrophoneAccessAlert.swift; sourceTree = ""; };
@@ -231,6 +233,7 @@
isa = PBXGroup;
children = (
8FB571B425B72147007C28BC /* Info.plist */,
+ 21E9A5572AFDC0CE00673532 /* Settings.bundle */,
);
path = iOS;
sourceTree = "";
@@ -441,6 +444,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ 21E9A5582AFDC0CE00673532 /* Settings.bundle in Resources */,
8FB571C125B72147007C28BC /* Assets.xcassets in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
diff --git a/ZenTuner/Views/TunerView.swift b/ZenTuner/Views/TunerView.swift
index 4fcbd36..0f8425c 100644
--- a/ZenTuner/Views/TunerView.swift
+++ b/ZenTuner/Views/TunerView.swift
@@ -9,6 +9,9 @@ struct TunerView: View {
tunerData.closestNote.inTransposition(ScaleNote.allCases[selectedTransposition])
}
+ @AppStorage("HidesTranspositionMenu")
+ private var hidesTranspositionMenu = false
+
var body: some View {
#if os(watchOS)
ZStack(alignment: Alignment(horizontal: .noteCenter, vertical: .noteTickCenter)) {
@@ -31,11 +34,13 @@ struct TunerView: View {
}
#else
VStack(alignment: .noteCenter) {
- HStack {
- TranspositionMenu(selectedTransposition: $selectedTransposition)
- .padding()
+ if !hidesTranspositionMenu {
+ HStack {
+ TranspositionMenu(selectedTransposition: $selectedTransposition)
+ .padding()
- Spacer()
+ Spacer()
+ }
}
Spacer()