diff options
-rw-r--r-- | Cydia.app/package.html | 6 | ||||
-rw-r--r-- | Cydia.app/package.js | 3 | ||||
-rw-r--r-- | Cydia.mm | 20 |
3 files changed, 26 insertions, 3 deletions
diff --git a/Cydia.app/package.html b/Cydia.app/package.html index 7c58967..0c7762e 100644 --- a/Cydia.app/package.html +++ b/Cydia.app/package.html @@ -279,7 +279,11 @@ <label class="source">Source Information</label> <fieldset class="source"> - <div><label id="source-name"></label></div> + <div> + <img class="icon" id="source-src"/> + <label id="source-name"></label> + </div> + <div class="source-description" id="source-description"></div> </fieldset> diff --git a/Cydia.app/package.js b/Cydia.app/package.js index 1a8fc92..3117a57 100644 --- a/Cydia.app/package.js +++ b/Cydia.app/package.js @@ -178,6 +178,9 @@ $(function () { $(".source").remove(); $(".trusted").remove(); } else { + var host = source.host; + + $("#source-src").src("cydia://source-icon/" + encodeURIComponent(host)); $("#source-name").html(source.name); if (source.trusted) @@ -261,10 +261,10 @@ extern NSString * const kCAFilterNearest; #define lprintf(args...) fprintf(stderr, args) -#define ForRelease 0 +#define ForRelease 1 #define ForSaurik 1 && !ForRelease #define RecycleWebViews 0 -#define AlwaysReload 0 && !ForRelease +#define AlwaysReload 1 && !ForRelease /* Radix Sort {{{ */ @interface NSMutableArray (Radix) @@ -5640,6 +5640,22 @@ bool DepSubstrate(const pkgCache::VerIterator &iterator) { [client URLProtocol:self didReceiveResponse:response cacheStoragePolicy:NSURLCacheStorageNotAllowed]; [client URLProtocol:self didLoadData:data]; [client URLProtocolDidFinishLoading:self]; + } else if ([command isEqualToString:@"source-icon"]) { + if (path == nil) + goto fail; + path = [path stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; + NSString *source(Simplify(path)); + + UIImage *icon([UIImage imageAtPath:[NSString stringWithFormat:@"%@/Sources/%@.png", App_, source]]); + if (icon == nil) + icon = [UIImage applicationImageNamed:@"unknown.png"]; + + NSData *data(UIImagePNGRepresentation(icon)); + + NSURLResponse *response([[[NSURLResponse alloc] initWithURL:[request URL] MIMEType:@"image/png" expectedContentLength:-1 textEncodingName:nil] autorelease]); + [client URLProtocol:self didReceiveResponse:response cacheStoragePolicy:NSURLCacheStorageNotAllowed]; + [client URLProtocol:self didLoadData:data]; + [client URLProtocolDidFinishLoading:self]; } else if ([command isEqualToString:@"section-icon"]) { if (path == nil) goto fail; |