diff --git a/.gitignore b/.gitignore index 86f21d8..0505853 100644 --- a/.gitignore +++ b/.gitignore @@ -1,60 +1 @@ -# Xcode -# -# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore - -## Build generated -build/ -DerivedData/ - -## Various settings -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 -xcuserdata/ - -## Other -*.moved-aside -*.xcuserstate - -## Obj-C/Swift specific -*.hmap -*.ipa -*.dSYM.zip -*.dSYM - -# CocoaPods -# -# We recommend against adding the Pods directory to your .gitignore. However -# you should judge for yourself, the pros and cons are mentioned at: -# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control -# -# Pods/ - -# Carthage -# -# Add this line if you want to avoid checking in source code from Carthage dependencies. -# Carthage/Checkouts - -Carthage/Build - -# fastlane -# -# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the -# screenshots whenever they are needed. -# For more information about the recommended setup visit: -# https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Gitignore.md - -fastlane/report.xml -fastlane/screenshots - -#Code Injection -# -# After new code Injection tools there's a generated folder /iOSInjectionProject -# https://github.com/johnno1962/injectionforxcode - -iOSInjectionProject/ +.theos/ diff --git a/Tweak.xm b/Tweak.xm index b1cfd1e..62809f0 100644 --- a/Tweak.xm +++ b/Tweak.xm @@ -37,7 +37,12 @@ static NSString *settingsPath = @"/var/mobile/Library/Preferences/com.gilshahar7 if((date != nil) && (format == 1)){ NCNotificationDateLabel *dateLabel = MSHookIvar(self, "_dateLabel"); int timeSinceNow = (int)[date timeIntervalSinceNow]; - timeSinceNow = timeSinceNow*-1; + bool isFuture = false; + if (timeSinceNow > 0){ + isFuture = true; + }else{ + timeSinceNow = timeSinceNow*-1; + } bool addMinutes = [[prefs objectForKey:@"addMinutes"] boolValue]; bool addToCurrent = [[prefs objectForKey:@"addToCurrent"] boolValue]; int hours = timeSinceNow / 3600; @@ -46,23 +51,43 @@ static NSString *settingsPath = @"/var/mobile/Library/Preferences/com.gilshahar7 if(hours == 0){ if(minutes == 0){ }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %im", minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%im ago", minutes]; + } } }else{ if(minutes == 0){ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih", hours]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih ago", hours]; + } } else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih %im", hours, minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih %im ago", hours, minutes]; + } } } }else if(addToCurrent){ if(hours == 0){ if(minutes == 0){ }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %im", minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%im ago", minutes]; + } } }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih", hours]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih ago", hours]; + } } } if((timeSinceNow/60) >= affectTime){ @@ -100,7 +125,12 @@ static NSString *settingsPath = @"/var/mobile/Library/Preferences/com.gilshahar7 if((date != nil) && (format == 1)){ BSUIRelativeDateLabel *dateLabel = MSHookIvar(self, "_dateLabel"); int timeSinceNow = (int)[date timeIntervalSinceNow]; - timeSinceNow = timeSinceNow*-1; + bool isFuture = false; + if (timeSinceNow > 0){ + isFuture = true; + }else{ + timeSinceNow = timeSinceNow*-1; + } bool addMinutes = [[prefs objectForKey:@"addMinutes"] boolValue]; bool addToCurrent = [[prefs objectForKey:@"addToCurrent"] boolValue]; int hours = timeSinceNow / 3600; @@ -109,23 +139,43 @@ static NSString *settingsPath = @"/var/mobile/Library/Preferences/com.gilshahar7 if(hours == 0){ if(minutes == 0){ }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %im", minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%im ago", minutes]; + } } }else{ if(minutes == 0){ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih", hours]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih ago", hours]; + } } else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih %im", hours, minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih %im ago", hours, minutes]; + } } } }else if(addToCurrent){ if(hours == 0){ if(minutes == 0){ }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %im", minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%im ago", minutes]; + } } }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih", hours]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih ago", hours]; + } } } if((timeSinceNow/60) >= affectTime){ @@ -163,7 +213,12 @@ static NSString *settingsPath = @"/var/mobile/Library/Preferences/com.gilshahar7 if((date != nil) && (format == 1)){ BSUIRelativeDateLabel *dateLabel = MSHookIvar(self, "_dateLabel"); int timeSinceNow = (int)[date timeIntervalSinceNow]; - timeSinceNow = timeSinceNow*-1; + bool isFuture = false; + if (timeSinceNow > 0){ + isFuture = true; + }else{ + timeSinceNow = timeSinceNow*-1; + } bool addMinutes = [[prefs objectForKey:@"addMinutes"] boolValue]; bool addToCurrent = [[prefs objectForKey:@"addToCurrent"] boolValue]; int hours = timeSinceNow / 3600; @@ -172,23 +227,43 @@ static NSString *settingsPath = @"/var/mobile/Library/Preferences/com.gilshahar7 if(hours == 0){ if(minutes == 0){ }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %im", minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%im ago", minutes]; + } } }else{ if(minutes == 0){ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih", hours]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih ago", hours]; + } } else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih %im", hours, minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih %im ago", hours, minutes]; + } } } }else if(addToCurrent){ if(hours == 0){ if(minutes == 0){ }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %im", minutes]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%im ago", minutes]; + } } }else{ + if(isFuture){ + dateLabel.text = [NSString stringWithFormat:@"in %ih", hours]; + }else{ dateLabel.text = [NSString stringWithFormat:@"%ih ago", hours]; + } } } if((timeSinceNow/60) >= affectTime){ diff --git a/control b/control index 2148f61..7d208d8 100644 --- a/control +++ b/control @@ -1,7 +1,7 @@ Package: com.gilshahar7.exacttime Name: ExactTime Depends: mobilesubstrate -Version: 1.7 +Version: 1.8 Architecture: iphoneos-arm Description: Shows the exact time of a notification. Maintainer: gilshahar7 diff --git a/packages/com.gilshahar7.exacttime_1.8_iphoneos-arm.deb b/packages/com.gilshahar7.exacttime_1.8_iphoneos-arm.deb new file mode 100644 index 0000000..52e710f Binary files /dev/null and b/packages/com.gilshahar7.exacttime_1.8_iphoneos-arm.deb differ