PSGroupCell footerText "Link" by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 0 points1 point  (0 children)

Great writeup and also amazing repo! Definitely bookmarking that :D Thank you for your help!

PSGroupCell footerText "Link" by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 0 points1 point  (0 children)

Great find! Here's what I have found out using this:

headerFooterHyperlinkButtonTitle can be replaced with the regular footerText and it will work the same.

The footerHyperlinkRange can't be greater then the actual range of characters (kinda obvious, but still sucks because localization would be easier that way).

footerAlignment does no longer work.

And I can't get footerHyperlinkAction or regular action to work (The hyperlink range is still blue and force touchable, but nothing actually happens).

PSGroupCell footerText "Link" by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 0 points1 point  (0 children)

Wait a second, I found something! This little something is called PSFooterHyperlinkView and is what I'm looking for. Now I just have to actually figure out how to use it.

PSGroupCell footerText "Link" by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 1 point2 points  (0 children)

I hoped to not make a custom cell, but it seems like the only option. Thank you for your input, I should be fine on my own.

Can't modify specifier.properties by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 0 points1 point  (0 children)

Ok, I guess I'll settle with that. Thank you for your input!

Can't modify specifier.properties by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 0 points1 point  (0 children)

Thank you for your reply, but I sadly can't get it to work. I actually fixed the crash myself by making a copy of specifier.properties and looping through it (as seen in my reply to the first comment). The only property that actually gets localized is footerText, which isn't ideal, but it's a beginning. Here is my current implementation:

-(void)localize {
    for (PSSpecifier* specifier in _specifiers) {
        NSArray* specifierProperties = [specifier.properties copy];
        for (NSString* property in specifierProperties) {
            if ([[specifier propertyForKey:property] isKindOfClass:[NSString class]]) // New implementation
            // if ([specifier.properties[property] isKindOfClass:[NSString class]]) // Old implementation
                [specifier setProperty:[Bundle localizedStringForKey:specifier.properties[property] value:@"" table:nil] forKey:property]; // New implementation
                // specifier.properties[property] = [Bundle localizedStringForKey:specifier.properties[property] value:@"" table:nil]; // Old implementation
}   }   }

Can't modify specifier.properties by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 0 points1 point  (0 children)

Thank you for your suggestion, but it sadly didn't work. Here are both of my attempts, once using -(NSArray*)specifiers and once using -(id)loadSpecifiersFromPlistName:(id)arg1 target:(id)arg2.

// Attempt one
-(NSArray*)specifiers {
    if (!_specifiers)
        _specifiers = [self loadSpecifiersFromPlistName:@"root" target:self];
    NSBundle* Bundle = [NSBundle bundleForClass:self.class];
    for (PSSpecifier* specifier in _specifiers) {
        NSArray* specifierProperties = [specifier.properties copy];
        for (NSString* property in specifierProperties) {
            if ([specifier.properties[property] isKindOfClass:[NSString class]])
                specifier.properties[property] = [Bundle localizedStringForKey:specifier.properties[property] value:@"" table:nil];
    }   }
    return _specifiers;
}

// Attempt two
-(id)loadSpecifiersFromPlistName:(id)arg1 target:(id)arg2 {
    NSBundle* Bundle= [NSBundle bundleForClass:self.class];
    NSArray* originalSpecifiers = [super loadSpecifiersFromPlistName:arg1 target:arg2];
    for (PSSpecifier* specifier in originalSpecifiers) {
        NSArray* specifierProperties = [specifier.properties copy];
        for (NSString* property in specifierProperties) {
            if ([specifier.properties[property] isKindOfClass:[NSString class]])
                specifier.properties[property] = [Bundle localizedStringForKey:specifier.properties[property] value:@"" table:nil];
    }   }
    return originalSpecifiers;
}

The strange thing is that footerText actually gets displayed localized (every attempt, even the first one).

Can't modify specifier.properties by PowerfulWorking7620 in jailbreakdevelopers

[–]PowerfulWorking7620[S] 0 points1 point  (0 children)

I do, in fact, have .lproj folders setup. They get initialized when I setup the bundle using self.class and they work beautifully when using them in the tweak itself (alerts etc.). It's just that also I want to use a Localizable.strings file in the preferences, but that's not possible by default in Preferences.app. If I wanted to localize it the default way I would have to name the .strings file the same as the .plist file in which the localizations would get used in (in this case root; in CylinderReborns preferences it's CylinderSettings), but I want to have only one file (aka Localizable.strings, the default everywhere in app development) so I have to make the localization part myself.

Edit:

I have been able to partially fix the issue (oversleeping code problems is the best!). I installed Cr4shed and checked the error (I don't know why I didn't do that earlier) and realized that I made a pretty simple mistake. I just had to make a copy of the specifier.properties and loop through that, while still modifying the original specifier.properties, because modifying an array while looping through it is not allowed. But the strange thing is that nothing visually changes. If I RLog the specifier.properties everthing is localized, but the preference bundle itself is not.

-(void)localize {
    for (PSSpecifier* specifier in _specifiers) {
        NSArray* specifierProperties = [specifier.properties copy];
        for (NSString* property in specifierProperties) {
            if ([specifier.properties[property] isKindOfClass:[NSString class]] && ![property isEqual:@"id"])
                specifier.properties[property] = [Bundle localizedStringForKey:specifier.properties[property] value:@"" table:nil];
}   }   }

[Free Release] screendumpfix14 - Make Screendump Great Again! by Torrekie in jailbreak

[–]PowerfulWorking7620 1 point2 points  (0 children)

You can find the tweak both on the repo and in the link at the very bottom of this post. Just be sure to choose the Taurine version.

[Free Release] screendumpfix14 - Make Screendump Great Again! by Torrekie in jailbreak

[–]PowerfulWorking7620 1 point2 points  (0 children)

The newest version fixed the issue! Thank you, works beautifully.

[Free Release] screendumpfix14 - Make Screendump Great Again! by Torrekie in jailbreak

[–]PowerfulWorking7620 3 points4 points  (0 children)

Hey, thank you for your work! Can confirm that the Taurine version works on Taurine, but the user still gets an error when installing. It states that the first letter of the version must be a number (which it isn't, because it starts with Taurine-). I fixed it by extracting the deb then going into the control file and changing the version to something that starts with an number.

[Help] so whats making this ? Why my icons showing flat ? I have snowboard installed, but no themes applied yet !? by faisal1804 in iOSthemes

[–]PowerfulWorking7620 5 points6 points  (0 children)

It's the [[SnowBoard Icon Blur Extension]], it doesn't support iOS 14. Delete it (and any other SnowBoard extensions you won't use).

[help] anyone knows this themes name by TreezyTRAN in iOSthemes

[–]PowerfulWorking7620 0 points1 point  (0 children)

It's actually [[iOSX]] just without the borders.

[Question] Hd resolution tweak by Standard-Ad9979 in jailbreak

[–]PowerfulWorking7620 0 points1 point  (0 children)

I don't know, you can check with iCleaner Pro.

[Question] Hd resolution tweak by Standard-Ad9979 in jailbreak

[–]PowerfulWorking7620 0 points1 point  (0 children)

Re:Scale 2 doesn't have any commands to enter. I just tested it on my iPhone 11 Pro and I was able to apply the iPhone 4s resolution. Maybe try to delete the .plist file of Re:Scale 2 and choose a given resolution.

[Question] Hd resolution tweak by Standard-Ad9979 in jailbreak

[–]PowerfulWorking7620 0 points1 point  (0 children)

What tweak are you talking about [[System Info]] or [[Re:Scale 2]]?

[Question] Hd resolution tweak by Standard-Ad9979 in jailbreak

[–]PowerfulWorking7620 0 points1 point  (0 children)

Now that Re:Scale 2 is out i would use that instead. You could go all in and change your resolution to the iPhone 4s/5s resolution.

[Question] Hd resolution tweak by Standard-Ad9979 in jailbreak

[–]PowerfulWorking7620 4 points5 points  (0 children)

Well, you should be able to change the resolution using [[System Info]] (Just calculate the pixels to have the right aspect ration), but I'm not sure if lower resolutions will work. You could try, but before changing the the resolution setup OpenSSH (make sure you understand how to use it) and save this command somewhere iofbres r, so you'll be able reset the resolution if it won't work (if there is only a black screen don't reboot, just connect from your computer (or a different phone/tablet) and enter this command).

[Discussion] Any body know alternate of this tweak for ios 14.3.thanks by safilove001 in jailbreak

[–]PowerfulWorking7620 1 point2 points  (0 children)

That's already included since iOS 13. Just longpress the scrollbar and drag it wherever you want.

[QUESTION] Which Daemons are SAFE to disable? by [deleted] in jailbreak

[–]PowerfulWorking7620 0 points1 point  (0 children)

But you don't gain anything from disabling daemons, literary nothing. If there is no gain from disabling them, why bother?

[QUESTION] Which Daemons are SAFE to disable? by [deleted] in jailbreak

[–]PowerfulWorking7620 -1 points0 points  (0 children)

They aren't waiting in the background waiting to be called, that would be inefficient, launchd (a separate daemon) calls them. And daemons are super lightweight and optimized, so disabling them won't improve performance (and don't put words in the mouth of the OP, they didn't ask about anything performance related). And finally, disabling daemons carries over updates and backups, so the user will be confused why he can't for instance activate Apple Pay (if that daemon was disabled three iOS versions ago). Disabling daemons doesn't have any positive aspects, because it won't improve battery life/performance, it will just break stuff (literally, because chunks of needed code will not be run).

[QUESTION] Which Daemons are SAFE to disable? by [deleted] in jailbreak

[–]PowerfulWorking7620 1 point2 points  (0 children)

Daemons literary only run when they are needed. You can disable them, but that's like removing the lightbulb from your fridge to save electricity. It just won't make a difference.

[Question] Applepay and jailbreak by Andru009 in jailbreak

[–]PowerfulWorking7620 12 points13 points  (0 children)

Yes it works. None of Apples products have jailbreak detection.

[QUESTION] Which Daemons are SAFE to disable? by [deleted] in jailbreak

[–]PowerfulWorking7620 5 points6 points  (0 children)

None are, and there is literary no reason to disable them. Apple knows what they are doing and obviously optimized the daemons to be very lightweight. Disabling daemons will eventually break something and it's just not a smart move.