| Summary: | Text manipulation controller should not observe changes in new replacement elements | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Wenson Hsieh <wenson_hsieh> | ||||
| Component: | WebCore Misc. | Assignee: | Wenson Hsieh <wenson_hsieh> | ||||
| Status: | RESOLVED FIXED | ||||||
| Severity: | Normal | CC: | bdakin, commit-queue, ews-watchlist, megan_gardner, mifenton, rniwa, thorton, webkit-bug-importer | ||||
| Priority: | P2 | Keywords: | InRadar | ||||
| Version: | WebKit Nightly Build | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Attachments: |
|
||||||
|
Description
Wenson Hsieh
2020-01-09 10:25:11 PST
Created attachment 387267 [details]
Patch
Comment on attachment 387267 [details] Patch Clearing flags on attachment: 387267 Committed r254314: <https://trac.webkit.org/changeset/254314> All reviewed patches have been landed. Closing bug. Comment on attachment 387267 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=387267&action=review > Source/WebCore/editing/TextManipulationController.cpp:407 > + m_document->eventLoop().queueTask(TaskSource::InternalAsyncTask, [weakThis = makeWeakPtr(*this)] { Hm... this is probably not sufficient delay. We need to schedule this when the first call to didCreateRendererForElement happens. Anyway, I'm gonna add a generic mechanism to track already translated content so it's sort of a moot point. (In reply to Ryosuke Niwa from comment #4) > Comment on attachment 387267 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=387267&action=review > > > Source/WebCore/editing/TextManipulationController.cpp:407 > > + m_document->eventLoop().queueTask(TaskSource::InternalAsyncTask, [weakThis = makeWeakPtr(*this)] { > > Hm... this is probably not sufficient delay. We need to schedule this when > the first call to didCreateRendererForElement happens. > Anyway, I'm gonna add a generic mechanism to track already translated > content so it's sort of a moot point. This is because there is no guarantee that the style recalc happens by the next task in the event loop is executed. |