summaryrefslogtreecommitdiff
path: root/UICaboodle
diff options
context:
space:
mode:
authorJay Freeman (saurik) <saurik@saurik.com>2011-02-24 06:15:09 -0800
committerJay Freeman (saurik) <saurik@saurik.com>2011-03-07 02:41:14 -0800
commite665fe9856a201390b6da02c149678468a3c3c6a (patch)
treefdb3fdbcbebf9ed81fed6880ad352c061aa6c471 /UICaboodle
parent262393b9bf781fe84a3738d86c71bd6348d5b0b1 (diff)
Solve the iPad pinstripes != gray problem.
Diffstat (limited to 'UICaboodle')
-rw-r--r--UICaboodle/BrowserView.mm23
1 files changed, 11 insertions, 12 deletions
diff --git a/UICaboodle/BrowserView.mm b/UICaboodle/BrowserView.mm
index 494dd69..b145048 100644
--- a/UICaboodle/BrowserView.mm
+++ b/UICaboodle/BrowserView.mm
@@ -751,6 +751,13 @@ static void $UIWebViewWebViewDelegate$webViewClose$(UIWebViewWebViewDelegate *se
[self _didFailWithError:error forFrame:frame];
}
+// XXX: factor this out somewhere
+- (UIColor *) groupTableViewBackgroundColor {
+ UIDevice *device([UIDevice currentDevice]);
+ bool iPad([device respondsToSelector:@selector(userInterfaceIdiom)] && [device userInterfaceIdiom] == UIUserInterfaceIdiomPad);
+ return iPad ? [UIColor colorWithRed:0.821 green:0.834 blue:0.860 alpha:1] : [UIColor groupTableViewBackgroundColor];
+}
+
- (void) webView:(WebView *)view didFinishLoadForFrame:(WebFrame *)frame {
[loading_ removeObject:[NSValue valueWithNonretainedObject:frame]];
@@ -760,7 +767,7 @@ static void $UIWebViewWebViewDelegate$webViewClose$(UIWebViewWebViewDelegate *se
for (DOMHTMLBodyElement *body in (id) bodies) {
DOMCSSStyleDeclaration *style([document getComputedStyle:body pseudoElement:nil]);
- bool colored(false);
+ UIColor *uic([self groupTableViewBackgroundColor]);
if (DOMCSSPrimitiveValue *color = static_cast<DOMCSSPrimitiveValue *>([style getPropertyCSSValue:@"background-color"])) {
if ([color primitiveType] == DOM_CSS_RGBCOLOR) {
@@ -771,10 +778,8 @@ static void $UIWebViewWebViewDelegate$webViewClose$(UIWebViewWebViewDelegate *se
float blue([[rgb blue] getFloatValue:DOM_CSS_NUMBER]);
float alpha([[rgb alpha] getFloatValue:DOM_CSS_NUMBER]);
- UIColor *uic(nil);
-
if (red == 0xc7 && green == 0xce && blue == 0xd5)
- uic = [UIColor groupTableViewBackgroundColor];
+ uic = [UIColor pinStripeColor];
else if (alpha != 0)
uic = [UIColor
colorWithRed:(red / 255)
@@ -782,16 +787,10 @@ static void $UIWebViewWebViewDelegate$webViewClose$(UIWebViewWebViewDelegate *se
blue:(blue / 255)
alpha:alpha
];
-
- if (uic != nil) {
- colored = true;
- [scroller_ setBackgroundColor:uic];
- }
}
}
- if (!colored)
- [scroller_ setBackgroundColor:[UIColor groupTableViewBackgroundColor]];
+ [scroller_ setBackgroundColor:uic];
break;
}
}
@@ -1065,7 +1064,7 @@ static void $UIWebViewWebViewDelegate$webViewClose$(UIWebViewWebViewDelegate *se
}
[scroller_ setFixedBackgroundPattern:YES];
- [scroller_ setBackgroundColor:[UIColor groupTableViewBackgroundColor]];
+ [scroller_ setBackgroundColor:[self groupTableViewBackgroundColor]];
[scroller_ setClipsSubviews:YES];
[scroller_ setBounces:YES];