diff --git a/.theos/_/DEBIAN/control b/.theos/_/DEBIAN/control index 2ebd7d4..b78a4d3 100644 --- a/.theos/_/DEBIAN/control +++ b/.theos/_/DEBIAN/control @@ -8,5 +8,5 @@ Author: mac-user669 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-1+debug +Version: 1.0 Installed-Size: 344 diff --git a/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib b/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib index 62dbcf0..2495a2b 100755 Binary files a/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib and b/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.dylib differ diff --git a/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.plist b/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.plist index 10dc654..4aadfb4 100644 Binary files a/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.plist and b/.theos/_/Library/MobileSubstrate/DynamicLibraries/ZenithDark.plist differ diff --git a/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Info.plist b/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Info.plist index 86d931a..7408492 100644 Binary files a/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Info.plist 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 index 727bd0f..7eafae2 100644 Binary files a/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/Root.plist 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 index 56212ea..3bf235f 100755 Binary files a/.theos/_/Library/PreferenceBundles/ZenithDarkPrefs.bundle/ZenithDarkPrefs 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 index 9b0cc13..8e5955f 100644 Binary files a/.theos/_/Library/PreferenceLoader/Preferences/ZenithDarkPrefs.plist and b/.theos/_/Library/PreferenceLoader/Preferences/ZenithDarkPrefs.plist differ diff --git a/.theos/last_package b/.theos/last_package index eae5d33..41b9a78 100644 --- a/.theos/last_package +++ b/.theos/last_package @@ -1 +1 @@ -./packages/com.mac-user669.zenithdark_1.0-1+debug_iphoneos-arm.deb +./packages/com.mac-user669.zenithdark_1.0_iphoneos-arm.deb diff --git a/.theos/obj/ZenithDark.dylib b/.theos/obj/ZenithDark.dylib index afe045a..2495a2b 100755 Binary files a/.theos/obj/ZenithDark.dylib and b/.theos/obj/ZenithDark.dylib differ diff --git a/.theos/obj/arm64/Tweak.xm.c4e2add9.o b/.theos/obj/arm64/Tweak.xm.c4e2add9.o index 2b07b87..d80c567 100644 Binary files a/.theos/obj/arm64/Tweak.xm.c4e2add9.o and b/.theos/obj/arm64/Tweak.xm.c4e2add9.o differ diff --git a/.theos/obj/arm64/Tweak.xm.mm b/.theos/obj/arm64/Tweak.xm.mm index 4478f39..2562b5f 100644 --- a/.theos/obj/arm64/Tweak.xm.mm +++ b/.theos/obj/arm64/Tweak.xm.mm @@ -12,6 +12,20 @@ #import "ZenithDark.h" +static BOOL enabled; +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]; +} @@ -38,10 +52,11 @@ @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 16 "Tweak.xm" +#line 30 "Tweak.xm" static void _logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UITraitCollection * previousTraitCollection) { + if (enabled) { _logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(self, _cmd, previousTraitCollection); if (@available(iOS 13, *)) { if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) { @@ -52,11 +67,14 @@ static void _logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidCh [self setBackgroundColor:kLightModeColor]; } } + } + _logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(self, _cmd, previousTraitCollection); } static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UIColor * backgroundColor) { + if (enabled) { if (@available(iOS 13, *)) { if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) { @@ -67,6 +85,8 @@ static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$( _logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(self, _cmd, backgroundColor); } } + } + _logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(self, _cmd, backgroundColor); } @@ -75,8 +95,9 @@ static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$( -static __attribute__((constructor)) void _logosLocalCtor_da6b7450(int __unused argc, char __unused **argv, char __unused **envp) { +static __attribute__((constructor)) void _logosLocalCtor_7f270ec4(int __unused argc, char __unused **argv, char __unused **envp) { +loadPrefs(); dlopen ("/Library/MobileSubstrate/DynamicLibraries/Zenith.dylib", RTLD_NOW); @@ -84,4 +105,4 @@ 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 59 "Tweak.xm" +#line 80 "Tweak.xm" diff --git a/.theos/obj/arm64/ZenithDark.dylib b/.theos/obj/arm64/ZenithDark.dylib index 14121c0..be03d3c 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 de04d57..b227cd9 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/arm64e/Tweak.xm.6fecb14d.o b/.theos/obj/arm64e/Tweak.xm.6fecb14d.o index f5a6d69..520acd2 100644 Binary files a/.theos/obj/arm64e/Tweak.xm.6fecb14d.o and b/.theos/obj/arm64e/Tweak.xm.6fecb14d.o differ diff --git a/.theos/obj/arm64e/Tweak.xm.mm b/.theos/obj/arm64e/Tweak.xm.mm index 4478f39..2562b5f 100644 --- a/.theos/obj/arm64e/Tweak.xm.mm +++ b/.theos/obj/arm64e/Tweak.xm.mm @@ -12,6 +12,20 @@ #import "ZenithDark.h" +static BOOL enabled; +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]; +} @@ -38,10 +52,11 @@ @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 16 "Tweak.xm" +#line 30 "Tweak.xm" static void _logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UITraitCollection * previousTraitCollection) { + if (enabled) { _logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(self, _cmd, previousTraitCollection); if (@available(iOS 13, *)) { if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) { @@ -52,11 +67,14 @@ static void _logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidCh [self setBackgroundColor:kLightModeColor]; } } + } + _logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(self, _cmd, previousTraitCollection); } static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UIColor * backgroundColor) { + if (enabled) { if (@available(iOS 13, *)) { if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) { @@ -67,6 +85,8 @@ static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$( _logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(self, _cmd, backgroundColor); } } + } + _logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(self, _cmd, backgroundColor); } @@ -75,8 +95,9 @@ static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$( -static __attribute__((constructor)) void _logosLocalCtor_da6b7450(int __unused argc, char __unused **argv, char __unused **envp) { +static __attribute__((constructor)) void _logosLocalCtor_7f270ec4(int __unused argc, char __unused **argv, char __unused **envp) { +loadPrefs(); dlopen ("/Library/MobileSubstrate/DynamicLibraries/Zenith.dylib", RTLD_NOW); @@ -84,4 +105,4 @@ 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 59 "Tweak.xm" +#line 80 "Tweak.xm" diff --git a/.theos/obj/arm64e/ZenithDark.dylib b/.theos/obj/arm64e/ZenithDark.dylib index f7f24a5..a494c2b 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 f77a598..d6093f7 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/debug/.stamp b/.theos/obj/debug/.stamp deleted file mode 100644 index e69de29..0000000 diff --git a/.theos/obj/debug/ZenithDark.dylib b/.theos/obj/debug/ZenithDark.dylib deleted file mode 100755 index 62dbcf0..0000000 Binary files a/.theos/obj/debug/ZenithDark.dylib and /dev/null differ diff --git a/.theos/obj/debug/ZenithDarkPrefs.bundle/ZenithDarkPrefs b/.theos/obj/debug/ZenithDarkPrefs.bundle/ZenithDarkPrefs deleted file mode 100755 index 56212ea..0000000 Binary files a/.theos/obj/debug/ZenithDarkPrefs.bundle/ZenithDarkPrefs and /dev/null differ diff --git a/.theos/obj/debug/arm64/Tweak.xm.30dd847b.Td b/.theos/obj/debug/arm64/Tweak.xm.30dd847b.Td deleted file mode 100644 index 7f3caac..0000000 --- a/.theos/obj/debug/arm64/Tweak.xm.30dd847b.Td +++ /dev/null @@ -1,20 +0,0 @@ -/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/debug/arm64/Tweak.xm.30dd847b.o: \ - /Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/debug/arm64/Tweak.xm.mm \ - /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 \ - /Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h \ - /Users/cooperhull/theos/include/substrate.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: - -/Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h: - -/Users/cooperhull/theos/include/substrate.h: diff --git a/.theos/obj/debug/arm64/Tweak.xm.mm b/.theos/obj/debug/arm64/Tweak.xm.mm deleted file mode 100644 index 07b65ab..0000000 --- a/.theos/obj/debug/arm64/Tweak.xm.mm +++ /dev/null @@ -1,116 +0,0 @@ -#line 1 "Tweak.xm" - - - - - - - - - - - -#import "ZenithDark.h" - -static BOOL enabled; - - -static void refreshPrefs() { - 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 = nil; - } - if (!settings) { - settings = [[NSMutableDictionary alloc] initWithContentsOfFile:@"/var/mobile/Library/Preferences/com.mac-user669.zenithdarkprefs.plist"]; - } - - enabled = [([settings objectForKey:@"enabled"] ?: @(YES)) 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 34 "Tweak.xm" - - -static void _logos_method$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UITraitCollection * previousTraitCollection) { - if(enabled){ - _logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(self, _cmd, previousTraitCollection); - if (@available(iOS 13, *)) { - if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) { - [self setBackgroundColor:kDarkModeColor]; - } - - else { - [self setBackgroundColor:kLightModeColor]; - } - } - } - else { - _logos_orig$_ungrouped$ZNGrabberAccessoryView$traitCollectionDidChange$(self, _cmd, previousTraitCollection); - } - -} - - - -static void _logos_method$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(_LOGOS_SELF_TYPE_NORMAL ZNGrabberAccessoryView* _LOGOS_SELF_CONST __unused self, SEL __unused _cmd, UIColor * backgroundColor) { - if(enabled){ - - - 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); - } - } - } - else { - _logos_orig$_ungrouped$ZNGrabberAccessoryView$setBackgroundColor$(self, _cmd, backgroundColor); -} -} - - - - - - -static __attribute__((constructor)) void _logosLocalCtor_16c0be02(int __unused argc, char __unused **argv, char __unused **envp) { - - - -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 88 "Tweak.xm" diff --git a/.theos/obj/debug/arm64/ZenithDark.dylib b/.theos/obj/debug/arm64/ZenithDark.dylib deleted file mode 100755 index 8b94681..0000000 Binary files a/.theos/obj/debug/arm64/ZenithDark.dylib and /dev/null differ diff --git a/.theos/obj/debug/arm64/ZenithDark.dylib.dSYM/Contents/Info.plist b/.theos/obj/debug/arm64/ZenithDark.dylib.dSYM/Contents/Info.plist deleted file mode 100644 index 1670f3b..0000000 --- a/.theos/obj/debug/arm64/ZenithDark.dylib.dSYM/Contents/Info.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.ZenithDark.dylib - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - diff --git a/.theos/obj/debug/arm64/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib b/.theos/obj/debug/arm64/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib deleted file mode 100644 index 03ba301..0000000 Binary files a/.theos/obj/debug/arm64/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib and /dev/null differ diff --git a/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs b/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs deleted file mode 100755 index 34c858c..0000000 Binary files a/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs and /dev/null differ diff --git a/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist b/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist deleted file mode 100644 index 8249226..0000000 --- a/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.ZenithDarkPrefs - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - diff --git a/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs b/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs deleted file mode 100644 index 9249ce9..0000000 Binary files a/.theos/obj/debug/arm64/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs and /dev/null differ diff --git a/.theos/obj/debug/arm64/ZnthDrkRootListController.m.0490b1f0.Td b/.theos/obj/debug/arm64/ZnthDrkRootListController.m.0490b1f0.Td deleted file mode 100644 index 1356f93..0000000 --- a/.theos/obj/debug/arm64/ZnthDrkRootListController.m.0490b1f0.Td +++ /dev/null @@ -1,21 +0,0 @@ -/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/debug/arm64/ZnthDrkRootListController.m.0490b1f0.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/debug/arm64/ZnthDrkRootListController.m.0490b1f0.o b/.theos/obj/debug/arm64/ZnthDrkRootListController.m.0490b1f0.o deleted file mode 100644 index ed71586..0000000 Binary files a/.theos/obj/debug/arm64/ZnthDrkRootListController.m.0490b1f0.o and /dev/null differ diff --git a/.theos/obj/debug/arm64e/Tweak.xm.9a3df4bf.Td b/.theos/obj/debug/arm64e/Tweak.xm.9a3df4bf.Td deleted file mode 100644 index 695ee51..0000000 --- a/.theos/obj/debug/arm64e/Tweak.xm.9a3df4bf.Td +++ /dev/null @@ -1,20 +0,0 @@ -/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/debug/arm64e/Tweak.xm.9a3df4bf.o: \ - /Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/debug/arm64e/Tweak.xm.mm \ - /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 \ - /Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h \ - /Users/cooperhull/theos/include/substrate.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: - -/Users/cooperhull/Desktop/Tweaks/ZenithDark/ZenithDark.h: - -/Users/cooperhull/theos/include/substrate.h: diff --git a/.theos/obj/debug/arm64e/Tweak.xm.9a3df4bf.o b/.theos/obj/debug/arm64e/Tweak.xm.9a3df4bf.o deleted file mode 100644 index 04c7bee..0000000 Binary files a/.theos/obj/debug/arm64e/Tweak.xm.9a3df4bf.o and /dev/null differ diff --git a/.theos/obj/debug/arm64e/ZenithDark.dylib b/.theos/obj/debug/arm64e/ZenithDark.dylib deleted file mode 100755 index 7892541..0000000 Binary files a/.theos/obj/debug/arm64e/ZenithDark.dylib and /dev/null differ diff --git a/.theos/obj/debug/arm64e/ZenithDark.dylib.dSYM/Contents/Info.plist b/.theos/obj/debug/arm64e/ZenithDark.dylib.dSYM/Contents/Info.plist deleted file mode 100644 index 1670f3b..0000000 --- a/.theos/obj/debug/arm64e/ZenithDark.dylib.dSYM/Contents/Info.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.ZenithDark.dylib - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - diff --git a/.theos/obj/debug/arm64e/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib b/.theos/obj/debug/arm64e/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib deleted file mode 100644 index 1c3296c..0000000 Binary files a/.theos/obj/debug/arm64e/ZenithDark.dylib.dSYM/Contents/Resources/DWARF/ZenithDark.dylib and /dev/null differ diff --git a/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs b/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs deleted file mode 100755 index d0a46aa..0000000 Binary files a/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs and /dev/null differ diff --git a/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist b/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist deleted file mode 100644 index 8249226..0000000 --- a/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Info.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.ZenithDarkPrefs - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - diff --git a/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs b/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs deleted file mode 100644 index 32538d9..0000000 Binary files a/.theos/obj/debug/arm64e/ZenithDarkPrefs.bundle/ZenithDarkPrefs.dSYM/Contents/Resources/DWARF/ZenithDarkPrefs and /dev/null differ diff --git a/.theos/obj/debug/arm64e/ZnthDrkRootListController.m.55b1348e.Td b/.theos/obj/debug/arm64e/ZnthDrkRootListController.m.55b1348e.Td deleted file mode 100644 index fae8b05..0000000 --- a/.theos/obj/debug/arm64e/ZnthDrkRootListController.m.55b1348e.Td +++ /dev/null @@ -1,21 +0,0 @@ -/Users/cooperhull/Desktop/Tweaks/ZenithDark/.theos/obj/debug/arm64e/ZnthDrkRootListController.m.55b1348e.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/debug/arm64e/ZnthDrkRootListController.m.55b1348e.o b/.theos/obj/debug/arm64e/ZnthDrkRootListController.m.55b1348e.o deleted file mode 100644 index a4c4e86..0000000 Binary files a/.theos/obj/debug/arm64e/ZnthDrkRootListController.m.55b1348e.o and /dev/null differ diff --git a/.theos/packages/com.mac-user669.zenithdark-1.0 b/.theos/packages/com.mac-user669.zenithdark-1.0 deleted file mode 100644 index 56a6051..0000000 --- a/.theos/packages/com.mac-user669.zenithdark-1.0 +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/Makefile b/Makefile index 70bebbb..6387a69 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,7 @@ ARCHS = arm64 arm64e SDK = iPhoneOS13.0 FINALPACKAGE = 1 +export TARGET = iphone:clang:13.0:latest include $(THEOS)/makefiles/common.mk @@ -13,4 +14,6 @@ ZenithDark_FRAMEWORKS = UIKit CoreGraphics include $(THEOS_MAKE_PATH)/tweak.mk after-install:: - install.exec "sbreload" \ No newline at end of file + install.exec "sbreload" +SUBPROJECTS += zenithdarkprefs +include $(THEOS_MAKE_PATH)/aggregate.mk diff --git a/Tweak.xm b/Tweak.xm index 7e6b86a..fbd9fd6 100644 --- a/Tweak.xm +++ b/Tweak.xm @@ -1,17 +1,36 @@ /* + Dark Mode for Zenith's Grabber view! Copyright 2020 J.K. Hayslip (@iKilledAppl3) & ToxicAppl3 INSDC/iKilledAppl3 LLC. All code was written for learning purposes and credit must be given to the original author. + Written for Cooper Hull, @(mac-user669). + + */ #import "ZenithDark.h" +static BOOL enabled; +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]; +} + // 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! + // this is called when iOS 13's dark mode is enabled! -(void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection { + if (enabled) { %orig(previousTraitCollection); if (@available(iOS 13, *)) { if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) { @@ -20,13 +39,16 @@ Written for Cooper Hull, @(mac-user669). else { [self setBackgroundColor:kLightModeColor]; + } } } + %orig; } // the method we modify is this method that is called from UIImageView to set the backgroundColor of the image view. // Since the grabber view is of type UIImageView we can modify this method :) -(void)setBackgroundColor:(UIColor *)backgroundColor { + if (enabled) { // by default have our tweak overide this. if (@available(iOS 13, *)) { if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) { @@ -35,16 +57,22 @@ Written for Cooper Hull, @(mac-user669). else { %orig; + } } } + %orig; } + // we need to make sure we tell theos that we are finished hooking this class not doing so with cause the end of the world :P %end + // 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-1+debug_iphoneos-arm.deb b/packages/com.mac-user669.zenithdark_1.0-1+debug_iphoneos-arm.deb deleted file mode 100644 index cb28e63..0000000 Binary files a/packages/com.mac-user669.zenithdark_1.0-1+debug_iphoneos-arm.deb and /dev/null differ 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 dfab55a..6ac9a87 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..aab3c31 --- /dev/null +++ b/zenithdarkprefs/Makefile @@ -0,0 +1,17 @@ +include $(THEOS)/makefiles/common.mk + +ARCHS = arm64 arm64e +export TARGET = iphone:clang:13.0: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/.theos/obj/debug/ZenithDarkPrefs.bundle/Info.plist b/zenithdarkprefs/Resources/Info.plist similarity index 100% rename from .theos/obj/debug/ZenithDarkPrefs.bundle/Info.plist rename to zenithdarkprefs/Resources/Info.plist diff --git a/.theos/obj/debug/ZenithDarkPrefs.bundle/Root.plist b/zenithdarkprefs/Resources/Root.plist similarity index 100% rename from .theos/obj/debug/ZenithDarkPrefs.bundle/Root.plist rename to zenithdarkprefs/Resources/Root.plist 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 + + +