Title: [154114] trunk/Source/WebKit/mac
Revision
154114
Author
[email protected]
Date
2013-08-15 11:50:48 -0700 (Thu, 15 Aug 2013)

Log Message

<https://webkit.org/b/119854> REGRESSION (r153379): Serious drawing issues with WebViews
<rdar://problem/14698870>

Reviewed by Simon Fraser.

Don't set aside subviews if they have already been set aside.

* WebView/WebHTMLView.mm:
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):

Modified Paths

Diff

Modified: trunk/Source/WebKit/mac/ChangeLog (154113 => 154114)


--- trunk/Source/WebKit/mac/ChangeLog	2013-08-15 18:49:05 UTC (rev 154113)
+++ trunk/Source/WebKit/mac/ChangeLog	2013-08-15 18:50:48 UTC (rev 154114)
@@ -1,3 +1,15 @@
+2013-08-15  Anders Carlsson  <[email protected]>
+
+        <https://webkit.org/b/119854> REGRESSION (r153379): Serious drawing issues with WebViews
+        <rdar://problem/14698870>
+
+        Reviewed by Simon Fraser.
+
+        Don't set aside subviews if they have already been set aside.
+
+        * WebView/WebHTMLView.mm:
+        (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):
+
 2013-08-15  Eric Carlson  <[email protected]>
 
         [Mac] Remove "legacy" media UI

Modified: trunk/Source/WebKit/mac/WebView/WebHTMLView.mm (154113 => 154114)


--- trunk/Source/WebKit/mac/WebView/WebHTMLView.mm	2013-08-15 18:49:05 UTC (rev 154113)
+++ trunk/Source/WebKit/mac/WebView/WebHTMLView.mm	2013-08-15 18:50:48 UTC (rev 154114)
@@ -1366,9 +1366,17 @@
 // Don't let AppKit even draw subviews. We take care of that.
 - (void)_recursive:(BOOL)recurseX displayRectIgnoringOpacity:(NSRect)displayRect inGraphicsContext:(NSGraphicsContext *)graphicsContext CGContext:(CGContextRef)ctx topView:(BOOL)isTopView shouldChangeFontReferenceColor:(BOOL)shouldChangeFontReferenceColor
 {
-    [self _setAsideSubviews];
+    BOOL didSetAsideSubviews = NO;
+
+    if (!_private->subviewsSetAside) {
+        [self _setAsideSubviews];
+        didSetAsideSubviews = YES;
+    }
+    
     [super _recursive:recurseX displayRectIgnoringOpacity:displayRect inGraphicsContext:graphicsContext CGContext:ctx topView:isTopView shouldChangeFontReferenceColor:shouldChangeFontReferenceColor];
-    [self _restoreSubviews];
+
+    if (didSetAsideSubviews)
+        [self _restoreSubviews];
 }
 
 - (BOOL)_insideAnotherHTMLView
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to