}
- (id) specifiers {
- if (!_specifiers)
- _specifiers = [[self loadSpecifiersFromPlistName:@"WinterBoard" target:self] retain];
+ if (!_specifiers) {
+ NSMutableArray *specifiers([NSMutableArray array]);
+ for (PSSpecifier *specifier in [self loadSpecifiersFromPlistName:@"WinterBoard" target:self]) {
+ if (NSArray *version = [specifier propertyForKey:@"wb$filter"]) {
+ size_t count([version count]);
+ if (count == 0 || count > 2)
+ continue;
+
+ double lower([[version objectAtIndex:0] doubleValue]);
+ if (kCFCoreFoundationVersionNumber < lower)
+ continue;
+
+ if (count != 1) {
+ double upper([[version objectAtIndex:1] doubleValue]);
+ if (upper <= kCFCoreFoundationVersionNumber)
+ continue;
+ }
+ }
+ [specifiers addObject:specifier];
+ }
+ _specifiers = [specifiers retain];
+ }
return _specifiers;
}
<string>PSGroupCell</string>
<key>footerText</key>
<string>WinterBoard can also be found under the normal iOS Settings application.</string>
+ <key>wb$filter</key>
+ <array>
+ <real>0.0</real>
+ <real>800</real>
+ </array>
+ </dict>
+ <dict>
+ <key>cell</key>
+ <string>PSGroupCell</string>
+ <key>footerText</key>
+ <string>Hiding WinterBoard is not yet possible on iOS 7. This will require libhide to be updated.</string>
+ <key>wb$filter</key>
+ <array>
+ <real>800</real>
+ </array>
+ </dict>
+ <dict>
+ <key>cell</key>
+ <string>PSSwitchCell</string>
+ <key>default</key>
+ <false/>
+ <key>key</key>
+ <string>IconHidden</string>
+ <key>label</key>
+ <string>Hide WinterBoard</string>
+ <key>wb$filter</key>
+ <array>
+ <real>0.0</real>
+ <real>800</real>
+ </array>
</dict>
<dict>
<key>cell</key>
<string>PSSwitchCell</string>
<key>default</key>
<false/>
+ <key>enabled</key>
+ <false/>
<key>key</key>
<string>IconHidden</string>
<key>label</key>
<string>Hide WinterBoard</string>
+ <key>wb$filter</key>
+ <array>
+ <real>800</real>
+ </array>
</dict>
<dict>
<key>cell</key>