Bug 132172

Summary: REGRESSION (r164133): Selection doesn't paint when scrolling some pages
Product: WebKit Reporter: Darin Adler <darin>
Component: Layout and RenderingAssignee: Darin Adler <darin>
Status: RESOLVED FIXED    
Severity: Normal CC: thorton, zalan
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch bfulgham: review+

Description Darin Adler 2014-04-24 22:53:11 PDT
REGRESSION (r164133): Selection doesn't paint when scrolling some pages
Comment 1 Darin Adler 2014-04-24 22:58:28 PDT
Created attachment 230140 [details]
Patch
Comment 2 Brent Fulgham 2014-04-25 10:00:10 PDT
Comment on attachment 230140 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=230140&action=review

r=me

> Source/WebCore/editing/FrameSelection.cpp:393
> +static void clearRenderViewSelection(Node& node)

Shouldn't this still be const?
Comment 3 Darin Adler 2014-04-26 14:27:22 PDT
Comment on attachment 230140 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=230140&action=review

>> Source/WebCore/editing/FrameSelection.cpp:393
>> +static void clearRenderViewSelection(Node& node)
> 
> Shouldn't this still be const?

It’d do no harm to mark it const, but not much good either. This is a function with side effects, so it’s not like we are just asking the Node a question. It’s not easy to answer the question of what you should and should not do with a const Node. But a side effect of a style update, which can do things like trigger loads, does not seem to be a “const” kind of thing to me.
Comment 4 Darin Adler 2014-04-26 14:28:45 PDT
Committed r167845: <http://trac.webkit.org/changeset/167845>
Comment 5 Tim Horton 2014-04-28 11:18:13 PDT
This caused an assertion failure in svg/custom/bug79798.html: http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=svg%2Fcustom%2Fbug79798.html
Seems like it is causing us to leave layout with dirty layout.
Comment 6 Tim Horton 2014-04-28 12:54:58 PDT
(In reply to comment #5)
> This caused an assertion failure in svg/custom/bug79798.html: http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=svg%2Fcustom%2Fbug79798.html
> Seems like it is causing us to leave layout with dirty layout.

I filed https://bugs.webkit.org/show_bug.cgi?id=132297.
Comment 7 zalan 2017-10-22 20:20:41 PDT
Comment on attachment 230140 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=230140&action=review

> Source/WebCore/editing/FrameSelection.cpp:473
> +            renderView->setNeedsLayout();

See bug 178651