Fix iOS 12 Support
This commit is contained in:
61
Tweak.xm
61
Tweak.xm
@ -1,3 +1,5 @@
|
|||||||
|
#import "ZenithDark.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
||||||
Dark Mode for Zenith's Grabber view!
|
Dark Mode for Zenith's Grabber view!
|
||||||
@ -9,8 +11,7 @@ Written for Cooper Hull, @(mac-user669).
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#import "ZenithDark.h"
|
%group Tweak13
|
||||||
|
|
||||||
// We then hook the class in this case Zenith's grabber view is called “ZNGrabberAccessoryView”
|
// We then hook the class in this case Zenith's grabber view is called “ZNGrabberAccessoryView”
|
||||||
%hook ZNGrabberAccessoryView
|
%hook ZNGrabberAccessoryView
|
||||||
|
|
||||||
@ -56,13 +57,30 @@ else {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 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 // 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
|
||||||
|
|
||||||
|
static BOOL ios13;
|
||||||
|
|
||||||
|
|
||||||
|
%group Tweak12
|
||||||
|
|
||||||
|
//We then hook the class in this case Zenith's grabber view is called “ZNGrabberAccessoryView”
|
||||||
|
%hook ZNGrabberAccessoryView
|
||||||
|
// The method we then 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 {
|
||||||
|
//call the original function then pass our custom argument to the backgroundColor argument as shown below.
|
||||||
|
%orig(kDarkModeColor);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 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
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
|
||||||
|
static void loadPrefs() { // Load preferences to make sure changes are written to the plist
|
||||||
// Load preferences to make sure changes are written to the plist
|
|
||||||
static void loadPrefs() {
|
|
||||||
|
|
||||||
// Thanks to skittyblock!
|
// Thanks to skittyblock!
|
||||||
CFArrayRef keyList = CFPreferencesCopyKeyList(CFSTR("com.mac-user669.zenithdark"), kCFPreferencesCurrentUser, kCFPreferencesAnyHost);
|
CFArrayRef keyList = CFPreferencesCopyKeyList(CFSTR("com.mac-user669.zenithdark"), kCFPreferencesCurrentUser, kCFPreferencesAnyHost);
|
||||||
@ -77,22 +95,31 @@ static void loadPrefs() {
|
|||||||
prefs = [NSMutableDictionary dictionaryWithContentsOfFile:PLIST_PATH];
|
prefs = [NSMutableDictionary dictionaryWithContentsOfFile:PLIST_PATH];
|
||||||
|
|
||||||
}
|
}
|
||||||
//our preference values that write to a plist file when a user selects somethings
|
kEnabled = [([prefs objectForKey:@"kEnabled"] ?: @(YES)) boolValue]; //our preference values that write to a plist file when a user selects somethings
|
||||||
kEnabled = [([prefs objectForKey:@"kEnabled"] ?: @(YES)) boolValue];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// thanks to skittyblock!
|
// Thanks to skittyblock!
|
||||||
static void PreferencesChangedCallback(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef userInfo) {
|
static void PreferencesChangedCallback(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef userInfo) {
|
||||||
loadPrefs();
|
loadPrefs();
|
||||||
}
|
}
|
||||||
|
|
||||||
// our constructor
|
%ctor { // Our constructor
|
||||||
%ctor {
|
|
||||||
// load our prefs
|
|
||||||
loadPrefs();
|
|
||||||
CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), NULL, (CFNotificationCallback) PreferencesChangedCallback, CFSTR("com.mac-user669.zenithdark.prefschanged"), NULL, CFNotificationSuspensionBehaviorDeliverImmediately);
|
|
||||||
// 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);
|
|
||||||
|
|
||||||
}
|
loadPrefs(); // Load our prefs
|
||||||
|
|
||||||
|
if (kEnabled) { // If enabled
|
||||||
|
if (@available(iOS 13, *)) { // If the device is running iOS 13
|
||||||
|
ios13 = YES; // Set "iOS13" to "YES"
|
||||||
|
%init(Tweak13); // Enable the group "Tweak13"
|
||||||
|
} else {
|
||||||
|
ios13 = NO; // Set "iOS13" to "NO"
|
||||||
|
%init(Tweak12); // Enable the group "Tweak12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), NULL, (CFNotificationCallback) PreferencesChangedCallback, CFSTR("com.mac-user669.zenithdark.prefschanged"), NULL, CFNotificationSuspensionBehaviorDeliverImmediately);
|
||||||
|
|
||||||
|
dlopen ("/Library/MobileSubstrate/DynamicLibraries/Zenith.dylib", RTLD_NOW); // We use this to make sure we load Zenith's dynamic library at runtime so we can modify it with our tweak.
|
||||||
|
|
||||||
|
}
|
||||||
|
4
control
4
control
@ -1,8 +1,8 @@
|
|||||||
Package: com.mac-user669.zenithdark
|
Package: com.mac-user669.zenithdark
|
||||||
Version: 1.1
|
Version: 1.2
|
||||||
Architecture: iphoneos-arm
|
Architecture: iphoneos-arm
|
||||||
Maintainer: mac-user669
|
Maintainer: mac-user669
|
||||||
Depends: mobilesubstrate, preferenceloader, com.muirey03.zenith, firmware (>=13.0)
|
Depends: mobilesubstrate, preferenceloader, com.muirey03.zenith
|
||||||
Section: Tweaks
|
Section: Tweaks
|
||||||
Description: Changes Zeniths tabs to a dark blur
|
Description: Changes Zeniths tabs to a dark blur
|
||||||
Author: mac-user669
|
Author: mac-user669
|
||||||
|
Reference in New Issue
Block a user