• David Tseng's avatar
    Fix performance issues in Google Sheets · fd3cd0f9
    David Tseng authored
    - when firing an active descendant change event on a content editable, we were
      serializing line breaks which took approximately ~600MS. The line break
      calculation was not only slow, but wrong (got stuck and put repeated new lines
      at the same offset). Unfortunately, <textarea> still needs line break
      information, so keeping for the !richlyEditable but editable case.
    
    - Sheets sends empty strings through the ChromeVox Classic speak api. This
      should never be allowed. It causes ChromeVox output to be flushed and stopped.
    
    - value changes get fired on root web area. Root web areas usually have '' as
      their values. This also caused output to be prematurely cut off.
    
    Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation
    Change-Id: Ide73784a23db7bc92aef51de917801dab439dbba
    Reviewed-on: https://chromium-review.googlesource.com/964781Reviewed-by: default avatarDominic Mazzoni <dmazzoni@chromium.org>
    Commit-Queue: David Tseng <dtseng@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#543589}
    fd3cd0f9
blink_ax_tree_source.cc 36.8 KB