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 + + +