tweak to change the "custom no older notifications" text introduced in iOS 11
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

Tweak.xm 2.4KB

4 år sedan
4 år sedan
4 år sedan
4 år sedan
4 år sedan
4 år sedan
4 år sedan
4 år sedan
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. // respring function
  2. @interface FBSystemService : NSObject
  3. +(id)sharedInstance;
  4. -(void)exitAndRelaunch:(bool)arg1;
  5. @end
  6. static void RespringDevice() {
  7. [[%c(FBSystemService) sharedInstance] exitAndRelaunch:YES];
  8. }
  9. // headers
  10. @interface SBUILegibilityLabel : UIView
  11. @property (nonatomic,copy) NSString *string;
  12. @property (assign,nonatomic) long long textAlignment;
  13. @end
  14. @interface NCNotificationListSectionRevealHintView : UIView
  15. @property (nonatomic,retain)SBUILegibilityLabel *revealHintTitle;
  16. @end
  17. // prefs
  18. @interface NSUserDefaults (CnonPrefs)
  19. -(id)objectForKey:(NSString *)key inDomain:(NSString *)domain;
  20. -(void)setObject:(id)value forKey:(NSString *)key inDomain:(NSString *)domain;
  21. @end
  22. static NSString *nsDomainString = @"com.yaypixxo.cnon";
  23. static NSString *nsNotificationString = @"com.yaypixxo.cnon/preferences.changed";
  24. // declare switch and string
  25. static BOOL enabled;
  26. static NSString *customText = @"";
  27. static void notificationCallback(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef userInfo) {
  28. NSNumber *eEnabled = (NSNumber *)[[NSUserDefaults standardUserDefaults] objectForKey:@"enabled" inDomain:nsDomainString];
  29. NSString *eCustomText = (NSString *)[[NSUserDefaults standardUserDefaults] objectForKey:@"customText" inDomain:nsDomainString];
  30. enabled = (eEnabled) ? [eEnabled boolValue]:NO;
  31. customText = eCustomText;
  32. }
  33. // check iOS version
  34. #ifndef kCFCoreFoundationVersionNumber_iOS_13_0
  35. #define kCFCoreFoundationVersionNumber_iOS_13_0 1665.15
  36. #endif
  37. #define kSLSystemVersioniOS13 kCFCoreFoundationVersionNumber >= kCFCoreFoundationVersionNumber_iOS_13_0
  38. // hook class
  39. %hook NCNotificationListSectionRevealHintView
  40. -(void)didMoveToWindow {
  41. %orig;
  42. if (enabled) {
  43. self.revealHintTitle.string = customText;
  44. if (kSLSystemVersioniOS13) {
  45. self.revealHintTitle.textAlignment = 1;
  46. }
  47. }
  48. }
  49. %end
  50. %ctor {
  51. // prefs changed listener
  52. notificationCallback(NULL, NULL, NULL, NULL, NULL);
  53. CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), NULL, notificationCallback, (CFStringRef)nsNotificationString, NULL, CFNotificationSuspensionBehaviorCoalesce);
  54. // respring notification listener
  55. CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), NULL, (CFNotificationCallback)RespringDevice, CFSTR("com.yaypixxo.cnon/respring"), NULL, CFNotificationSuspensionBehaviorDeliverImmediately);
  56. }