RESOLVED FIXED 171986
Mail spins launching spell checker when typing
https://bugs.webkit.org/show_bug.cgi?id=171986
Summary Mail spins launching spell checker when typing
Tim Horton
Reported 2017-05-11 13:34:56 PDT
Mail spins launching spell checker when typing
Attachments
Patch (5.61 KB, patch)
2017-05-11 13:35 PDT, Tim Horton
no flags
Patch (5.64 KB, patch)
2017-05-11 13:53 PDT, Tim Horton
bdakin: review+
Tim Horton
Comment 1 2017-05-11 13:35:28 PDT
Tim Horton
Comment 2 2017-05-11 13:53:59 PDT
Beth Dakin
Comment 3 2017-05-11 16:45:38 PDT
Comment on attachment 309775 [details] Patch r=me, but obviously take a look at those Mac bots.
Tim Horton
Comment 4 2017-05-11 16:56:47 PDT
Alexey Proskuryakov
Comment 5 2017-05-11 20:11:30 PDT
Comment on attachment 309775 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=309775&action=review > Source/WebKit2/ChangeLog:15 > + Asynchronously pre-warm the spell checker when a WKWebView becomes editable. This is asynchronous, but still blocks the main thread just as much. What tracks a better fix?
Tim Horton
Comment 6 2017-05-11 20:33:52 PDT
In my testing (and instruction from others), that is not true. It's still not perfect, but does not block the main thread for the launch time of the spell checking process. There's a test app attached to the radar if you want to experiment... I do plan to experiment with actual async spell checking in the future but I don't think there's a bug about that yet.
Alexey Proskuryakov
Comment 7 2017-05-12 10:50:15 PDT
If that's the case, why do it in dispatch_async, and not right away?
Tim Horton
Comment 8 2017-05-12 11:27:20 PDT
(In reply to Alexey Proskuryakov from comment #7) > If that's the case, why do it in dispatch_async, and not right away? While *most* of the blocked time is now avoided, the first call to sharedSpellChecker in a process is still quite a bit more expensive than doing nothing (but on the order of tens of milliseconds instead of hundreds). I didn't want to regress time-to-first-paint.
Note You need to log in before you can comment on or make changes to this bug.