diff --git a/.theos/_/DEBIAN/control b/.theos/_/DEBIAN/control
index 66c9ab1..23fb064 100644
--- a/.theos/_/DEBIAN/control
+++ b/.theos/_/DEBIAN/control
@@ -9,4 +9,4 @@ Name: ZenithDark
Sileodepiction: https://raw.githubusercontent.com/mac-user669/repo/master/sileodepictions/ZenithDark.json
Depiction: https://mac-user669.github.io/repo/depictions/?p=com.mac-user669.zenithdark/
Version: 1.0
-Installed-Size: 104
+Installed-Size: 312
diff --git a/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib b/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib
index 5cfd3f0..aa09c55 100755
Binary files a/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib and b/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib differ
diff --git a/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Info.plist b/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Info.plist
new file mode 100644
index 0000000..7408492
Binary files /dev/null and b/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Info.plist differ
diff --git a/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Root.plist b/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Root.plist
new file mode 100644
index 0000000..5efbdc3
Binary files /dev/null and b/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Root.plist differ
diff --git a/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/ZenithDarkPrefs b/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/ZenithDarkPrefs
new file mode 100755
index 0000000..3bf235f
Binary files /dev/null and b/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/ZenithDarkPrefs differ
diff --git a/.theos/_/Library/PreferenceLoader/Preferences/ZenithDarkPrefs.plist b/.theos/_/Library/PreferenceLoader/Preferences/ZenithDarkPrefs.plist
new file mode 100644
index 0000000..8e5955f
Binary files /dev/null and b/.theos/_/Library/PreferenceLoader/Preferences/ZenithDarkPrefs.plist differ
diff --git a/.theos/obj/ZenithDark.dylib b/.theos/obj/ZenithDark.dylib
index 5cfd3f0..aa09c55 100755
Binary files a/.theos/obj/ZenithDark.dylib and b/.theos/obj/ZenithDark.dylib differ
diff --git a/.theos/obj/ZenithDarkPrefs.bundle/Info.plist b/.theos/obj/ZenithDarkPrefs.bundle/Info.plist
new file mode 100644
index 0000000..86d931a
--- /dev/null
+++ b/.theos/obj/ZenithDarkPrefs.bundle/Info.plist
@@ -0,0 +1,24 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleExecutable
+ ZenithDarkPrefs
+ CFBundleIdentifier
+ com.mac-user669.zenithdarkprefs
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundlePackageType
+ BNDL
+ CFBundleShortVersionString
+ 1.0.0
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ 1.0
+ NSPrincipalClass
+ ZnthDrkRootListController
+
+
diff --git a/.theos/obj/ZenithDarkPrefs.bundle/Root.plist b/.theos/obj/ZenithDarkPrefs.bundle/Root.plist
new file mode 100644
index 0000000..5522dc1
--- /dev/null
+++ b/.theos/obj/ZenithDarkPrefs.bundle/Root.plist
@@ -0,0 +1,71 @@
+
+
+
+
+ items
+
+
+ cell
+ PSGroupCell
+ label
+ Enable
+
+
+ cell
+ PSSwitchCell
+ default
+
+ defaults
+ com.mac-user669.zenithdarkprefs
+ key
+ enabled
+ label
+ Enable
+
+
+ cell
+ PSGroupCell
+ label
+ Customization
+
+
+ cell
+ PSSwitchCell
+ default
+
+ defaults
+ com.mac-user669.zenithdarkprefs
+ key
+ replaceoriginalview
+ label
+ Replace Original View
+
+
+ cell
+ PSSwitchCell
+ default
+
+ defaults
+ com.mac-user669.zenithdarkprefs
+ key
+ notificationBadgesEnabled
+ label
+ Enable Notification Badges
+
+
+ cell
+ PSGroupCell
+
+
+ cell
+ PSButtonCell
+ label
+ @mac_user669
+ action
+ openTwitter
+
+
+ title
+ ZenithDark
+
+
\ No newline at end of file
diff --git a/.theos/obj/ZenithDarkPrefs.bundle/ZenithDarkPrefs b/.theos/obj/ZenithDarkPrefs.bundle/ZenithDarkPrefs
new file mode 100755
index 0000000..3bf235f
Binary files /dev/null and b/.theos/obj/ZenithDarkPrefs.bundle/ZenithDarkPrefs differ
diff --git a/.theos/obj/arm64/Tweak.xm.458c23e8.Td b/.theos/obj/arm64/Tweak.xm.458c23e8.Td
new file mode 100644
index 0000000..0e3e757
--- /dev/null
+++ b/.theos/obj/arm64/Tweak.xm.458c23e8.Td
@@ -0,0 +1,23 @@
+/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/arm64/Tweak.xm.458c23e8.o: \
+ /Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/arm64/Tweak.xm.mm \
+ /Users/cooperhull/theos/Prefix.pch \
+ /Users/cooperhull/theos/vendor/include/_Prefix/BackwardsCompat.h \
+ /Users/cooperhull/theos/vendor/include/_Prefix/IOSMacros.h \
+ /Users/cooperhull/theos/vendor/include/HBLog.h \
+ /Users/cooperhull/theos/vendor/include/CoreFoundation/CFLogUtilities.h \
+ /Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h \
+ /Users/cooperhull/theos/vendor/include/substrate.h
+
+/Users/cooperhull/theos/Prefix.pch:
+
+/Users/cooperhull/theos/vendor/include/_Prefix/BackwardsCompat.h:
+
+/Users/cooperhull/theos/vendor/include/_Prefix/IOSMacros.h:
+
+/Users/cooperhull/theos/vendor/include/HBLog.h:
+
+/Users/cooperhull/theos/vendor/include/CoreFoundation/CFLogUtilities.h:
+
+/Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h:
+
+/Users/cooperhull/theos/vendor/include/substrate.h:
diff --git a/.theos/obj/arm64/Tweak.xm.458c23e8.o b/.theos/obj/arm64/Tweak.xm.458c23e8.o
new file mode 100644
index 0000000..9683ab7
Binary files /dev/null and b/.theos/obj/arm64/Tweak.xm.458c23e8.o differ
diff --git a/.theos/obj/arm64/Tweak.xm.mm b/.theos/obj/arm64/Tweak.xm.mm
new file mode 100644
index 0000000..cb9613b
--- /dev/null
+++ b/.theos/obj/arm64/Tweak.xm.mm
@@ -0,0 +1,105 @@
+#line 1 "Tweak.xm"
+
+
+
+
+
+
+
+
+
+
+
+#import "ZenithDark.h"
+
+static BOOL enabled;
+static BOOL replaceOriginalView;
+static BOOL notificationBadgesEnabled;
+static void loadPrefs() {
+ static NSMutableDictionary *settings;
+
+ CFArrayRef keyList = CFPreferencesCopyKeyList(CFSTR("com.mac-user669.zenithdarkprefs"), kCFPreferencesCurrentUser, kCFPreferencesAnyHost);
+ if (keyList) {
+ settings = (NSMutableDictionary *)CFBridgingRelease(CFPreferencesCopyMultiple(keyList, CFSTR("com.mac-user669.zenithdarkprefs"), kCFPreferencesCurrentUser, kCFPreferencesAnyHost));
+ CFRelease(keyList);
+ } else {
+ settings = [NSMutableDictionary dictionaryWithContentsOfFile:@"/var/mobile/Library/Preferences/com.mac-user669.zenithdarkprefs.plist"];
+ }
+
+ enabled = [([settings objectForKey:@"enabled"] ? [settings objectForKey:@"enabled"] : @(YES)) boolValue];
+ replaceOriginalView = [([settings objectForKey:@"replaceoriginalview"] ? [settings objectForKey:@"replaceoriginalview"] : @(YES)) boolValue];
+ notificationBadgesEnabled = [([settings objectForKey:@"notificationBadgesEnabled"] ? [settings objectForKey:@"notificationBadgesEnabled"] : NO) boolValue];
+}
+
+
+
+
+#include
+#if defined(__clang__)
+#if __has_feature(objc_arc)
+#define _LOGOS_SELF_TYPE_NORMAL __unsafe_unretained
+#define _LOGOS_SELF_TYPE_INIT __attribute__((ns_consumed))
+#define _LOGOS_SELF_CONST const
+#define _LOGOS_RETURN_RETAINED __attribute__((ns_returns_retained))
+#else
+#define _LOGOS_SELF_TYPE_NORMAL
+#define _LOGOS_SELF_TYPE_INIT
+#define _LOGOS_SELF_CONST
+#define _LOGOS_RETURN_RETAINED
+#endif
+#else
+#define _LOGOS_SELF_TYPE_NORMAL
+#define _LOGOS_SELF_TYPE_INIT
+#define _LOGOS_SELF_CONST
+#define _LOGOS_RETURN_RETAINED
+#endif
+
+@class ZNGrabberAccessoryView;
+static void (*_logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$)(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST, SEL, UITraitCollection *); static void _logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST, SEL, UITraitCollection *); static void (*_logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$)(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST, SEL, UIColor *); static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST, SEL, UIColor *);
+
+#line 35 "Tweak.xm"
+
+
+static void _logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UITraitCollection * previousTraitCollection) {
+ _logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(self, _cmd, previousTraitCollection);
+ if (@available(iOS 13, *)) {
+ if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) {
+ [self setBackgroundColor:kDarkModeColor];
+ }
+
+ else {
+ [self setBackgroundColor:kLightModeColor];
+ }
+ }
+}
+
+
+
+static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UIColor * backgroundColor) {
+
+ if (@available(iOS 13, *)) {
+ if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) {
+ _logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(self, _cmd, kDarkModeColor);
+ }
+
+ else {
+ _logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(self, _cmd, backgroundColor);
+ }
+ }
+}
+
+
+
+
+
+static __attribute__((constructor)) void _logosLocalCtor_bbe4a825(int __unused argc, char __unused **argv, char __unused **envp) {
+
+loadPrefs();
+
+
+dlopen ("/Library/MobileSubstrate/DynamicLibraries/Zenith.dylib", RTLD_NOW);
+
+}
+static __attribute__((constructor)) void _logosLocalInit() {
+{Class _logos_class$_ungrouped$ZNGrabberAccessoryView = objc_getClass("ZNGrabberAccessoryView"); MSHookMessageEx(_logos_class$_ungrouped$ZNGrabberAccessoryView, @selector(traitCollectionDidChange:), (IMP)&_logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$, (IMP*)&_logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$);MSHookMessageEx(_logos_class$_ungrouped$ZNGrabberAccessoryView, @selector(setBackgroundColor:), (IMP)&_logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$, (IMP*)&_logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$);} }
+#line 77 "Tweak.xm"
diff --git a/.theos/obj/arm64/ZenithDark.dylib b/.theos/obj/arm64/ZenithDark.dylib
index 267b1e8..94b9b88 100755
Binary files a/.theos/obj/arm64/ZenithDark.dylib and b/.theos/obj/arm64/ZenithDark.dylib differ
diff --git a/.theos/obj/arm64/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib b/.theos/obj/arm64/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib
index af6cc85..8f5efff 100644
Binary files a/.theos/obj/arm64/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib and b/.theos/obj/arm64/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib differ
diff --git a/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs b/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs
new file mode 100755
index 0000000..a11c233
Binary files /dev/null and b/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs differ
diff --git a/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist b/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist
new file mode 100644
index 0000000..8249226
--- /dev/null
+++ b/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist
@@ -0,0 +1,20 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleIdentifier
+ com.apple.xcode.dsym.ZenithDarkPrefs
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundlePackageType
+ dSYM
+ CFBundleSignature
+ ????
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+
+
diff --git a/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs b/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs
new file mode 100644
index 0000000..e64972c
Binary files /dev/null and b/.theos/obj/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs differ
diff --git a/.theos/obj/arm64/ZnthDrkRootListController.m.6bc7b8e1.Td b/.theos/obj/arm64/ZnthDrkRootListController.m.6bc7b8e1.Td
new file mode 100644
index 0000000..d9f1842
--- /dev/null
+++ b/.theos/obj/arm64/ZnthDrkRootListController.m.6bc7b8e1.Td
@@ -0,0 +1,25 @@
+/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/arm64/ZnthDrkRootListController.m.6bc7b8e1.o: \
+ ZnthDrkRootListController.m /Users/cooperhull/theos/Prefix.pch \
+ /Users/cooperhull/theos/vendor/include/_Prefix/BackwardsCompat.h \
+ /Users/cooperhull/theos/vendor/include/_Prefix/IOSMacros.h \
+ /Users/cooperhull/theos/vendor/include/HBLog.h \
+ /Users/cooperhull/theos/vendor/include/CoreFoundation/CFLogUtilities.h \
+ ZnthDrkRootListController.h \
+ /Users/cooperhull/theos/vendor/include/Preferences/PSListController.h \
+ /Users/cooperhull/theos/vendor/include/Preferences/PSViewController.h
+
+/Users/cooperhull/theos/Prefix.pch:
+
+/Users/cooperhull/theos/vendor/include/_Prefix/BackwardsCompat.h:
+
+/Users/cooperhull/theos/vendor/include/_Prefix/IOSMacros.h:
+
+/Users/cooperhull/theos/vendor/include/HBLog.h:
+
+/Users/cooperhull/theos/vendor/include/CoreFoundation/CFLogUtilities.h:
+
+ZnthDrkRootListController.h:
+
+/Users/cooperhull/theos/vendor/include/Preferences/PSListController.h:
+
+/Users/cooperhull/theos/vendor/include/Preferences/PSViewController.h:
diff --git a/.theos/obj/arm64/ZnthDrkRootListController.m.6bc7b8e1.o b/.theos/obj/arm64/ZnthDrkRootListController.m.6bc7b8e1.o
new file mode 100644
index 0000000..ce5e0d6
Binary files /dev/null and b/.theos/obj/arm64/ZnthDrkRootListController.m.6bc7b8e1.o differ
diff --git a/.theos/obj/arm64/ZnthDrkRootListController.m.a07a2f8d.Td b/.theos/obj/arm64/ZnthDrkRootListController.m.a07a2f8d.Td
new file mode 100644
index 0000000..8b624eb
--- /dev/null
+++ b/.theos/obj/arm64/ZnthDrkRootListController.m.a07a2f8d.Td
@@ -0,0 +1,21 @@
+/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/arm64/ZnthDrkRootListController.m.a07a2f8d.o: \
+ ZnthDrkRootListController.m /Users/cooperhull/theos/Prefix.pch \
+ /Users/cooperhull/theos/include/_Prefix/BackwardsCompat.h \
+ /Users/cooperhull/theos/include/_Prefix/IOSMacros.h \
+ /Users/cooperhull/theos/include/HBLog.h ZnthDrkRootListController.h \
+ /Users/cooperhull/theos/include/Preferences/PSListController.h \
+ /Users/cooperhull/theos/include/Preferences/PSViewController.h
+
+/Users/cooperhull/theos/Prefix.pch:
+
+/Users/cooperhull/theos/include/_Prefix/BackwardsCompat.h:
+
+/Users/cooperhull/theos/include/_Prefix/IOSMacros.h:
+
+/Users/cooperhull/theos/include/HBLog.h:
+
+ZnthDrkRootListController.h:
+
+/Users/cooperhull/theos/include/Preferences/PSListController.h:
+
+/Users/cooperhull/theos/include/Preferences/PSViewController.h:
diff --git a/.theos/obj/arm64/ZnthDrkRootListController.m.a07a2f8d.o b/.theos/obj/arm64/ZnthDrkRootListController.m.a07a2f8d.o
new file mode 100644
index 0000000..0ca1930
Binary files /dev/null and b/.theos/obj/arm64/ZnthDrkRootListController.m.a07a2f8d.o differ
diff --git a/.theos/obj/arm64e/Tweak.xm.09225f44.Td b/.theos/obj/arm64e/Tweak.xm.09225f44.Td
new file mode 100644
index 0000000..1998bcb
--- /dev/null
+++ b/.theos/obj/arm64e/Tweak.xm.09225f44.Td
@@ -0,0 +1,23 @@
+/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/arm64e/Tweak.xm.09225f44.o: \
+ /Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/arm64e/Tweak.xm.mm \
+ /Users/cooperhull/theos/Prefix.pch \
+ /Users/cooperhull/theos/vendor/include/_Prefix/BackwardsCompat.h \
+ /Users/cooperhull/theos/vendor/include/_Prefix/IOSMacros.h \
+ /Users/cooperhull/theos/vendor/include/HBLog.h \
+ /Users/cooperhull/theos/vendor/include/CoreFoundation/CFLogUtilities.h \
+ /Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h \
+ /Users/cooperhull/theos/vendor/include/substrate.h
+
+/Users/cooperhull/theos/Prefix.pch:
+
+/Users/cooperhull/theos/vendor/include/_Prefix/BackwardsCompat.h:
+
+/Users/cooperhull/theos/vendor/include/_Prefix/IOSMacros.h:
+
+/Users/cooperhull/theos/vendor/include/HBLog.h:
+
+/Users/cooperhull/theos/vendor/include/CoreFoundation/CFLogUtilities.h:
+
+/Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h:
+
+/Users/cooperhull/theos/vendor/include/substrate.h:
diff --git a/.theos/obj/arm64e/Tweak.xm.09225f44.o b/.theos/obj/arm64e/Tweak.xm.09225f44.o
new file mode 100644
index 0000000..60dbce6
Binary files /dev/null and b/.theos/obj/arm64e/Tweak.xm.09225f44.o differ
diff --git a/.theos/obj/arm64e/ZenithDark.dylib b/.theos/obj/arm64e/ZenithDark.dylib
index ac68786..b95cc8c 100755
Binary files a/.theos/obj/arm64e/ZenithDark.dylib and b/.theos/obj/arm64e/ZenithDark.dylib differ
diff --git a/.theos/obj/arm64e/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib b/.theos/obj/arm64e/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib
index 719052b..9cd858b 100644
Binary files a/.theos/obj/arm64e/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib and b/.theos/obj/arm64e/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib differ
diff --git a/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs b/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs
new file mode 100755
index 0000000..d7b3c0f
Binary files /dev/null and b/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs differ
diff --git a/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist b/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist
new file mode 100644
index 0000000..8249226
--- /dev/null
+++ b/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist
@@ -0,0 +1,20 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleIdentifier
+ com.apple.xcode.dsym.ZenithDarkPrefs
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundlePackageType
+ dSYM
+ CFBundleSignature
+ ????
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+
+
diff --git a/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs b/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs
new file mode 100644
index 0000000..773dbb4
Binary files /dev/null and b/.theos/obj/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs differ
diff --git a/.theos/obj/arm64e/ZnthDrkRootListController.m.8d8dbbf4.Td b/.theos/obj/arm64e/ZnthDrkRootListController.m.8d8dbbf4.Td
new file mode 100644
index 0000000..b8aa3bb
--- /dev/null
+++ b/.theos/obj/arm64e/ZnthDrkRootListController.m.8d8dbbf4.Td
@@ -0,0 +1,21 @@
+/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/arm64e/ZnthDrkRootListController.m.8d8dbbf4.o: \
+ ZnthDrkRootListController.m /Users/cooperhull/theos/Prefix.pch \
+ /Users/cooperhull/theos/include/_Prefix/BackwardsCompat.h \
+ /Users/cooperhull/theos/include/_Prefix/IOSMacros.h \
+ /Users/cooperhull/theos/include/HBLog.h ZnthDrkRootListController.h \
+ /Users/cooperhull/theos/include/Preferences/PSListController.h \
+ /Users/cooperhull/theos/include/Preferences/PSViewController.h
+
+/Users/cooperhull/theos/Prefix.pch:
+
+/Users/cooperhull/theos/include/_Prefix/BackwardsCompat.h:
+
+/Users/cooperhull/theos/include/_Prefix/IOSMacros.h:
+
+/Users/cooperhull/theos/include/HBLog.h:
+
+ZnthDrkRootListController.h:
+
+/Users/cooperhull/theos/include/Preferences/PSListController.h:
+
+/Users/cooperhull/theos/include/Preferences/PSViewController.h:
diff --git a/.theos/obj/arm64e/ZnthDrkRootListController.m.8d8dbbf4.o b/.theos/obj/arm64e/ZnthDrkRootListController.m.8d8dbbf4.o
new file mode 100644
index 0000000..6f253d0
Binary files /dev/null and b/.theos/obj/arm64e/ZnthDrkRootListController.m.8d8dbbf4.o differ
diff --git a/Makefile b/Makefile
index c28ef5d..ba10947 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,7 @@
ARCHS = arm64 arm64e
SDK = iPhoneOS12.4
FINALPACKAGE = 1
+export TARGET = iphone:clang:11.2:latest
include $(THEOS)/makefiles/common.mk
@@ -14,3 +15,5 @@ include $(THEOS_MAKE_PATH)/tweak.mk
after-install::
install.exec "sbreload"
+SUBPROJECTS += zenithdarkprefs
+include $(THEOS_MAKE_PATH)/aggregate.mk
diff --git a/Tweak.xm b/Tweak.xm
index 1a41085..4af4b04 100644
--- a/Tweak.xm
+++ b/Tweak.xm
@@ -11,9 +11,28 @@ Written for Cooper Hull, @(mac-user669).
#import "ZenithDark.h"
+static BOOL enabled;
+static BOOL replaceOriginalView;
+static BOOL notificationBadgesEnabled;
+static void loadPrefs() {
+ static NSMutableDictionary *settings;
+
+ CFArrayRef keyList = CFPreferencesCopyKeyList(CFSTR("com.mac-user669.zenithdarkprefs"), kCFPreferencesCurrentUser, kCFPreferencesAnyHost);
+ if (keyList) {
+ settings = (NSMutableDictionary *)CFBridgingRelease(CFPreferencesCopyMultiple(keyList, CFSTR("com.mac-user669.zenithdarkprefs"), kCFPreferencesCurrentUser, kCFPreferencesAnyHost));
+ CFRelease(keyList);
+ } else {
+ settings = [NSMutableDictionary dictionaryWithContentsOfFile:@"/var/mobile/Library/Preferences/com.mac-user669.zenithdarkprefs.plist"];
+ }
+
+ enabled = [([settings objectForKey:@"enabled"] ? [settings objectForKey:@"enabled"] : @(YES)) boolValue];
+ replaceOriginalView = [([settings objectForKey:@"replaceoriginalview"] ? [settings objectForKey:@"replaceoriginalview"] : @(YES)) boolValue];
+ notificationBadgesEnabled = [([settings objectForKey:@"notificationBadgesEnabled"] ? [settings objectForKey:@"notificationBadgesEnabled"] : NO) boolValue];
+}
+
+
// We then hook the class in this case Zenith's grabber view is called “ZNGrabberAccessoryView”
%hook ZNGrabberAccessoryView
-
// this is called when iOS 13's dark mode is enabled!
-(void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection {
%orig(previousTraitCollection);
@@ -49,6 +68,8 @@ Written for Cooper Hull, @(mac-user669).
// our constructor
%ctor {
+loadPrefs();
+
// We use this to make sure we load Zenith's dynamic library at runtime so we can modify it with our tweak.
dlopen ("/Library/MobileSubstrate/DynamicLibraries/Zenith.dylib", RTLD_NOW);
diff --git a/packages/com.mac-user669.zenithdark_1.0_iphoneos-arm.deb b/packages/com.mac-user669.zenithdark_1.0_iphoneos-arm.deb
index ca9a3dc..d283c87 100644
Binary files a/packages/com.mac-user669.zenithdark_1.0_iphoneos-arm.deb and b/packages/com.mac-user669.zenithdark_1.0_iphoneos-arm.deb differ
diff --git a/zenithdarkprefs/Makefile b/zenithdarkprefs/Makefile
new file mode 100644
index 0000000..b9786d6
--- /dev/null
+++ b/zenithdarkprefs/Makefile
@@ -0,0 +1,17 @@
+include $(THEOS)/makefiles/common.mk
+
+ARCHS = arm64 arm64e
+export TARGET = iphone:clang:11.2:latest
+BUNDLE_NAME = ZenithDarkPrefs
+
+ZenithDarkPrefs_FILES = ZnthDrkRootListController.m
+ZenithDarkPrefs_INSTALL_PATH = /Library/PreferenceBundles
+ZenithDarkPrefs_FRAMEWORKS = UIKit
+ZenithDarkPrefs_PRIVATE_FRAMEWORKS = Preferences
+ZenithDarkPrefs_CFLAGS = -fobjc-arc
+
+include $(THEOS_MAKE_PATH)/bundle.mk
+
+internal-stage::
+ $(ECHO_NOTHING)mkdir -p $(THEOS_STAGING_DIR)/Library/PreferenceLoader/Preferences$(ECHO_END)
+ $(ECHO_NOTHING)cp entry.plist $(THEOS_STAGING_DIR)/Library/PreferenceLoader/Preferences/ZenithDarkPrefs.plist$(ECHO_END)
diff --git a/zenithdarkprefs/Resources/Info.plist b/zenithdarkprefs/Resources/Info.plist
new file mode 100644
index 0000000..86d931a
--- /dev/null
+++ b/zenithdarkprefs/Resources/Info.plist
@@ -0,0 +1,24 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleExecutable
+ ZenithDarkPrefs
+ CFBundleIdentifier
+ com.mac-user669.zenithdarkprefs
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundlePackageType
+ BNDL
+ CFBundleShortVersionString
+ 1.0.0
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ 1.0
+ NSPrincipalClass
+ ZnthDrkRootListController
+
+
diff --git a/zenithdarkprefs/Resources/Root.plist b/zenithdarkprefs/Resources/Root.plist
new file mode 100644
index 0000000..5522dc1
--- /dev/null
+++ b/zenithdarkprefs/Resources/Root.plist
@@ -0,0 +1,71 @@
+
+
+
+
+ items
+
+
+ cell
+ PSGroupCell
+ label
+ Enable
+
+
+ cell
+ PSSwitchCell
+ default
+
+ defaults
+ com.mac-user669.zenithdarkprefs
+ key
+ enabled
+ label
+ Enable
+
+
+ cell
+ PSGroupCell
+ label
+ Customization
+
+
+ cell
+ PSSwitchCell
+ default
+
+ defaults
+ com.mac-user669.zenithdarkprefs
+ key
+ replaceoriginalview
+ label
+ Replace Original View
+
+
+ cell
+ PSSwitchCell
+ default
+
+ defaults
+ com.mac-user669.zenithdarkprefs
+ key
+ notificationBadgesEnabled
+ label
+ Enable Notification Badges
+
+
+ cell
+ PSGroupCell
+
+
+ cell
+ PSButtonCell
+ label
+ @mac_user669
+ action
+ openTwitter
+
+
+ title
+ ZenithDark
+
+
\ No newline at end of file
diff --git a/zenithdarkprefs/ZnthDrkRootListController.h b/zenithdarkprefs/ZnthDrkRootListController.h
new file mode 100644
index 0000000..07cc78a
--- /dev/null
+++ b/zenithdarkprefs/ZnthDrkRootListController.h
@@ -0,0 +1,5 @@
+#import
+
+@interface ZnthDrkRootListController : PSListController
+
+@end
diff --git a/zenithdarkprefs/ZnthDrkRootListController.m b/zenithdarkprefs/ZnthDrkRootListController.m
new file mode 100644
index 0000000..4c559f8
--- /dev/null
+++ b/zenithdarkprefs/ZnthDrkRootListController.m
@@ -0,0 +1,40 @@
+#import "ZnthDrkRootListController.h"
+#import
+@implementation ZnthDrkRootListController
+
+- (void)viewWillAppear:(BOOL)animated {
+ [super viewWillAppear:animated];
+ UIBarButtonItem *applyButton = [[UIBarButtonItem alloc] initWithTitle:@"Apply" style:UIBarButtonItemStylePlain target:self action:@selector(respringDevice)];
+ self.navigationItem.rightBarButtonItem = applyButton;
+}
+
+- (NSArray *)specifiers {
+ if (!_specifiers) {
+ _specifiers = [self loadSpecifiersFromPlistName:@"Root" target:self];
+ }
+
+ return _specifiers;
+}
+
+- (void) respringDevice {
+ UIAlertController *confirmRespringAlert = [UIAlertController alertControllerWithTitle:@"Apply settings?" message:@"This will respring your device" preferredStyle:UIAlertControllerStyleAlert];
+ UIAlertAction *confirm = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
+ pid_t pid;
+ const char *argv[] = {"sbreload", NULL};
+ posix_spawn(&pid, "/usr/bin/sbreload", NULL, NULL, (char* const*)argv, NULL);
+ }];
+
+ UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:nil];
+
+ [confirmRespringAlert addAction:cancel];
+ [confirmRespringAlert addAction:confirm];
+
+ [self presentViewController:confirmRespringAlert animated:YES completion:nil];
+}
+
+-(void)openTwitter {
+ NSURL *twitter = [NSURL URLWithString:@"https://twitter.com/mac_user669"];
+ [[UIApplication sharedApplication] openURL:twitter options:@{} completionHandler:nil];
+}
+
+@end
diff --git a/zenithdarkprefs/entry.plist b/zenithdarkprefs/entry.plist
new file mode 100644
index 0000000..9b0cc13
--- /dev/null
+++ b/zenithdarkprefs/entry.plist
@@ -0,0 +1,21 @@
+
+
+
+
+ entry
+
+ bundle
+ ZenithDarkPrefs
+ cell
+ PSLinkCell
+ detail
+ ZnthDrkRootListController
+ icon
+ icon.png
+ isController
+
+ label
+ ZenithDarkPrefs
+
+
+